DevilDriver 1 08/11/23 10:06 Доброго дня! Несколько лет назад мне уже помогали с реализацией этой штуки, сейчас хотелось бы чуть расширить функционал, но я не разберусь как. В общем, нужно вывести помимо ограничения количества скачивания в день еще число за неделю и месяц. Пробовал на удачу просто заменить daily_dl в коде {{if $restrictions['daily_dl'] > 0}} на weekly_dl, mothly_dl, week_dl, month_dl, как уже понятно, не помогло Буквально недавно появился такой плагин, но скачать я его не могу, ввиду невозможности оплатить из РФ: https://invisioncommunity.com/files/file/10253-remaining-downloads-info/ Поделиться сообщением Ссылка на сообщение
Lesovsky 173 08/13/23 16:03 Приветствую! Ключи немного иные, вот что в исходном коде: 'limit_sim', 'daily_bw', 'weekly_bw', 'monthly_bw', 'daily_dl', 'weekly_dl', 'monthly_dl' limit_sim - максимум одновременных скачиваний Суффиксы: _bw - ограничения трафика _dl - лимиты на скачивание 1 Поделиться сообщением Ссылка на сообщение
DevilDriver 1 08/21/23 19:12 13.08.2023 в 20:03, Lesovsky сказал: Ключи немного иные, вот что в исходном коде: Спасибо, получилось реализовать вывод, оказывается я почти угадал написание фраз, не выводилось из-за того, что неверно было указан интервал времени, в файле /applications/downloads/sources/File/File.php нашел вот это: 'daily' => 'P1D', 'weekly' => 'P1W', 'monthly' => 'P1M' Вывод количества для недели получился вот такой, по аналогии работает и для месяца: {{if $restrictions['weekly_dl'] > 0}} {{$downloads = \IPS\Db::i()->select( 'COUNT(*)', 'downloads_downloads', array( array( 'dmid=? AND dtime>?', \IPS\Member::loggedIn()->member_id, \IPS\DateTime::create()->sub( new \DateInterval( 'P1W' ) )->getTimestamp() ) ) )->first();}} <div>{lang="week"}{expression="$restrictions['weekly_dl'] - $downloads"}</div> {{endif}} В целом работает как надо, но имеется один косяк. Если у группы пользователей в настройках установлено скачивание файлов "Без ограничений", то не показывает ничего. Поделиться сообщением Ссылка на сообщение
Lesovsky 173 08/22/23 14:39 19 часов назад, DevilDriver сказал: В целом работает как надо, но имеется один косяк. Если у группы пользователей в настройках установлено скачивание файлов "Без ограничений", то не показывает ничего. Да нет никаких косяков, просто нужно добавить ещё одно условие, чтобы показывать сообщение что количество скачиваний без ограничений: {{if empty($restrictions['weekly_dl'])}} <div>без ограничений</div> {{endif}} 1 Поделиться сообщением Ссылка на сообщение
DevilDriver 1 08/22/23 17:28 @Lesovsky спасибо за помощь, работает отлично! Поделиться сообщением Ссылка на сообщение