Shoma 0 Опубликовано: 30 мая 2008 Рассказать Опубликовано: 30 мая 2008 на 4 дле стоит данный хак. Кто то написал подобный. но он нерабочий Может кто из экспертов поможет разобрать сей код. до рабочей версии. Хак очень нужен и интересен) открыть engine/modules/show.full.php найти и удалить if ($config['comm_msort'] == "ASC") $tpl->set('{comment-id}', $cstart+$i); else $tpl->set('{comment-id}', $comments_num-$cstart-$i+1); найти $tpl->load_template('comments.tpl'); if (strpos ($tpl->copy_template, "[xfvalue_") !== false) $xfound = true; else $xfound = false; if ($xfound) $xfields = xfieldsload(true); $tpl->copy_template = "<a name="comment"></a>".$tpl->copy_template; if ($config['allow_cmod']) $where_approve = " AND " . PREFIX . "_comments.approve='1'"; else $where_approve = ""; $sql_result = $db->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, name, " . USERPREFIX . "_users.email, news_num, comm_num, user_group, reg_date, signature, foto, fullname, land, icq, 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 date ".$config['comm_msort']." LIMIT ".$cstart.",".$config['comm_nummers']); while($row = $db->get_row($sql_result)){ $i++; $row['date'] = strtotime($row['date']); $row['gast_name'] = stripslashes($row['gast_name']); $row['gast_email'] = stripslashes($row['gast_email']); $row['name'] = stripslashes($row['name']); заменить на $sql_result = $db->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, name, " . USERPREFIX . "_users.email, news_num, comm_num, user_group, reg_date, signature, foto, fullname, land, icq, 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 date ".$config['comm_msort']." LIMIT ".$cstart.",".$config['comm_nummers']); while($row = $db->get_row($sql_result)){ $i++; if ($config['comm_msort'] == "ASC") { $tpl->set('{comment-id}', $cstart+$i); $a_comment_id = $cstart+$i; } else { $tpl->set('{comment-id}', $comments_num-$cstart-$i+1); $a_comment_id = $comments_num-$cstart-$i+1; } if ($a_comment_id & 1) $tpl->load_template('comments1.tpl'); else $tpl->load_template('comments2.tpl'); if (strpos ($tpl->copy_template, "[xfvalue_") !== false) $xfound = true; else $xfound = false; if ($xfound) $xfields = xfieldsload(true); $tpl->copy_template = "<a name=\"comment\"></a>".$tpl->copy_template; if ($config['allow_cmod']) $where_approve = " AND " . PREFIX . "_comments.approve='1'"; else $where_approve = ""; $row['date'] = strtotime($row['date']); $row['gast_name'] = stripslashes($row['gast_name']); $row['gast_email'] = stripslashes($row['gast_email']); $row['name'] = stripslashes($row['name']); создать 2 файла шаблона comments1.tpl - для нечетных комментариев comments2.tpl - для четных После установки вроде все работает. но при попытке добвить коментарий 1. если цитировать чей-либо коммент, то при добавлении почему-то выскакивает окно с предупреждением, что Вы ввели слишком большое количество символов. 2. если просто добавлять коммент, то появляется стандартная маленька формочка dle (идет загрузка, подождите), и все сайт зависает. в ie появляется строчка: ошибка на странице... в других браузерах не реагирует кнопка Цитата Ссылка на сообщение Поделиться на других сайтах
vovik_sumy 0 Опубликовано: 31 мая 2008 Рассказать Опубликовано: 31 мая 2008 Привет! А зачем так сложно? Не проще ли просто сделать два класса для комментов? И по счётчику $i проверять если он чётный, то менять класс комментариев. Цитата Ссылка на сообщение Поделиться на других сайтах
Greeze 0 Опубликовано: 31 мая 2008 Рассказать Опубликовано: 31 мая 2008 (изменено) легче сделать через js и чередовать названия классов. <div class="comment1"> комментарий </div> <div class="comment2"> комментарий </div> выводим через js скрипт <div class="comment{переменная скрипта}"> комментарий </div> Изменено 31 мая 2008 пользователем Greeze Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.