1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - новый и перспективный форумный движок от бывших создателей vBulletin.

1.3.0 Опрос

Тема в разделе "Модификации шаблонов", создана пользователем Георгий Шевченко, 9 июн 2014.

Загрузка
  1. Георгий Шевченко

    Георгий Шевченко Пользователь

    Регистрация:
    07.12.13
    Сообщения:
    44
    Симпатии:
    25
    Версия XF:
    1.4.7
    Описание:
    Показывает кто голосовал и сколько людей проголосовало. До того как вы проголосовали.

    Установка:

    - Идем в шаблон poll_block_vote

    - Ищем такой код
    Код:
    <ol class="pollOptions">
         <xen:foreach loop="$poll.responses" key="$pollResponseId" value="$response">
           <li class="pollOption"><label><xen:if is="{$poll.multiple}">
             <input type="checkbox" name="response_multiple[]" value="{$pollResponseId}" /><xen:else />
             <input type="radio" name="response" value="{$pollResponseId}" /></xen:if>
             {$response.response}</label></li>    
         </xen:foreach>
       </ol>
    
    - Заменяем на этот
    Код:
    <ol>
            <xen:foreach loop="$poll.responses" key="$pollResponseId" value="$response">
            <li class="pollOption">
                <ol class="pollResults">
            <li class="pollResult {xen:if $response.hasVoted, voted}">
                <xen:if is="{$response.hasVoted}">
                    <div class="votedIconCell" title="{xen:phrase your_vote}">*</div>
                <xen:else />
                    <div class="votedIconCell"></div>
                </xen:if>
                <h3 class="optionText" {xen:if $response.hasVoted, 'title="{xen:phrase your_vote}"'}>
                <xen:if is="{$poll.multiple}"><input type="checkbox" name="response_multiple[]" value="{$pollResponseId}" /><xen:else /><input type="radio" name="response" value="{$pollResponseId}" /></xen:if>
                    {$response.response}
                </h3>
                <div class="barCell">
                    <span class="barContainer">
                        <xen:if is="{$response.response_vote_count}"><span class="bar" style="width: {xen:calc "100 * {$response.response_vote_count} / {$poll.voter_count}"}%"></span></xen:if>
                    </span>
                </div>
                <div class="count">
                    <xen:if is="{$poll.public_votes} AND {$response.response_vote_count}">
                        <a href="{xen:link threads/poll/results, $thread, 'poll_response_id={$pollResponseId}'}" class="concealed OverlayTrigger">{xen:phrase x_votes, 'count={xen:number $response.response_vote_count}'}</a>
                    <xen:else />
                        {xen:phrase x_votes, 'count={xen:number $response.response_vote_count}'}
                    </xen:if>
                </div>
                <div class="percentage">
                    <xen:if is="{$poll.voter_count}">
                        {xen:number {xen:calc "100 * {$response.response_vote_count} / {$poll.voter_count}"}, 1}%
                    <xen:else />
                        {xen:number 0, 1}%
                    </xen:if>
                </div>
            </li>
        </ol>
        </li>               
        </xen:foreach>
        </ol>
    
    - Демонстрация

    Стандартный вид
    2014-06-09 12-03-06 Скриншот экрана.png

    После модификации
    2014-06-09 12-02-08 Скриншот экрана.png


    Что-бы убрать кнопку показать результаты:
    Ищем такой код и удаляем
    Код:
        <input type="button" value="{xen:phrase view_results}" class="button OverlayTrigger JsOnly" data-href="{xen:link threads/poll/results, $thread}" />
    
     
    Adm1n и Mirovinger нравится это.

Поделиться этой страницей