افزونه حذف پیامهایِ خصوصی - پیشرفته
با سلام
قبلا افزونه ی حذفِ پیامهایِ خصوصی توسطِ جنابِ "نقدی پور " منتشر شده بود.
این نسخه از این لحاظ پیشرفته تر هست که یک مساله ی امنیتی در اون لحاظ شده و اون هم درخواستِ پسوورد از کاربر هست.
این افزونه به این شکل هست که کاربر می تواند در صفحه ی " دلخواه سازی " پس از وارد نمودنِ رمزِ کاربریِ خود اقدام به حذفِ کاملِ پیامهایِ خصوصی نماید.

آموزش:
در صورتی که صفحه دلخواه سازی را نصب نکرده اید:

http://forum.4sharetronix.ir/Thread-%D8%...8%B2%DB%8C


چنانچه قبلا صفحه ی دلخواه سازی را نصب کرده اید:


به system/controllers/settings_delkhah.php رفته و قبل از این کد :


کد:
$this->load_template('settings_delkhah.php');



این کد را بیافزایید :


کد:
        ///// 4sharetonix.ir Start /////    
        ////Delete all PMs By EiMa.ir////    
    $D->submit    = TRUE;
    $D->submit1    = TRUE;
    $D->error    = FALSE;
    $D->errmsg    = '';
    
    if( isset($_POST['userpass']) )
    {
        $D->submit    = TRUE;
        if( md5($_POST['userpass']) != $this->user->info->password ) {
            $D->error    = TRUE;
            $D->errmsg    = 'st_delaccount_pass_err';
        }
        if( ! $D->error && $this->user->info->is_network_admin ) {
            $db2->query('SELECT id FROM users WHERE id<>"'.$this->user->id.'" AND active=1 AND is_network_admin=1 LIMIT 1');
            if( $db2->num_rows() == 0 ) {
                $D->error    = TRUE;
                $D->errmsg    = 'st_delaccount_admins_err';
            }
        }
        if( ! $D->error )
        {
        
    $prcu = $db2->query('SELECT id FROM posts_pr where user_id="'.$this->user->id.'" ');
    while ($prctu = $db2->fetch_object($prcu)){
    $prctut[] = $prctu->id;
    }
    foreach($prctut as $prc){
    $db2->query('delete FROM posts_pr_comments WHERE post_id="'.$prc.'" ');    

    }    
    $krcu = $db2->query('SELECT id FROM posts_pr where to_user="'.$this->user->id.'" ');
    while ($krctu = $db2->fetch_object($krcu)){
    $krctut[] = $krctu->id;
    }
    foreach($krctut as $krc){
    $db2->query('delete FROM posts_pr_comments WHERE post_id="'.$krc.'" ');    

    }    
    
    $sql1 = "delete from posts_pr where user_id=".$this->user->id;
    $sql2 = "delete from posts_pr where to_user=".$this->user->id;
    $sql3 = "delete from posts_pr_comments_mentioned where user_id=".$this->user->id;
    $sql4 = "delete from posts_pr_comments_watch where user_id=".$this->user->id;

    $db2->query($sql1);
    $db2->query($sql2);
    $db2->query($sql3);
    $db2->query($sql4);

    }}
      
        ////Delete all PMs By 20script.ir////
     ///// 20script.ir End /////
اکنون به themes/Your Theme/html/settings_delkhah.php رفته و قبل از این کد :
کد:
    </div>
                    </div>
<?php $this->load_template('footer.php'); ?>



این کد را بیافزایید :


کد:
<!--------------- 20script.ir Start --------->                            
                            
                            <?php if($D->error) { ?>
                            <?= errorbox('خطا', 'رمزِ عبور خود را به درستی وارد نمایید.') ?>
<?php } ?>
                            <form method="post" name="delkhah" onsubmit="return confirm('با این کار تمامیِ پیامهایِ خصوصیِ شما حذف خواهند شد و امکانِ برگشتِ آنها وجود نخواهد داشت.آیا مطمئن هستید؟');" action="<?= $C->SITE_URL ?>settings/delkhah" autocomplete="off">
                                        <table id="setform" cellspacing="5" style="margin-top:5px;">
                                        
                                                                        شما با این فرآیند می توانید تمامیِ پیامهایِ خصوصیِ خود را حذف نمائید!
                                                                        <br>
                                                                        <b> توجه : </b>
با این عمل پیامهایِ شما اعم از پیامهایی که ارسال و یا دریافت نموده اید؛ یکجا حذف خواهند شد.
<br>
جهتِ شناساییِ هویتِ شما؛ این عمل نیازمندِ واردِ نمودنِ رمزِ عبورِ شماست.
                                            <tr>
                                                <td class="setparam"><?= $this->lang('st_delaccount_password') ?></td>
                                                <td><input type="password" name="userpass" value="" autocomplete="off" class="setinp" /></td>
                                            </tr>
                                            <tr>
                                                <td></td>
                                                <td><input type="submit" value="حذف پیامها" style="padding:4px; font-weight:bold;"/></td>
                                            </tr>
                                        </table>
                                        </form>
<!--------------- 20script.ir End --------->