Отключение входящих личных сообщений 1.0.0

Добавляет пользователю возможность отключения входящих личных сообщений.

  1. Exile
    Совместимость:
    не проверялся на совместимость
    Изменения в БД:
    не требуются
    Автор:
    Gemini_13
    Общественное достояние:
    нет
    Описание: добавляет пользователю возможность отключения входящих личных сообщений. Каждый пользователь устанавливает настройку самостоятельно, при редактировании профиля.
    Инструкция по установке:
    PHP:
    # ---- [ Открыть ] -------------------

    privmsg.php

    # ---- [ Найти ] -------------------

            //
            // Has admin prevented user from sending PM's?
            //
            
    if ( bf($userdata['user_opt'], 'user_opt''allow_pm') )
            {
                
    bb_die($lang['CANNOT_SEND_PRIVMSG']);
            }

    # ---- [ Вставить после ] -------------------

            
    if (bf($to_userdata['user_opt'], 'user_opt''off_pm') && !IS_AM)
            {
                
    bb_die($lang['OFF_PM_MESSAGE'] .'<p class="mrg_10"><a href="index.php">'$lang['INDEX_RETURN'] .'</a></p>');
            }

    # ---- [ Найти ] -------------------

                
    $sql "SELECT username

    # ---- [ Заменить на ] -------------------

                
    $sql = "SELECT usernameuser_opt

    # ---- [ Найти ] -------------------

    $to_username $row['username'];

    # ---- [ Вставить после ] -------------------

    $to_user_opt $row['user_opt'];

    # ---- [ Найти ] -------------------

    $sql "SELECT pm.*, pmt.privmsgs_text, u.username, u.user_id

    # ---- [ Заменить на ] -------------------

    $sql = "SELECT pm.*, pmt.privmsgs_textu.usernameu.user_idu.user_opt

    # ---- [ Найти ] -------------------

    $to_username $privmsg['username'];

    # ---- [ Вставить после ] -------------------

    $to_user_opt $privmsg['user_opt'];

    # ---- [ Найти ] -------------------

    $sql "SELECT pm.privmsgs_subject, pm.privmsgs_date, pmt.privmsgs_text, u.username, u.user_id

    # ---- [ Заменить на ] -------------------

    $sql = "SELECT pm.privmsgs_subjectpm.privmsgs_datepmt.privmsgs_textu.usernameu.user_idu.user_opt

    # ---- [ Найти ] -------------------

    $to_username $privmsg['username'];

    # ---- [ Вставить после ] -------------------

    $to_user_opt $privmsg['user_opt'];

    # ---- [ Найти ] -------------------

    $privmsg_subject $privmsg_message $to_username '';

    # ---- [ Заменить на ] -------------------

    $privmsg_subject $privmsg_message $to_username $to_user_opt '';

    # ---- [ Найти ] -------------------

        //
        // Has admin prevented user from sending PM's?
        //
        
    if ( bf($userdata['user_opt'], 'user_opt''allow_pm') && $mode != 'edit' )
        {
            
    $message = ($lang['CANNOT_SEND_PRIVMSG']);
        }

    # ---- [ Вставить после ] -------------------

        
    if (!empty($to_user_opt) && bf($to_user_opt'user_opt''off_pm') && !IS_AM)
        {
            
    bb_die($lang['OFF_PM_MESSAGE'] .'<p class="mrg_10"><a href="index.php">'$lang['INDEX_RETURN'] .'</a></p>');
        }

    # ---- [ Открыть ] -------------------

    includes/functions.php

    # ---- [ Найти ] -------------------

    'allow_dls'        => 14// Запрет на список текущих закачек в профиле

    # ---- [ Вставить после ] -------------------

    'off_pm'          => 15// Отключить входящие ЛС

    # ---- [ Открыть ] -------------------

    includes/ucp/usercp_register.php

    # ---- [ Найти ] -------------------

    'allow_dls'        => true,

    # ---- [ Вставить после ] -------------------

    'off_pm'          => true,

    # ---- [ Открыть ] -------------------

    language/lang_english/lang_main.php

    # ---- [ Вставить в конец ] -------------------

    // Off PM
    $lang['OFF_PM'] ='Disable incoming PM';
    $lang['OFF_PM_MESSAGE'] ='User disables incoming PM';

    # ---- [ Открыть ] -------------------

    language/lang_russian/lang_main.php

    # ---- [ Вставить в конец ] -------------------

    // Off PM
    $lang['OFF_PM'] ='Отключить входящие ЛС';
    $lang['OFF_PM_MESSAGE'] ='Пользователь отключил входящие ЛС';

    # ---- [ Открыть ] -------------------

    templates/default/usercp_register.tpl

    # ---- [ Найти ] -------------------

    <tr>
        <
    td>{L_PUBLIC_VIEW_EMAIL}:</td>
        <
    td>
            <
    label><input type="radio" name="viewemail" value="1" <!-- IF VIEWEMAIL -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
            <
    label><input type="radio" name="viewemail" value="0" <!-- IF not VIEWEMAIL -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
        </
    td>
    </
    tr>

    # ---- [ Вставить до ] -------------------

    <tr>
        <
    td>{L_OFF_PM}:</td>
        <
    td>
            <
    label><input type="radio" name="off_pm" value="1" <!-- IF OFF_PM -->checked="checked"<!-- ENDIF --> />{L_YES}</label>&nbsp;&nbsp;
            <
    label><input type="radio" name="off_pm" value="0" <!-- IF not OFF_PM -->checked="checked"<!-- ENDIF --> />{L_NO}</label>
        </
    td>
    </
    tr>

    # ---- [ Конец ] -------------------