» » Модуль iComm (Последние комментарии) jQuery Edition

Модуль iComm (Последние комментарии) jQuery Edition

1.08
99
30 216
Модуль iComm (Последние комментарии) jQuery Edition


Представляю вашему вниманию модифицированный вариант модуля iComm от RooTM. Модуль довольно сильно переработан, уменьшен почти в 10 раз его вес, исправлены некоторые недочёты и немного дополнен функционал.

Чтобы не заставлять вас много читать - смотрите как оно работает.

Что нового?



1. Весь модуль сокращён до двух файлов (1 - php и 1 - tpl), тем самым вес уменьшен с 50кб до 5.
2. Убраны ненужные js-скрипты, окошко с комментарием переведено на jQuery.
3. Доработаны небольшие косяки в модуле, убраны ссылки.
4. Добавлен вывод необрезанного заголовка (в качестве title лучше использовать его, чем обрезанный), вывод количества комментариев к новости.
5. Улучшена работа с кешем - теперь не нужно ничего подключать дополнительно, кеш чистится сам, стандартными средствами DLE.
6. Дальше не помню, т.к. не собирался публиковать модуль и не записывал изменения.


Установка



1. Скопировать файл icomm.php в папку /engine/modules/
2. Скопировать файл lastcomm.tpl в папку с текущим шаблоном.
3. Открыть main.tpl и в нужное место вставить строку:
{include file="engine/modules/icomm.php"}

4. Открыть любой .js файл (в дефолтном шаблоне это /js/libs.js) и вставить в начало следующее:
$(function () {
    $(".lcomment:odd").addClass("even");
    $(".lcomment").hover(function(){ $(this).addClass("hover");},function(){$(this).removeClass("hover");});
    $('.lcomment').click(function(){window.location=$(this).find("a").attr("href"); return false;});
    });


5. Открыть любой, удобный вам файл .css (обычно это styles.css) и вставить туда вот это:
Всё что помечено как: /* -- */ не критичные стили, их нужно менять под свой вкус и цвет.

.lastcomm li {
    position: relative;
    cursor: pointer;
    }
    .lcommbox {
        position: absolute;
        z-index: 3;
        right: 99999px;
        top: 0px;
        padding:10px; /* -- */
        margin-right: 15px; /* -- */
        border: 1px solid #c7c7c7; /* -- */
        background: #fff; /* -- */
        font-size: 12px; /* -- */
        }
        .lcomment.hover .lcommbox {left: 100%;} /* если нужно, чтобы комментарий показывался слева - заменить на right: 100%; */
        .lcomment {
            padding: 5px; /* -- */
            background: #fff; /* -- */
            }
            .lcomment a {text-decoration: none;} /* -- */
            .lcomment.even {
                background: #fafafa; /* -- */
                }
            .lcomment.hover {
                background: #fff; /* -- */
                padding: 4px; /* -- */
                border: solid 1px #bddb5c; /* -- */
                border-radius: 4px;  /* -- */
                -moz-border-radius: 4px; /* -- */
                -webkit-border-radius: 4px; /* -- */
                }
                .lcomment.hover a, .lcomment.hover a:hover {
                    color: #3d3d3d; /* -- */
                    }
            .lcomment span {
                color: #b3b7ba; /* -- */
                }
        .lcom_info {
            margin: -9px -9px 10px -9px; /* -- */
            padding: 10px; /* -- */
            background: #fafafa; /* -- */
            color: #73a331; /* -- */
            }


6. Всё! Наслаждаемся результатом.

Как всегда жду замечаний/предложений.

Похожие материалы

Комментарии

