Красивый вид опроса для DLE
» Просмотров: 2708
» Дата: 31-12-2010, 19:36
» Автор: NeoMurderer
VOTE HACK BY ANDREJkE:- Выводим результаты опроса по убыванию
- Выделение ответа пользователя
- Если пользователь уже голосовал в опросе то выводятся результат (
+1 запрос БД)
УСТАНОВКА:Открываем файл
engine/ajax/vote.phpИщем (109-строка)
После добавляем:
$select = $body[$vote_check];
for ($i = 0; $i < sizeof( $body ); $i ++)
for ($j = sizeof( $body ) - 1; $j > $i; $j --)
if ( $answer[$j-1]['count'] < $answer[$j]['count'] ) {
$body_free = $body[$j-1]; $body[$j-1] = $body[$j]; $body[$j] = $body_free;
$answer_free = $answer[$j-1]['count']; $answer[$j-1]['count'] = $answer[$j]['count']; $answer[$j]['count'] = $answer_free;
}
Ищем:
$entry .= "<div class="vote" align="left">$body[$i] - $num ($proc%)</div>
<div class="vote" align="left">
<img src="{$config['http_home_url']}templates/{$vote_skin}/dleimages/poll{$pn}.gif" height="10" width="$proc%" style="border:1px solid black">
</div>n";
Заменяем на
if ($body[$i] != $select)
$entry .= "<div class="vote" align="left">$body[$i] - $num ($proc%)</div>
<div class="vote" align="left">
<img src="{$config['http_home_url']}templates/{$vote_skin}/dleimages/poll{$pn}.gif" height="10" width="$proc%" style="border:1px solid black">
</div>n";
else
$entry .= "<div class="vote" align="left"><b>$body[$i]</b> - $num ($proc%)</div>
<div class="vote" align="left">
<img src="{$config['http_home_url']}templates/{$vote_skin}/dleimages/poll{$pn}.gif" height="10" width="$proc%" style="border:1px solid black">
</div>n";
Ищем (174-строка)
После добавляем:
for ($i = 0; $i < sizeof( $body ); $i ++)
for ($j = sizeof( $body ) - 1; $j > $i; $j --)
if ( $answer[$j-1]['count'] < $answer[$j]['count'] ) {
$body_free = $body[$j-1]; $body[$j-1] = $body[$j]; $body[$j] = $body_free;
$answer_free = $answer[$j-1]['count']; $answer[$j-1]['count'] = $answer[$j]['count']; $answer[$j]['count'] = $answer_free;
}
открываем
файл engine/modules/vote.phpНаходим
$max = $vote_info[$rid]['vote_num'];
.....
$flag = 1;
Заменяем на
$_IP = $db->safesql( $_SERVER['REMOTE_ADDR'] );
if( isset( $member_id['name'] ) ) $nick = $member_id['name'];
else $nick = '';
if( $is_logged ) $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND name='$nick'" );
else $row = $db->super_query( "SELECT count(*) as count FROM " . PREFIX . "_vote_result WHERE vote_id='$rid' AND ip='$_IP'" );
if( $row['count'] == 0 ) $is_voted = false;
else { $is_voted = true; $flag = 1; }
if( $vote_action == "vote" ) {
$flag = 1;
Находим
Вставляем после:
for ($i = 0; $i < sizeof( $body ); $i ++)
for ($j = sizeof( $body ) - 1; $j > $i; $j --)
if ( $answer[$j-1]['count'] < $answer[$j]['count'] ) {
$body_free = $body[$j-1]; $body[$j-1] = $body[$j]; $body[$j] = $body_free;
$answer_free = $answer[$j-1]['count']; $answer[$j-1]['count'] = $answer[$j]['count']; $answer[$j]['count'] = $answer_free;
}
установка завершена..
Уважаемый посетитель, Вы зашли к нам на сайт как незарегистрированный пользователь. Мы рекомендуем Вам бесплатно
зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.