Posted 16 августа, 20213 yr comment_171619 Здравствуй, Я провожу несколько конкурсов на своих форумах, и было бы здорово, если бы существовал инструмент или плагин для автоматического закрытия форумов в установленное время. Например, после полуночи никто не может размещать темы в определенной области. Прямо сейчас мне нужно выполнить запрос через cronjob, чтобы это сделать. Было бы здорово назначить такие разрешения некоторым группам. Это запрос: $sql = "UPDATE core_permission_index SET perm_3='' WHERE perm_id=114 AND perm_type_id=29" Спасибо! Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/ Share on other sites Больше вариантов
17 августа, 20213 yr comment_171630 <?php \define('REPORT_EXCEPTIONS', TRUE); $_SERVER['SCRIPT_FILENAME'] = __FILE__; require_once 'init.php'; \IPS\Session\Front::i(); \IPS\Db::i()->update( 'core_permission_index', array('perm_3'=>''), array( 'perm_id=? and perm_type_id=?', 114, 29 )); Создайте файлик в корне, вызывайте через cron Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171630 Share on other sites Больше вариантов
17 августа, 20213 yr comment_171631 Строчка \IPS\Session\Front::i(); лишняя, можно удалить. Если размещать файл не в корне, то надо указать правильный путь к init.php, типа require_once '../../init.php'; Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171631 Share on other sites Больше вариантов
21 августа, 20213 yr Author comment_171798 Desti У меня уже есть файл, который вызывается через cron: Spoiler <?php /*if(php_sapi_name() !== 'cli'){ die('Access denied.'); }*/ $secretphrase= "PASSWORD"; if (!isset($_GET[$secretphrase])) { http_response_code(401); die('Access denied.'); } $servername = "localhost"; $username = "USERNAME"; $password = "PASSWORD"; $dbname = "DB"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $sql = "UPDATE core_permission_index SET perm_3='' WHERE perm_id=114 AND perm_type_id=29"; if ($conn->query($sql) === TRUE) { echo "Record updated successfully!"; } else { echo "Error updating record: " . $conn->error; } $conn->close(); ?> Но ваше решение звучит проще. Я искал способ разрешить определенной группе получить доступ к странице .php, выбрать правильный форум и выбрать время, когда он должен блокировать публикацию новых тем. Или, может быть, плагин. Звучит не слишком сложно, но, вероятно, потребуется время, верно? Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171798 Share on other sites Больше вариантов
21 августа, 20213 yr comment_171800 BlackShot самый простой вариант, это создать новую страницу c блоком. Спойлер создать php блок. придумать любой ключ. вставить свой код туда, я немного изменил его. $servername = "***"; $username = "***"; $password = ""***";"; $dbname = ""***";"; // Create connection $conn = new mysqli($servername, $username, $password, $dbname); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); } $perm = ''; $pid = '8'; $ptypeid = '3'; $sql = "UPDATE core_permission_index SET perm_3='$perm' WHERE perm_id=$pid AND perm_type_id=$ptypeid"; if ($conn->query($sql) === TRUE) { echo "<span style='color:green;'>Record updated successfully!</span>"; } else { echo "<span style='color:red;'>Error updating record: </span>" . $conn->error; } $conn->close(); ?> создать страницу, в принципе, без разницу какую, но тебе удобнее второй вариант, думаю. вставить во вкладку Content тот самый ключ с созданного блока. дать нужным группам разрешения для доступа к странице и блоку и перейти на страницу. наслаждаться. при желании, можно на страницу добавить ввод необходимых значений через инпут. ещё можно запрос сделать логикой ипс, как писал Desti, но я привык так. Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171800 Share on other sites Больше вариантов
22 августа, 20213 yr Author comment_171804 18 hours ago, by_ix said: BlackShot the simplest option is to create a new page with a block. Hide contents create php block. come up with any key. paste your code there, i changed it a bit. to create a page, in principle, without any difference, but the second option is more convenient for you, I think. insert the same key from the created block into the Content tab. give the necessary groups permissions to access the page and block and go to the page. enjoy. if desired, you can add the input of the necessary values to the page via the input. You can still make a request with the ips logic, as Desti wrote, but I'm used to it this way. Звучит очень, очень интересно, и это сработало! Спасибо! Теперь мне нужно найти способ отображать календарь со временем, чтобы он запускался в указанное время. Вы знаете какие-нибудь учебники? Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171804 Share on other sites Больше вариантов
22 августа, 20213 yr comment_171805 6 минут назад, BlackShot сказал: отображать календарь со временем не совсем понимаю, что это значит. нужно просто давать доступ людям к календарю в определённое время? или что. Edited 22 августа, 20213 yr by by_ix Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171805 Share on other sites Больше вариантов
22 августа, 20213 yr Author comment_171806 2 minutes ago, by_ix said: не совсем понимаю, что это значит. Я хотел бы разрешить этим конкретным группам установить день и время закрытия форумов. Прямо сейчас кнопка мгновенно закрывает форумы. Имеет ли это смысл? 😬 Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171806 Share on other sites Больше вариантов
22 августа, 20213 yr comment_171807 а календари тут причём? 3 минуты назад, BlackShot сказал: конкретным группам установить день и время закрытия форумов это уже сложнее. проще тогда создать две cron задачи, которые будут каждый день (или в указанные дни) открывать и закрывать форумы. Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171807 Share on other sites Больше вариантов
22 августа, 20213 yr comment_171808 Чтобы создать что-то для исполнения в будущем, надо, во первых, создать форму, в которой указывается форум, время и дата, во вторых, создать табличку в базе (или хранить в Store) и записывать в нее данные из формы, в третьих, создать задачу, которая раз в минуту будет проверять табличку и при наступлении указанного времени закрывать форум. Тянет на целое приложение Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171808 Share on other sites Больше вариантов
22 августа, 20213 yr comment_171809 3 минуты назад, Desti сказал: Тянет на целое приложение о чём и речь.@BlackShot будет очередной повод изучить строение плагинов и приложений. Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171809 Share on other sites Больше вариантов
22 августа, 20213 yr Author comment_171810 2 minutes ago, by_ix said: а календари тут причём? это уже сложнее. проще тогда создать две cron задачи, которые будут каждый день (или в указанные дни) открывать и закрывать форумы. Я думал о календаре, отображаемом пользователю, поэтому он / она выбирает дату и время закрытия форумов. Да, я делал это через cron, но искал способ сделать это так, как я вам сказал. Но я предполагаю, что это может быть сложно, поэтому я, вероятно, остановлюсь на cron. 😅 1 minute ago, Desti said: Чтобы создать что-то для исполнения в будущем, надо, во первых, создать форму, в которой указывается форум, время и дата, во вторых, создать табличку в базе (или хранить в Store) и записывать в нее данные из формы, в третьих, создать задачу, которая раз в минуту будет проверять табличку и при наступлении указанного времени закрывать форум. Тянет на целое приложение Это дало мне какое-то направление. Я посмотрю, смогу ли я узнать это в свободное время. Спасибо! Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171810 Share on other sites Больше вариантов
22 августа, 20213 yr comment_171812 1 час назад, BlackShot сказал: Это дало мне какое-то направление. Создайте простое приложение и тренируйтесь. Плагины не совсем то, что нужно для решения этой задачи. 1 час назад, BlackShot сказал: Я думал о календаре, отображаемом пользователю Это усложнение. Вам нужна форма ввода даты и поле ввода времени в простейшем формате типа часы / минуты. Что-то типа Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171812 Share on other sites Больше вариантов
23 августа, 20213 yr Author comment_171813 6 hours ago, Desti said: Создайте простое приложение и тренируйтесь. Плагины не совсем то, что нужно для решения этой задачи. Это усложнение. Вам нужна форма ввода даты и поле ввода времени в простейшем формате типа часы / минуты. Что-то типа Да, идеально! Вы сделали это или это из существующего плагина / приложения? Мне нужно что-то подобное. Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171813 Share on other sites Больше вариантов
23 августа, 20213 yr comment_171814 Это написанное за 5 минут приложение. Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171814 Share on other sites Больше вариантов
24 августа, 20213 yr Author comment_171825 19 hours ago, Desti said: Это написанное за 5 минут приложение. Не могли бы вы поделиться им только для учебы? 😊 Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171825 Share on other sites Больше вариантов
24 августа, 20213 yr comment_171830 Не думаю, что вам поможет форма в пустом приложении. Найду время, сделаю вам шаблончик для изучения. Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=171830 Share on other sites Больше вариантов
5 сентября, 20213 yr Author comment_172164 On 8/24/2021 at 8:23 AM, Desti said: Не думаю, что вам поможет форма в пустом приложении. Найду время, сделаю вам шаблончик для изучения. Desti? 🥺 Link to comment https://ipbmafia.ru/topic/23420-kak-zakryvat-forumy-avtomaticheski/?&do=findComment&comment=172164 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.