OKyJIucT
OKyJIucT 27 июля 2012 22:41
вопрос снимается) нашел в стилях ответ)
Yamakasi
Yamakasi 29 июля 2012 20:01
да по скорее бы новый модуль, так как данный не работает на 9,6 линейке (((
Пробовал убрать, что писали в коментах, не помогло (((
Так ждём, ждём...
Заранее спасибо!
Yamakasi
Yamakasi 9 августа 2012 08:38
Уважаемый ПафНутиЙ, когда будет обнова? Мы все Вас ждём ))) bully
ПафНутиЙ
ПафНутиЙ 9 августа 2012 09:35
Как говорится: "Как только, так сразу". Всё упирается в нехватку времени.
IMP
IMP 15 сентября 2012 10:03
How we can show authors avatar? request
ПафНутиЙ
ПафНутиЙ 15 сентября 2012 22:50
you need iComm v.6
ALTERNATE
ALTERNATE 28 ноября 2012 11:00
После установки на DLE 9.6 выдает ошибку:
$db->query( "SELECT c.post_id, c.is_register, c.text, c.autor, c.email, p.id, p.date as newsdate, p.title, p.category, p.comm_num, p.alt_name, p.flag FROM " . PREFIX . "_comments as c, " . PREFIX . "_post as p WHERE p.id=c.post_id AND c.approve=1 AND p.category IN (1,2,3) ORDER BY c.date DESC LIMIT 0, " . $max_comm );
ПафНутиЙ
ПафНутиЙ 28 ноября 2012 11:13
модуль не работает с новыми версиями dle,
Если найду время - выложу новую версию.
Arsen
Arsen 13 января 2013 04:35
А точку убрать можно, перед коментариями
Arsen
Arsen 13 января 2013 05:25
Не выводит комментарии все пусто
ПафНутиЙ
ПафНутиЙ 13 января 2013 11:23
Цитата: Arsen
А точку убрать можно, перед коментариями

Цитата: Arsen
Не выводит комментарии все пусто

Не понял о чём идёт речь.
Yamakasi
Yamakasi 29 января 2013 07:38
ПафНутиЙ,
модуль обновили на 9.7 линейку или нет?
ждал, ждал, ну и нет обновы, а тут наткнулся на статью _http://prowebber.ru/dle/moduls/14355-modul-icomm-poslednie-kommentarii-jquery-edition.html и Вы там дали ответ, то что уже обновили, но где? Так обнова уже есть, можно качать и ставить или как? нефига не понял )))
ПафНутиЙ
ПафНутиЙ 29 января 2013 09:32
Я обновиле го почти сразу после выхода 9.7, но времени выложить нет. В выходные будет вам обновка, так уж и быть, найду время, не красиво заставлять страдать людей smile
salam
salam 29 января 2013 12:10
Цитата: ПафНутиЙ
Я обновиле го почти сразу после выхода 9.7, но времени выложить нет. В выходные будет вам обновка, так уж и быть, найду время, не красиво заставлять страдать людей

Паша, ждем с нетерпением. Ты в ответе за тех кого подсадил на этот модуль =))))
JackBlack
JackBlack 30 января 2013 18:38
Здравствуйте.

Блок с комментарием всплываем почему-то под другим блоком (видна маленькая грань окна). Движок: DLE: 9.6

Подскажите пожалуйста, как решить проблему ?
Адрес сайта отправил в ЛС.

Заранее спасибо.
ПафНутиЙ
ПафНутиЙ 30 января 2013 23:24
style.css строка 803, должно быть так:
.lastcomm li {
    position: relative;
    cursor: pointer;
    margin: 0;
    list-style: none;
}
Toxan76
Toxan76 31 января 2013 23:45
Подскажите пожалуйста
Прописал всё, в js добавил, в main js подключён
Но всплывающие окно при наведении не появляется
(dle 9.7)
ПафНутиЙ
ПафНутиЙ 1 февраля 2013 09:16
Проверьте нет ли у родительского элемента overflow: hidden;
ну и адрес сайта не плохо было бы увидеть
Toxan76
Toxan76 1 февраля 2013 11:23
Да, конечно
trainzona.ru
ПафНутиЙ
ПафНутиЙ 3 февраля 2013 21:42
Цитата: Toxan76
trainzona.ru

