DLE движок для сайтов
Есть цветной рейтинг новости, в котором при голосовании исчезают стрелки(кнопки) и остается только обновленная цифра. function ShowRating($id, $rating, $vote_num, $allow = true) { global $is_logged, $member_id, $config, $lang, $db; if ($rating=='null'){$rating="Уже Голосовали!";}else{ if ($rating) $rating = round($rating, 0); else $rating = 0; if ($rating > 0) $rating = "<font color=green><b>+".$rating."</font></b>"; elseif ($rating == 0) $rating="<b>".$rating."</font></b>"; else $rating = "<font color=red><b>".$rating."</font></b>"; } if (!$allow) { $rated = <<<HTML <div id="ratig-layer">{$rating}</div> HTML; return $rated; } $rated .= <<<HTML <span id="ratig-layer-{$id}"> <div id="ratig-layer"> <img src="{THEME}/dleimages/up.gif" title="Нравится(+)" alt="Нравится(+)" class="r2-unit" onclick="doRate('1', '{$id}'); return false;" width="16" height="16" align="middle" /> </a> {$rating} <img src="{THEME}/dleimages/down.gif" title="Не нравится(-)" alt="Не нравится(-)" class="r2-unit" onclick="doRate('-1', '{$id}'); return false;" width="16" height="16" align="middle" /> </div> </span> HTML; return $rated; } Как сделать, чтобы стрелки(кнопки) не исчезали, а заменялись неактивными картинками стрелок(кнопок)? Еще странное происходит с цифрой она ниже картинок (стрелок) на пару пикселей и никак не получается обнаружить где же ее так курочит в css. После голосования все ок. Цифра на месте. Как оставить в короткой новости только итоговую цифру без стрелочек?function ShortRating($id, $rating, $vote_num, $allow = true) { global $config, $lang; if ($rating) $rating = round($rating, 0); else $rating = 0; if ($rating > 0) $rating = "<font color=green><b>+".$rating."</font></b>"; elseif ($rating == 0) $rating="<b>".$rating."</font></b>"; else $rating = "<font color=red><b>".$rating."</font></b>"; if (!$allow) { $rated = <<<HTML <div id="ratig-layer">{$rating}</div> HTML; return $rated; } $rated = "<span id="ratig-layer-" . $id . "">"; $rated .= <<<HTML <div id="ratig-layer"> <img src="{THEME}/dleimages/up.gif" title="Нравится(+)" alt="Нравится(+)" class="r2-unit" onclick="doRate('1', '{$id}'); return false;" width="16" height="16" align="middle" />{$rating} <img src="{THEME}/dleimages/down.gif" title="Не нравится(-)" alt="Не нравится(-)" class="r2-unit" onclick="doRate('-1', '{$id}'); return false;" width="16" height="16" align="middle" /> </div> HTML; $rated .= "</span>"; return $rated; } ---Найти функцию userrating($name) (должна быть сразу после вышеописанных кодов): ---Заменить ее на: s function userrating($name) { global $db; $row = $db->super_query("SELECT SUM(rating) as rating, SUM(vote_num) as num FROM " . PREFIX . "_post where autor ='$name'"); if ($row['num']) $rating = round(($row['rating'] / $row['num']), 0); else $rating = 0; $rating = $rating; $rated = <<<HTML {$rating} HTML; return $rated; } Пробовал сам удалить все лишнее, но видимо зацеплял что-то важное и вывод в короткой не срабатывал. Источник:dle-faq.pro, DLE
Источник: smartZone
Перейти на сайт
Другие материалы на сайте b.Z - Записки о гаджетах, людях и музыке