예제 #1
0
파일: frontend.php 프로젝트: 4uva4ek/svato
function polls()
{
    $model = new cms_model_polls();
    global $_LANG;
    $do = cmsCore::getInstance()->do;
    //========================================================================================================================//
    //========================================================================================================================//
    if ($do == 'view') {
        $answer = cmsCore::request('answer', 'str', '');
        $poll_id = cmsCore::request('poll_id', 'int');
        if (!$answer || !$poll_id) {
            if (cmsCore::isAjax()) {
                cmsCore::jsonOutput(array('error' => true, 'text' => $_LANG['SELECT_THE_OPTION']));
            } else {
                cmsCore::error404();
            }
        }
        $poll = $model->getPoll($poll_id);
        if (!$poll) {
            cmsCore::jsonOutput(array('error' => true, 'text' => ''));
        }
        if ($model->isUserVoted($poll_id)) {
            cmsCore::jsonOutput(array('error' => true, 'text' => ''));
        }
        if (!cmsUser::checkCsrfToken()) {
            cmsCore::halt();
        }
        $model->votePoll($poll, $answer);
        cmsCore::jsonOutput(array('error' => false, 'text' => $_LANG['VOTE_ACCEPTED']));
    }
}
예제 #2
0
파일: module.php 프로젝트: 4uva4ek/svato
function mod_polls($module_id, $cfg)
{
    cmsCore::loadModel('polls');
    $model = new cms_model_polls();
    if ($cfg['poll_id'] > 0) {
        $poll = $model->getPoll($cfg['poll_id']);
    } else {
        $poll = $model->getPoll(0, 'RAND()');
    }
    if (!$poll) {
        return false;
    }
    cmsPage::initTemplate('modules', 'mod_polls')->assign('poll', $poll)->assign('is_voted', $model->isUserVoted($poll['id']))->assign('module_id', $module_id)->assign('cfg', $cfg)->display('mod_polls.tpl');
    return true;
}