файл blocks.css
.blocklefttype3 .dcont {
	width: 179px;
	padding-bottom: 36px;
	margin-left: 30px;
	margin-right: 26px;
	padding-top: 44px;
	overflow: hidden; /*вот это надо убрать*/
}

из-за overflow: hidden все проблемы.

В эти выходные версии под 9.7-9.8 не будет, т.к. я занимался модулем blockpro, релиз которого уже состоялся, можете попробовать его в деле.
Toxan76
Toxan76 4 февраля 2013 20:03
ПафНутиЙ,

Спасибо за помощь)
С удовольствием попробую новую версию
salam
salam 7 февраля 2013 10:23
ПафНутиЙ,
Паша, ну когда же будет модуль под 9.7 -9.8 ???
DaImeR
DaImeR 11 февраля 2013 16:57
salam,
Модуль отлично работает под 9.7-9.8
salam
salam 14 февраля 2013 15:33
DaImeR,
Ни фига не работает.
MySQL error in file: /engine/modules/icomm.php at line 29
Error Number: 1054
The Error returned was:
Unknown column 'p.flag' in 'field list'
SQL query:

SELECT c.post_id, c.is_register, c.text, c.autor, c.email, p.id, p.date as newsdate, p.title, p.category, p.comm_num, p.alt_name, p.flag FROM dle_comments as c, dle_post as p WHERE p.id=c.post_id AND c.approve=1 ORDER BY c.date DESC LIMIT 0, 10

Так что не вводите людей в заблуждение.

Как я понимаю проблема в этом запросе:
$db->query( "SELECT c.post_id, c.is_register, c.text, c.autor, c.email, p.id, p.date as newsdate, p.title, p.category, p.comm_num, p.alt_name, p.flag FROM " . PREFIX . "_comments as c, " . PREFIX . "_post as p WHERE p.id=c.post_id AND c.approve=1 ORDER BY c.date DESC LIMIT 0, " . $max_comm );

Методом НЕнаучного тыка поробовал заменить запрос на тот что в модуле от RooTM.
$db->query( "SELECT c.id as comid, c.post_id, c.date, c.user_id, c.is_register, c.text, c.autor, c.email, c.approve,
            p.id, p.date as newsdate, p.title, p.category, p.comm_num, p.alt_name {$flag},
            u.foto, u.user_group, u.user_id
            FROM " . PREFIX . "_comments as c, " . PREFIX . "_post as p, " . PREFIX . "_users as u
            WHERE p.id=c.post_id AND c.user_id = u.user_id AND c.approve = 1 {$stop_category} {$from_category}
            ORDER BY c.date DESC LIMIT 0, " . $max_comm );


Ошибка исчезла , вывод каментов получился, НО при переходе по ссылке в новость - ошибка 404.
Народ кто силен в запросах, может скурим эту тему если Пафнутию не когда?

PS Я просто нихрена в этом не понимаю =(
Toxan76
Toxan76 15 февраля 2013 22:06
Добрый вечер!
Подскажите, менял параметр показания комментария с право на лево, но комент так и показывается справа (пробывал чистить кеш, менять на другой параметр, оверлоу убран) всё ровно показывается справа (сайт trainzona.ru)
Спасибо за внимание
ПафНутиЙ
ПафНутиЙ 15 февраля 2013 23:58
http://pafnuty.name/modules/138-icomm-for-dle-9-8.html
Altair
Altair 30 октября 2013 18:05
salam, ссылка выводится с не правильным ЧПУ.

Сам профан, но копать туда.
skynet32rus
skynet32rus 8 августа 2014 10:45
круто!
skynet32rus
skynet32rus 8 августа 2014 10:58
есть проблема, когда все сделал мне выдало ошибку mysql со ссылкой на строку 29 файла icomm.php, а той строке есть запись p.flag и изза нее была ошибка, я ее удалил я все норм вроде
ПафНутиЙ
ПафНутиЙ 8 августа 2014 11:02
Просто не используйте null и жизнь станет проще :)

Добавить комментарий

Комментировать могут только зарегистрированные пользователи

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.