siv1987 2628 11/03/16 21:15 $this->request['TopicDesc'] - это только при редактирование темы из модераторских опции. Там еще есть другие файлы, которые выполняются при создание или редактирование темы и также необходимо отредактировать. IPSText::mbsubstr( $desc, 0, $this->settings['topic_desc_max_len'] ) заменить на ( mb_strlen( $desc ) > $this->settings['topic_desc_max_len'] ) ? IPSText::mbsubstr( $desc, 0, $this->settings['topic_desc_max_len'] - 3 ) . '...' : $desc IPSText::mbsubstr( $data['description'], 0, $this->settings['topic_desc_max_len'] ) заменить на ( mb_strlen( $data['description'] ) > $this->settings['topic_desc_max_len'] ) ? IPSText::mbsubstr( $$data['description'], 0, $this->settings['topic_desc_max_len'] - 3 ) . '...' : $data['description'] IPSText::mbsubstr( $this->request['TopicDesc'], 0, 70 ) заменить на ( mb_strlen( $this->request['TopicDesc'] ) > $this->settings['topic_desc_max_len'] ) ? IPSText::mbsubstr( $this->request['TopicDesc'], 0, $this->settings['topic_desc_max_len'] - 3 ) . '...' : $this->request['TopicDesc'] Поделиться сообщением Ссылка на сообщение
Strategius 52 11/03/16 21:57 Сделал правки, теперь после сохранения сообщения форум вылетает с ошибкой, что страницу не удалось загрузить... Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/03/16 22:03 Лог ошибки приведите или правьте файлы внимательнее, где-то видимо допустили синтаксическую ошибку. Поделиться сообщением Ссылка на сообщение
Strategius 52 11/03/16 22:18 Да, отредактировал с ошибкой, исправил ) Все внимательно проверил, все точно. Но троеточие не появляется ни в какую... Что же неправильно делаем?... Поделиться сообщением Ссылка на сообщение
Strategius 52 11/04/16 17:33 (изменено) Хочу добавить шаблон описания темы сразу в хук, чтобы вручную не редактировать шаблон скина. Составил файл хука и шаблон. Не подскажете, как правильно класс написать? По инструкции автора хука нужно в шаблон Forum View -> topic после <span class='desc lighter blend_links'>Нужно добавить: {parse template="topicDesc" group="forum" params="$data['description']"}У меня получился такой файл хука, ног вот как составить класс. я не знаю... <file> <hook_file_real>p32TopicDescriptionTopicList.php</hook_file_real> <hook_type>templateHooks</hook_type> <hook_classname>p32TopicDescriptionTopicList</hook_classname> <hook_data><![CDATA[a:8:{s:12:"dataLocation";s:0:"";s:14:"libApplication";s:0:"";s:15:"classToOverload";s:0:"";s:9:"skinGroup";s:10:"skin_forum";s:12:"skinFunction";s:5:"topic";s:4:"type";s:2:"if";s:2:"id";s:7:"hasTags";s:8:"position";s:11:"pre.startif";}]]></hook_data> <hooks_source> <![CDATA[ <?php class p32TopicDescriptionTopicList { public $registry; public $DB; protected $settings; protected $request; public function getOutput() { $data = $this->registry->output->getTemplate('forum')->functionData['TopicDescriptionList'][0]['form']; public function replaceOutput( $output, $key ) { return $output; } } ]]></hooks_source> </file>Шаблон: <templates> <template_group>skin_forum</template_group> <template_content><![CDATA[<br />{parse template="topicDesc" group="forum" params="$data['description']"}</div>]]> </template_content> <template_name>TopicDescriptionList</template_name> <template_data>$description</template_data> <template_updated>1315157306</template_updated> <template_removable>1</template_removable> <template_added_to>1</template_added_to> <template_user_added>1</template_user_added> <template_user_edited>0</template_user_edited> <template_master_key>root</template_master_key> </templates>Не подскажете, пожалуйста, как класс class p32TopicDescriptionTopicList правильно составить? Изменено 4 ноября 2016 пользователем Strategius Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/04/16 18:00 По инструкции автора хука нужно в шаблон Forum View -> topic послеТам нет хук поинта, а значит в этом месте код можно вставить только только типом хука "Перезагрузчик стиля" //<?php class p32TopicDescriptionTopicList extends skin_forum(~id~) { public function topic( $data, $forum_data, $other_data, $inforum ) { $html = parent::topic( $data, $forum_data, $other_data, $inforum ); $html = str_replace( "<span class='desc lighter blend_links'>", "<span class='desc lighter blend_links'>" . $this->registry->output->getTemplate('forum')->topicDesc( $data['description'] ), $html ); return $html; } } 1 Поделиться сообщением Ссылка на сообщение
Strategius 52 11/04/16 18:29 А условие hasTags не подходит для хукпоинта?Странно, добавил в хук этот класс, но шаблон все равно не выводится после установки хука... Знать бы еще, как хук отредактировать правильно :( Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/04/16 18:48 А условие hasTags не подходит для хукпоинта?В этом месте нет условия. Странно, добавил в хук этот классВ файле хука добавлять ничего не нужно. Все файлы добавляются редактированием хука в АЦ в режиме разработчика IN_DEV. Поделиться сообщением Ссылка на сообщение
Strategius 52 11/06/16 14:49 Попытался отредактировать хук в АЦ, экспортировал его, но все равно какая-то путаница, нарушилась структура.. Ну и ладно, потом вручную попробую сделать. А после внесения правок в хук из поста #16 троеточие должно появляться? Просто у меня как его не было, при изменении названия на длинное, так и нету. Поделиться сообщением Ссылка на сообщение
siv1987 2628 11/06/16 15:15 Попытался отредактировать хук в АЦ, экспортировал его, но все равно какая-то путаница, нарушилась структура.. Ну и ладно, потом вручную попробую сделать.Если вы не смогли добавить файл в АЦ, вручную вы тем более не сделаете. У каждого файла хука есть свои настройки hook_data, без них он работать не будет. А после внесения правок в хук из поста #16 троеточие должно появляться? Просто у меня как его не было, при изменении названия на длинное, так и нету.По логике да. Посмотрите какая длина указана в настройки $this->settings['topic_desc_max_len']. Они добавляются только при длине текста больше чем $this->settings['topic_desc_max_len']. Поделиться сообщением Ссылка на сообщение
Strategius 52 02/07/17 14:41 Так и не смог заставить троеточие появиться.. Не подскажете, возможно ли сделать, чтобы троеточие появлялось после последнего целого слова, т.е. чтобы не умещающееся слово не отображалось? Поделиться сообщением Ссылка на сообщение
Strategius 52 10/18/17 09:01 Если с троеточием невозможно реализовать решение, можно ли как-то сделать, чтобы если описание темы было длиннее заданного значения, просто выводилось предупреждение в модальном окне, что "описание слишком длинное, пожалуйста, укоротите"? Поделиться сообщением Ссылка на сообщение