Michelangelo 0 Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 здраствуйте. теперь рейтинг для новостей можно выставлять и в короткой новости. мне бы хотелось вернуть старый вариант, отображение рейтинга в shortnews картинками и с невозможностью голосования. rating1.gif rating2.gif rating3.gif rating4.gif rating5.gif как реализовать это на 6.0? спасибо. Цитата Ссылка на сообщение Поделиться на других сайтах
Kaiser 2 Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 Да, задавал вопрос этот но никто не ответил. Поддерживаю вообщем данную тему, нужен старый рейтинг! Цитата Ссылка на сообщение Поделиться на других сайтах
IIya 0 Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 Вернее сказать что эта функция отключена во всех версиях после 5.5 Исправляем эту ошибку... Заходим в engine\modules\functions.php Находим: function ShortRating ($id, $rating, $vote_num, $allow = true){ global $config, $lang; if ($rating) $rating = round(($rating / $vote_num), 0); else $rating = 0; $rating = $rating * 17; if (!$allow) { $rated = <<<HTML <div class="rating" style="float:left;"> <ul class="unit-rating"> <li class="current-rating" style="width:{$rating}px;">{$rating}</li> </ul> </div> HTML; return $rated; } $rated = "<span id='ratig-layer-".$id."'>"; $rated .= <<<HTML <div class="rating" style="float:left;"> <ul class="unit-rating"> <li class="current-rating" style="width:{$rating}px;">{$rating}</li> <li><a href="#" title="{$lang['useless']}" class="r1-unit" onclick="dleRate('1', '{$id}'); return false;">1</a></li> <li><a href="#" title="{$lang['poor']}" class="r2-unit" onclick="dleRate('2', '{$id}'); return false;">2</a></li> <li><a href="#" title="{$lang['fair']}" class="r3-unit" onclick="dleRate('3', '{$id}'); return false;">3</a></li> <li><a href="#" title="{$lang['good']}" class="r4-unit" onclick="dleRate('4', '{$id}'); return false;">4</a></li> <li><a href="#" title="{$lang['excellent']}" class="r5-unit" onclick="dleRate('5', '{$id}'); return false;">5</a></li> </ul> </div> HTML; $rated .= "</span>"; return $rated; } И заменяем к ебням собачим эту ошибку программера вот этим: function ShortRating ($id, $rating, $vote_num){ global $config, $lang; if ($rating) $rating = round(($rating / $vote_num), 0); else $rating = 0; $rating = $rating * 17; $rated .= <<<HTML <div class="rating" style="float:left;"> <ul class="unit-rating"> <li class="current-rating" style="width:{$rating}px;">{$rating}</li> </ul> </div> HTML; return $rated; } Всё . Этого достаточно для корректной работы скрипта. Пользуйтесь. Не знаю почему целсофт сразу не сказал об этом. Мля, все мозги выеб, писец! Цитата Ссылка на сообщение Поделиться на других сайтах
Tong 0 Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 Kaiser, +1 Цитата Ссылка на сообщение Поделиться на других сайтах
Michelangelo 0 Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 Автор Ilya красавец а модуль тегов осилишь? нужна система тегов потипа как на news2.ru тут где-то рядом был топик, посмотри если не влом. зарплатой не обидем Цитата Ссылка на сообщение Поделиться на других сайтах
promol 0 Опубликовано: 7 июня 2007 Рассказать Опубликовано: 7 июня 2007 +1зарплатой не обидем Желательно автоматический) Цитата Ссылка на сообщение Поделиться на других сайтах
Reaktor 0 Опубликовано: 22 июня 2007 Рассказать Опубликовано: 22 июня 2007 IIya, Спасибо Цитата Ссылка на сообщение Поделиться на других сайтах
lifestar 18 Опубликовано: 23 июня 2007 Рассказать Опубликовано: 23 июня 2007 А покажите мне, пожалуйста новую систему рейтинга ,которая вам так не нравится Цитата Ссылка на сообщение Поделиться на других сайтах
kenpark 0 Опубликовано: 23 июня 2007 Рассказать Опубликовано: 23 июня 2007 (изменено) а по-моему что-то намудрили... вроде же не тяжело посмотреть старый код... в engine/modules/functions.php вот это function ShortRating ($id, $rating, $vote_num, $allow = true){ global $config, $lang; if ($rating) $rating = round(($rating / $vote_num), 0); else $rating = 0; $rating = $rating * 17; if (!$allow) { $rated = <<<HTML <div class="rating" style="float:left;"> <ul class="unit-rating"> <li class="current-rating" style="width:{$rating}px;">{$rating}</li> </ul> </div> HTML; return $rated; } $rated = "<span id='ratig-layer-".$id."'>"; $rated .= <<<HTML <div class="rating" style="float:left;"> <ul class="unit-rating"> <li class="current-rating" style="width:{$rating}px;">{$rating}</li> <li><a href="#" title="{$lang['useless']}" class="r1-unit" onclick="dleRate('1', '{$id}'); return false;">1</a></li> <li><a href="#" title="{$lang['poor']}" class="r2-unit" onclick="dleRate('2', '{$id}'); return false;">2</a></li> <li><a href="#" title="{$lang['fair']}" class="r3-unit" onclick="dleRate('3', '{$id}'); return false;">3</a></li> <li><a href="#" title="{$lang['good']}" class="r4-unit" onclick="dleRate('4', '{$id}'); return false;">4</a></li> <li><a href="#" title="{$lang['excellent']}" class="r5-unit" onclick="dleRate('5', '{$id}'); return false;">5</a></li> </ul> </div> HTML; $rated .= "</span>"; return $rated; } меняем на function ShortRating ($rating, $vote_num){ global $config, $lang; $rated = ""; $excellent = $lang['excellent']; $good = $lang['good']; $fair = $lang['fair']; $poor = $lang['poor']; $useless = $lang['useless']; if ($rating < 1){ $rated .= "<img src=\"".$config['http_home_url']."templates/{$config['skin']}/dleimages/rating0.gif\" border=\"0\" align=\"absmiddle\">\n"; } else { $rating = round(($rating / $vote_num), 0); if ($rating == 1) { $rated .= "<img src=\"".$config['http_home_url']."templates/{$config['skin']}/dleimages/rating1.gif\" border=\"0\" align=\"absmiddle\" alt=\"$lang[rated] $useless\">\n"; }elseif ($rating == 2) { $rated .= "<img src=\"".$config['http_home_url']."templates/{$config['skin']}/dleimages/rating2.gif\" border=\"0\" align=\"absmiddle\" alt=\"$lang[rated] $poor\">\n"; }elseif ($rating == 3) { $rated .= "<img src=\"".$config['http_home_url']."templates/{$config['skin']}/dleimages/rating3.gif\" border=\"0\" align=\"absmiddle\" alt=\"$lang[rated] $fair\">\n"; }elseif ($rating == 4) { $rated .= "<img src=\"".$config['http_home_url']."templates/{$config['skin']}/dleimages/rating4.gif\" border=\"0\" align=\"absmiddle\" alt=\"$lang[rated] $good\">\n"; }elseif ($rating == 5) { $rated .= "<img src=\"".$config['http_home_url']."templates/{$config['skin']}/dleimages/rating5.gif\" border=\"0\" align=\"absmiddle\" alt=\"$lang[rated] $excellent\">\n"; } } return $rated; } ну и в engine/modules/show.short.php & engine/modules/show.custom.php строчку $tpl->set('{rating}',ShortRating ($row['id'],$row['rating'], $row['vote_num'])); заменяем на $tpl->set('{rating}',ShortRating ($row['rating'], $row['vote_num'])); Изменено 23 июня 2007 пользователем kenpark Цитата Ссылка на сообщение Поделиться на других сайтах
Lancee 0 Опубликовано: 23 июня 2007 Рассказать Опубликовано: 23 июня 2007 kenpark пять баллов! Только ещё тоже самое в show.full.php надо проделать.... Один вопрос, в userinfo.tpl не отображается.... Что нужно подправить, что бы в инфо пользователя заработало?? Цитата Ссылка на сообщение Поделиться на других сайтах
kenpark 0 Опубликовано: 23 июня 2007 Рассказать Опубликовано: 23 июня 2007 в фулл_стори нужно же как-то голосовать, потому и не нужно менять а вот в профиле вроде отображается... Цитата Ссылка на сообщение Поделиться на других сайтах
Lancee 0 Опубликовано: 23 июня 2007 Рассказать Опубликовано: 23 июня 2007 тогда в фулл стори показываются точки в столбик с цифрами 1 2 3 4 5, и в инфе тоже столбик, в нем маленькая черная точка , во так Цитата Ссылка на сообщение Поделиться на других сайтах
kenpark 0 Опубликовано: 24 июня 2007 Рассказать Опубликовано: 24 июня 2007 ммм...может ты заменил не ту ф-цию?...у мну вроде все ок... Цитата Ссылка на сообщение Поделиться на других сайтах
Lancee 0 Опубликовано: 24 июня 2007 Рассказать Опубликовано: 24 июня 2007 (изменено) в том то и дело, что ту... а голосовать вообще нельзя в полной новости, хотя как вы сказали, поставил show.full.php прежнее значение. Заново поставил исходные файлы functions.php , и show.full.php Наблюдается такая картина при голосование в полной новости Изменено 24 июня 2007 пользователем Lancee Цитата Ссылка на сообщение Поделиться на других сайтах
kenpark 0 Опубликовано: 24 июня 2007 Рассказать Опубликовано: 24 июня 2007 эээ...шаблон случайно не для старых версий? без вишеназваных изменений вообще рейтинг работает? попробуй на чистом двиге такое проделать, у меня все работает! Цитата Ссылка на сообщение Поделиться на других сайтах
Lancee 0 Опубликовано: 24 июня 2007 Рассказать Опубликовано: 24 июня 2007 (изменено) без выше описанных действие тоже рейтинг не работал... такие же точки были... Шаблон модульный... Изменено 24 июня 2007 пользователем Lancee Цитата Ссылка на сообщение Поделиться на других сайтах
kenpark 0 Опубликовано: 24 июня 2007 Рассказать Опубликовано: 24 июня 2007 ааа)) правь тода css...на форуме были темы Цитата Ссылка на сообщение Поделиться на других сайтах
Lancee 0 Опубликовано: 25 июня 2007 Рассказать Опубликовано: 25 июня 2007 (изменено) Точно... kenpark который раз ты меня выручаешь! достаточно вспомнить об engine.css и заменить в нем рейтинг с такого .rating { background: #FFF; border: 1px solid #E0E0E0; color: #666666; font-family: Tahoma, helvetica, sans-serif; vertical-align: middle; font-size: 11px; vertical-align: middle; height:18px; } На такой .rating { color: #666666; font-family: Tahoma, helvetica, sans-serif; font-size: 11px; width: 85px; height: 16px; } .unit-rating{ list-style:none; margin: 0px; padding:0px; width: 85px; height: 16px; position: relative; background: url('../dleimages/rating.gif') top left repeat-x; } .unit-rating li{ text-indent: -90000px; padding:0px; margin:0px; float: left; } .unit-rating li a{ display:block; width:17px; height: 16px; text-decoration: none; text-indent: -9000px; z-index: 17; position: absolute; padding: 0px; } .unit-rating li a:hover{ background: url('../dleimages/rating.gif') left center; z-index: 2; left: 0px; } .unit-rating a.r1-unit{left: 0px;} .unit-rating a.r1-unit:hover{width:17px;} .unit-rating a.r2-unit{left:17px;} .unit-rating a.r2-unit:hover{width: 34px;} .unit-rating a.r3-unit{left: 34px;} .unit-rating a.r3-unit:hover{width: 51px;} .unit-rating a.r4-unit{left: 51px;} .unit-rating a.r4-unit:hover{width: 68px;} .unit-rating a.r5-unit{left: 68px;} .unit-rating a.r5-unit:hover{width: 85px;} .unit-rating li.current-rating{ background: url('../dleimages/rating.gif') left bottom; position: absolute; height: 16px; display: block; text-indent: -9000px; z-index: 1; } Изменено 25 июня 2007 пользователем Lancee Цитата Ссылка на сообщение Поделиться на других сайтах
Kaiser 2 Опубликовано: 2 июля 2007 Рассказать Опубликовано: 2 июля 2007 kenpark, Спасибо! Цитата Ссылка на сообщение Поделиться на других сайтах
Гость Опубликовано: 2 июля 2007 Рассказать Опубликовано: 2 июля 2007 <#thank#> Цитата Ссылка на сообщение Поделиться на других сайтах
ext 0 Опубликовано: 21 марта 2008 Рассказать Опубликовано: 21 марта 2008 помогите. стоит версия 6.7, делал, как прописал kenpark в engine/modules/functions.php заменил всё в точности. в engine/modules/show.short.php и engine/modules/show.custom.php не было таких строчек: $tpl->set('{rating}',ShortRating ($row['id'],$row['rating'], $row['vote_num'])); поэтому из похожих строчек: $tpl->set('{rating}',ShowRating ($$row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'])); и $tpl->set('{rating}',ShortRating ($row['id'],$row['rating'], $row['vote_num'], 1)); else $tpl->set('{rating}',ShortRating ($row['id'],$row['rating'], $row['vote_num'], 0)); убрал вот это: $row['id'], звёздочки появились! голосую.. голос засчитывается.. обновляю страницу и.. 0 голосов! все голоса пропали! как это исправить? помогите Цитата Ссылка на сообщение Поделиться на других сайтах
ext 0 Опубликовано: 2 апреля 2008 Рассказать Опубликовано: 2 апреля 2008 поможет кто? а то новую тему не позволяют создавать Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.