вопрос
Всем привет! Проблема следующая:
В DLE при публикации новости стоит галочка "Разрешить комментарии" (форма добавления комментариев естественно работает, как и задумано).
Пишем несколько комментов, решаем закрыть новость для комментирования (убираем галочку "Разрешить комментарии") и что мы собственно видим?
Кроме формы добавления комментариев, скрываются ещё и сами написанные комментарии.
Это баг DLE и если кто знает, как это исправить, прошу помочь.
В DLE при публикации новости стоит галочка "Разрешить комментарии" (форма добавления комментариев естественно работает, как и задумано).
Пишем несколько комментов, решаем закрыть новость для комментирования (убираем галочку "Разрешить комментарии") и что мы собственно видим?
Кроме формы добавления комментариев, скрываются ещё и сами написанные комментарии.
Это баг DLE и если кто знает, как это исправить, прошу помочь.
Ответил: SX2
Собрал небольшой плагин, пользуемся кому нужно!
<?xml version="1.0" encoding="utf-8"?>
<dleplugin>
<name>Фикс комментов</name>
<description></description>
<icon></icon>
<version></version>
<dleversion></dleversion>
<versioncompare>less</versioncompare>
<upgradeurl></upgradeurl>
<filedelete>0</filedelete>
<needplugin></needplugin>
<mnotice>0</mnotice>
<mysqlinstall><![CDATA[]]></mysqlinstall>
<mysqlupgrade><![CDATA[]]></mysqlupgrade>
<mysqlenable><![CDATA[]]></mysqlenable>
<mysqldisable><![CDATA[]]></mysqldisable>
<mysqldelete><![CDATA[]]></mysqldelete>
<phpinstall><![CDATA[]]></phpinstall>
<phpupgrade><![CDATA[]]></phpupgrade>
<phpenable><![CDATA[]]></phpenable>
<phpdisable><![CDATA[]]></phpdisable>
<phpdelete><![CDATA[]]></phpdelete>
<notice><![CDATA[]]></notice>
<file name="engine/classes/comments.class.php">
<operation action="replace">
<searchcode><![CDATA[if($user_group[$member_id['user_group']]['allow_addc'] AND $config['allow_comments'] AND $config['tree_comments'] ) {]]></searchcode>
<replacecode><![CDATA[if($user_group[$member_id['user_group']]['allow_addc'] AND $config['allow_comments'] AND $config['tree_comments'] AND $row['allow_comm']) {]]></replacecode>
</operation>
<operation action="replace">
<searchcode><![CDATA[if( $user_group[$member_id['user_group']]['allow_addc'] AND $config['allow_comments'] ) {]]></searchcode>
<replacecode><![CDATA[if( $user_group[$member_id['user_group']]['allow_addc'] AND $config['allow_comments'] AND $row['allow_comm'] ) {]]></replacecode>
</operation>
</file>
<file name="engine/modules/show.full.php">
<operation action="replace">
<searchcode><![CDATA[$comments->query = "SELECT " . PREFIX . "_comments.id, post_id, " . PREFIX . "_comments.user_id, date, autor as gast_name, " . PREFIX . "_comments.email as gast_email, text, ip, is_register, " . PREFIX . "_comments.rating, " . PREFIX . "_comments.vote_num, " . PREFIX . "_comments.parent, name, " . USERPREFIX . "_users.email, news_num, comm_num, user_group, lastdate, reg_date, signature, foto, fullname, land, xfields FROM " . PREFIX . "_comments LEFT JOIN " . USERPREFIX . "_users ON " . PREFIX . "_comments.user_id=" . USERPREFIX . "_users.user_id WHERE " . PREFIX . "_comments.post_id = '$news_id'" . $where_approve . " ORDER BY " . PREFIX . "_comments.id " . $comm_msort;]]></searchcode>
<replacecode><![CDATA[$comments->query = "SELECT " . PREFIX . "_post.allow_comm, " . PREFIX . "_comments.id, post_id, " . PREFIX . "_comments.user_id, " . PREFIX . "_comments.date, " . PREFIX . "_comments.autor as gast_name, " . PREFIX . "_comments.email as gast_email, text, ip, is_register, " . PREFIX . "_comments.rating, " . PREFIX . "_comments.vote_num, " . PREFIX . "_comments.parent, name, " . USERPREFIX . "_users.email, news_num, " . USERPREFIX . "_users.comm_num, user_group, lastdate, reg_date, signature, foto, fullname, land, " . USERPREFIX . "_users.xfields FROM " . PREFIX . "_comments LEFT JOIN " . USERPREFIX . "_users ON " . PREFIX . "_comments.user_id=" . USERPREFIX . "_users.user_id LEFT JOIN " . PREFIX . "_post ON " . PREFIX . "_comments.post_id=" . PREFIX . "_post.id WHERE " . PREFIX . "_comments.post_id = '$news_id'" . $where_approve . " ORDER BY " . PREFIX . "_comments.id " . $comm_msort;]]></replacecode>
</operation>
<operation action="replace">
<searchcode><![CDATA[if( $allow_comments AND $news_found) {]]></searchcode>
</operation>
<operation action="after">
<searchcode><![CDATA[if( $user_group[$member_id['user_group']]['allow_addc'] AND $config['allow_comments'] AND $allow_add AND ($member_id['restricted'] != 2 AND $member_id['restricted'] != 3) ) {]]></searchcode>
<replacecode><![CDATA[if( $allow_comments AND $news_found) {]]></replacecode>
</operation>
</file>
<file name="engine/modules/lastcomments.php">
<operation action="replace">
<searchcode><![CDATA[p.alt_name, p.category]]></searchcode>
<replacecode><![CDATA[p.alt_name, p.category, p.allow_comm]]></replacecode>
</operation>
</file>
</dleplugin>