Разрегистрация релизов с отдельными статусами

baruk

Пользователь
#1
Доброго времени суток.

Есть ли возможность настройки разрегистрации релизов с отдельно выбранными статусами?
Сейчас для всех действует $bb_cfg['seeder_last_seen_days_keep']=хх,
Как сделать, что бы этому правилу подчинялись все TOR_STATUS_ххх, кроме определенных?

Почему возникла такая необходимость: есть несколько релизеров, которые выкладывают некий контент, в силу своей специфичности пользуется не громадным спросом. Релизеры имеют обыкновение уезжать в длительные поездки, порою на два-три месяца. Увеличивать только из-за них $bb_cfg['seeder_last_seen_days_keep'] не имеет смысла, оставлять так - тоже. Восстанавливать 400-500 раздач после каждой командировки терпения хватит не надолго, отказываться от таких релизеров - не резон.

Есть идея создать дополнительный статус, который оставался бы всегда жив, не влияя при этом на нормальную жизнь трекера. Или может у вас есть другая идея для такой ситуации?

Ревизия r400.
 
G

Gemini_13

Гость
#2
да, это возможно. первое, что пришло в голову.

includes/cron/jobs/tr_maintenance.php
Найти:
PHP:
$sql = "SELECT topic_id, attach_id
    FROM ". BB_BT_TORRENTS ."
    WHERE reg_time < $never_seen_time
        AND seeder_last_seen < $last_seen_time
    LIMIT $limit_sql";
Заменить на:
PHP:
$white_statuses = TOR_NOT_APPROVED, TOR_CHECKING; // Через запятую название статуса или его id
$sql = "SELECT topic_id, attach_id
    FROM ". BB_BT_TORRENTS ."
    WHERE reg_time < $never_seen_time
        AND seeder_last_seen < $last_seen_time
        AND tor_status NOT IN ($white_statuses)
    LIMIT $limit_sql";
$white_statuses - это список статусов, релизы с которым должны оставатся. Этот список можно перенести в админку или в файл конфига. тут уже дело фантазии.

Список статусов хранится в includes/init_bb.php:
PHP:
// Torrents    (reserved: -1)
define('TOR_NOT_APPROVED',  0);  // не проверено
define('TOR_CLOSED',        1);  // закрыто
define('TOR_APPROVED',      2);  // проверено
define('TOR_NEED_EDIT',    3);  // недооформлено
define('TOR_NO_DESC',      4);  // неоформлено
define('TOR_DUP',          5);  // повтор
define('TOR_CLOSED_CPHOLD', 6);  // закрыто правообладателем
define('TOR_CONSUMED',      7);  // поглощено
define('TOR_DOUBTFUL',      8);  // сомнительно
define('TOR_CHECKING',      9);  // проверяется
define('TOR_TMP',          10);  // временная
define('TOR_PREMOD',        11);  // премодерация
 
Сверху