10-12-2024 17:45
07-09-2024 10:31
07-03-2023 10:44
22-11-2023 17:14
Daha önce Hazırlamış olduğumuz Özel mesaj kotası uygulası tüm Gruplar ve üyeler için geçerliydi.
Şimdiki hazırladığımız Özel Mesaj Kutusu Limiti uygulaması, Tüm Gruplar için ayrı özel mesaj kotası belirleyebilirsiniz.
functions.php'yi açın alttakini bulun.
$cfg['res_dir'] = 'datas/resized/';
Altına ekleyin.
$cfg['group_pm_limits'] = [ 4 => 250, // Normal kullanıcılar için maksimum 250 mesaj 5 => 1000, // Yöneticiler için maksimum 1000 mesaj 6 => 500, // Modaratörler için maksimum 500 mesaj ];
pm.inc.php'yi açın alttakini bulun.
$out['subtitle'] = $L['Private_Messages'];
Üstüne ekleyin.
// Kullanıcının ana grubunu al $sqlx = sed_sql_query("SELECT user_maingrp FROM $db_users WHERE user_id='" . $usr['id'] . "'"); // Sorgu sonucunu çek $row = sed_sql_fetchassoc($sqlx); // Kullanıcı grubuna göre PM limiti belirle $user_group_id = $row['user_maingrp']; // Kullanıcının bulunduğu grup ID'sini al $user_pm_limit = isset($cfg['group_pm_limits'][$user_group_id]) ? $cfg['group_pm_limits'][$user_group_id] : 250; // Eğer grup limiti yoksa, varsayılan olarak 250 mesaj belirle // Kullanıcının mevcut mesaj sayısını al $sqls = sed_sql_query("SELECT COUNT(*) AS pm_count FROM $db_pm WHERE pm_fromuserid='" . $usr['id'] . "' OR pm_touserid='" . $usr['id'] . "'"); // Kullanıcının toplam mesaj sayısını çek $row_pm = sed_sql_fetchassoc($sqls); $user_pm_count = $row_pm['pm_count']; // Kullanıcının mesaj sayısını ve limitini kontrol et if ($user_pm_count >= $user_pm_limit) { $mesajuyari = "<span class= \"form-control btn btn-danger\">Mesaj limitini aştınız. Lütfen bazı mesajları silin.</span>"; } $kalan = $user_pm_limit-$totalinbox-$totalsentbox-$totalarchives; $topla = "Mesaj Kotanız: ".$user_pm_limit." / Kalan: ".$kalan;
Alttakini bul
"PM_PAGETITLE" => $title,
Altına ekle
"PM_TOPLAM_MESAJ_LIMITI" => $topla, "PM_TOPLAM_MESAJ_UYARI" => $mesajuyari,
pm.tpl'yi aç alttakini bul
<div class="centered"> {PM_INBOX} {PM_ARCHIVES} {PM_SENTBOX} {PM_SENDNEWPM} </div>
Alttaki ile değiştir.
<div class="centered"> {PM_INBOX} {PM_ARCHIVES} {PM_SENTBOX} {PM_SENDNEWPM} {PM_TOPLAM_MESAJ_LIMITI}<br>{PM_TOPLAM_MESAJ_UYARI} </div>
pm.send.inc.php'yi aç alttakini bul
$sql = sed_sql_query("SELECT COUNT(*) FROM $db_pm WHERE pm_touserid='".$usr['id']."' AND pm_state<2"); $totalinbox = sed_sql_result($sql, 0, "COUNT(*)");
// Kullanıcının ana grubunu al $sqlx = sed_sql_query("SELECT user_maingrp FROM $db_users WHERE user_id='" . $usr['id'] . "'"); // Sorgu sonucunu çek $row = sed_sql_fetchassoc($sqlx); // Kullanıcı grubuna göre PM limiti belirle $user_group_id = $row['user_maingrp']; // Kullanıcının bulunduğu grup ID'sini al $user_pm_limit = isset($cfg['group_pm_limits'][$user_group_id]) ? $cfg['group_pm_limits'][$user_group_id] : 1; // Eğer grup limiti yoksa, varsayılan olarak 10 mesaj belirle // Kullanıcının mevcut mesaj sayısını al $sqls = sed_sql_query("SELECT COUNT(*) AS pm_count FROM $db_pm WHERE pm_fromuserid='" . $usr['id'] . "' OR pm_touserid='" . $usr['id'] . "'"); // Kullanıcının toplam mesaj sayısını çek $row_pm = sed_sql_fetchassoc($sqls); $user_pm_count = $row_pm['pm_count'];
$error_string .= ($totalrecipients > 1) ? sprintf($L['pm_toomanyrecipients'], 1)."<br />" : '';
if ($user_pm_count < $user_pm_limit) {
sed_stat_inc('totalmailpmnot');
}
if (!empty($error_string)) { $t->assign("PMSEND_ERROR_BODY", sed_alert($error_string, 'e')); $t->parse("MAIN.PMSEND_ERROR"); }
$limitasimi = ($user_pm_count > $user_pm_limit) ? "<span class= \"form-control btn btn-danger\">Mesaj limitini aştınız. Lütfen bazı mesajları silin.</span> <br />" : ''; $kalan = $user_pm_limit-$totalinbox-$totalsentbox-$totalarchives; $topla = '<span class="form-control btn btn-primary">Mesaj Kotanız: '.$user_pm_limit.' / Kalan: '.$kalan.'</span>';
"PMSEND_SHORTTITLE" => $L['pmsend_title'],
"PMSEND_LIMITASIMI" => $limitasimi, "PM_TOPLAM_MESAJ_LIMITI" => $topla,
pm.send.tpl'yi aç alttakini bul
<!-- BEGIN: PMSEND_ERROR --> {PMSEND_ERROR_BODY} <!-- END: PMSEND_ERROR -->
{PMSEND_LIMITASIMI} {PM_TOPLAM_MESAJ_LIMITI}
İşlem tamamdır.
Kendi özelleştirilmiş stilini belirle
Uygulamanız için mükemmel renk modunu seçin.
Dil yönünüzü değiştirin
Tam ekran modu aç/kapat
Web sitesi için uygun bir menü sistemi seçin
Please enable JavaScript!Bitte aktiviere JavaScript!S'il vous plaît activer JavaScript!Por favor,activa el JavaScript!