Uždrausti vartotojams siųsti sau asmeninius pranešimus


Turbūt visi esate pastebėję kad dle sistemoje vartotojai gali atsisiųsti sau asmeninę pranešimą, šis kodo įskiepis uždraus vartotojams atsisiųsti sau žinutes tikiuosi kad kažkam pravers.

Tik registruoti nariai gali siųstis failus! - REGISTRUOTIS



Galima naudoti ir su ankstesnėmis DLE versijomis kur nepalaiko automatinio modulio instaliavimą,
tada teks rankiniu būdu pasidaryti šitaip

atsidarome failą engine/modules/pm.phpir susirandame šią eilute:
$ajax_form = <<<HTML
ir aukščiau pridedame šita kodą:
$name = $member_id["name"];
$send_not_for_me = <<<HTML
<script type="text/jаvascript">    $(function(){    var member_name = "{$name}";    $('body').on('click', '[type=submit]', function() {    var status = true;    var name = $('[name=name]').val();    if (name == member_name) {    DLEalert('Jūs negalite siųsti sau asmeninių žinučių', dle_info);    status = false;    } else {    status = true;    }    return status;    });    });
</script>
HTML;

ir po to ieškome tame pačiame faile šią eilutę:
$tpl->set( '[newpm]', $ajax_form );
ir pakeičiame į šitokią eilutę:
$tpl->set( '[newpm]', $send_not_for_me . $ajax_form );

štai ir viskas!



DLE Versija: 13.0, 13.1, 13.2

pm asmeninės žinutės pranešimai dle žinutės
Puslapyje lankosi 1 lankytojas iš jų:
Svečiai1
Narių sąrašas
admin Lankėsi prieš 9 valandas
Pokalbio chatas
Puslapio atnaujinimai new