Показать сообщение отдельно
  #1 (permalink)  
Старый 02.04.2017, 13:28
Профессор
Отправить личное сообщение для Espey Посмотреть профиль Найти все сообщения от Espey
 
Регистрация: 03.03.2014
Сообщений: 230

Как вывести результаты голосования на странице голосования?
Как вывести результаты голосования на странице голосования? У меня результаты голосования показываются, только при нажатии на кнопку результаты. А мне нужно сделать, чтоб они показывались на странице голосования.

Есть файл default.php отвечающий за вывод модуля:

<?php
/*------------------------------------------------------------------------
# mod_sp_poll - Ajax poll module by JoomShaper.com
# ------------------------------------------------------------------------
# author    JoomShaper http://www.joomshaper.com
# Copyright (C) 2010 - 2016 JoomShaper.com. All Rights Reserved.
# License - http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
# Websites: http://www.joomshaper.com
-------------------------------------------------------------------------*/
defined ('_JEXEC') or die('resticted aceess');

?>

<div class="mod-sppoll <?php echo $moduleclass_sfx;?>">
    <?php if(isset($poll)) { ?>
        <strong><?php echo $poll->title; ?></strong>
        <?php $polls = json_decode($poll->polls); ?>
        <form class="form-sppoll" data-id="<?php echo $poll->sppolls_poll_id; ?>" data-module_id="<?php echo $module->id; ?>">
            <?php foreach ($polls as $key=>$value) {?>
            <div class="radio">
                <label>
                    <input type="radio" name="question" value="<?php echo $key; ?>" <?php echo ($key==0) ? 'checked': ''; ?>>
                    <?php echo $value->poll; ?>
                </label>
            </div>
            <?php } ?>
            <input type="submit" class="btn btn-default" value="<?php echo JText::_('MOD_SP_POLL_BUTTON_SUBMIT'); ?>">
            <input type="button" class="btn btn-success btn-poll-result" data-result_id="<?php echo $poll->sppolls_poll_id; ?>" value="<?php echo JText::_('MOD_SP_POLL_BUTTON_RESULT'); ?>">
        </form>
        <div class="sppoll-results"></div>
    <?php } else { ?>
        <p class="alert alert-warning"><?php echo JText::_('MOD_SP_POLL_NO_RECORDS'); ?></p>
    <?php } ?>
</div>


И есть JavaScript отвечающий за результаты голосования и голосование:

/*------------------------------------------------------------------------
# mod_sp_poll - Ajax poll module by JoomShaper.com
# ------------------------------------------------------------------------
# author    JoomShaper [url]http://www.joomshaper.com[/url]
# Copyright (C) 2010 - 2016 JoomShaper.com. All Rights Reserved.
# License - [url]http://www.gnu.org/licenses/gpl-2.0.html[/url] GNU/GPL
# Websites: [url]http://www.joomshaper.com[/url]
-------------------------------------------------------------------------*/

jQuery(function($) {
    $('.form-sppoll').on('submit', function(event) {
        event.preventDefault();
        var self = $(this);
        request = {
            'option'     : 'com_sppolls',
            'view'         : 'poll',
            'task'         : 'ajax',
            'id'         : self.data('id'),
            'vote'       : self.find('input[type="radio"]:checked').val(),
            'modid'        : self.data('module_id'),
            'format'     : 'json'
            };

        $.ajax({
            type   : 'POST',
            data   : request,
            success: function (response) {
                self.hide();
                self.parent().find('.sppoll-results').html(response);
            }
        });
    });

    $('.btn-poll-result').on('click', function(event) {
        event.preventDefault();
        var parent = $(this).parent();
        request = {
                'option'     : 'com_sppolls',
                'view'         : 'poll',
                'task'         : 'ajax',
                'id'         : $(this).data('result_id'),
                'modid'        : parent.data('module_id'),
                'subtask'    : 'result',
                'format'     : 'json'
            };

        $.ajax({
            type   : 'POST',
            data   : request,
            success: function (response) {
                parent.hide();
                parent.parent().find('.sppoll-results').html(response);
            }
        });
    });
});


Как сделать не знаю. Подскажите.
Ответить с цитированием