Опубликовано: 30 ноября 20178 г Добавил к постам свое поле, вопрос. Где цикл, что выводит сообщения в панели модератора. Необходимо в запрос добавить условие по новому добавленному полю. Спасибо.
Опубликовано: 4 декабря 20178 г И к какому скрипту обращается jaix запрос? \system\Content\Controller.phpКак добавить вывод сообщений по добавленному в таблицу полю?\applications\core\extensions\core\ModCp\Unapproved.php $where = array(); if ( isset( $class::$databaseColumnMap['hidden'] ) ) { $where[] = array( $class::$databasePrefix . $class::$databaseColumnMap['hidden'] . '=1' ); } elseif ( isset( $class::$databaseColumnMap['approved'] ) ) { $where[] = array( $class::$databasePrefix . $class::$databaseColumnMap['approved'] . '=0' ); } else { continue; }Добавляете в массив $where свое условие.
Опубликовано: 4 декабря 20178 г Автор В таблице post нет поля "approved", те что необходимо проверить посты вытаскивают из бд по queued=1. Откуда approved?
Опубликовано: 4 декабря 20178 г Автор Как изменяется значение поля "queued" после того как одобрили пост. Где меняется это значение?
Опубликовано: 4 декабря 20178 г В таблице post нет поля "approved", те что необходимо проверить посты вытаскивают из бд по queued=1. Откуда approved? Где в коде указано, что это поле?Как изменяется значение поля "queued" после того как одобрили пост. Где меняется это значение? С 1 на 0
Опубликовано: 4 декабря 20178 г А где? В 17 посте \system\Content\Controller.php /** * Unhide Comment/Review * * @param string $commentClass The comment/review class * @param \IPS\Content\Comment $comment The comment/review * @param \IPS\Content\Item $item The item * @return void * @throws \LogicException */ public function _unhide( $commentClass, $comment, $item ) { \IPS\Session::i()->csrfCheck(); $comment->modAction( 'unhide' ); if ( \IPS\Request::i()->isAjax() ) { \IPS\Output::i()->sendOutput( $comment->html(), 200, 'text/html' ); return; } else { \IPS\Output::i()->redirect( $comment->url() ); } }
Опубликовано: 4 декабря 20178 г Автор Дописал $where = array(); if ( isset( $class::$databaseColumnMap['hidden'] ) ) { $where[] = array( $class::$databasePrefix . $class::$databaseColumnMap['hidden'] . '=1' ); } elseif ( isset( $class::$databaseColumnMap['approved'] ) ) { $where[] = array( $class::$databasePrefix . $class::$databaseColumnMap['approv_modul'] . '=1' ); $where[] = array( $class::$databasePrefix . $class::$databaseColumnMap['approved'] . '=0' ); } else continue; Получил ошибку, надеюсь поле у условие подставилось через or??? Изменено 4 декабря 20178 г пользователем Gerbys
Опубликовано: 4 декабря 20178 г Автор $comment->modAction( 'unhide' ); Где функция прописана "modAction", я так понимаю в ней указывается значение поля и обновляется запись.
Опубликовано: 4 декабря 20178 г Автор $approveUrl = $item->url()->setQueryString( array( 'do' => 'unhideComment', 'comment' => $item->$idColumn ) )->csrf(); Формирует url, далее яксом обращается к\\ public function _unhide( $commentClass, $comment, $item ) { \IPS\Session::i()->csrfCheck(); $comment->modAction( 'unhide' ); if ( \IPS\Request::i()->isAjax() ) { \IPS\Output::i()->sendOutput( $comment->html(), 200, 'text/html' ); return; } else { \IPS\Output::i()->redirect( $comment->url() ); } } Далее подгружает $comment->modAction( 'unhide' );где этот объект в котором обновляется запись в таблице?
Опубликовано: 4 декабря 20178 г Автор Немного подругому вопрос поставлю, когда находимся во вкладке "Очередь на одобрение" и одобряем пост. У нас в таблице forums_posts колонка queued. Меняется значение с единицы на ноль... Где этот самый ноль прописайн, где строчка которая указывает какое значение должно стоять в данной колонке при обновлении записи. Спасибо...
Опубликовано: 5 декабря 20178 г Где этот самый ноль прописайн, где строчка которая указывает какое значение должно стоять в данной колонке при обновлении записи. Спасибо... \system\Content\Content.phpМетод unhide /** * Unhide * * @param \IPS\Member|NULL|FALSE $member The member doing the action (NULL for currently logged in member, FALSE for no member) * @return void */ public function unhide( $member ) {
Опубликовано: 5 декабря 20178 г Автор Нашел, что та не удается изменить значение своего поля и так и сяк, ну никак $this->$column = '0, modul_approv=\'0\''; $this->modul_approv = 0; $modul = static::$databaseColumnMap['modul_approv']; $this->$modul = 0; Ну никак значение в поле не хочет меняться. В чем дело?
Опубликовано: 5 декабря 20178 г if ($this instanceof \IPS\forums\Topic\Post) { $this->foo = 0; }foo - название столбца в таблице постов
Опубликовано: 5 декабря 20178 г Зависит от того, куда именно добавили.Если до $this->save();, то должноЕсли после, то нужно сохранить повторно
Добавил к постам свое поле, вопрос. Где цикл, что выводит сообщения в панели модератора.
Необходимо в запрос добавить условие по новому добавленному полю.
Спасибо.