public function DebateVoteAction() { $debateModel = new DebateModel(); $request = Project::getRequest(); $user = Project::getUser()->getDbUser(); $isAdmin = $user->user_type_id == 1 ? true : false; $debateNow = $debateModel->getDebateNow(); if ($request->subject == 'theme') { // vote for theme. Etap 2 $theme = $debateModel->getThemeById($request->theme_id); $isVoted = $debateModel->getThemeVoteByUserId($user->id); if ($theme && !$isVoted) { $lastVoteId = $debateModel->addThemeVote($user->id, $request->theme_id); $this->returnVoteThemes($lastVoteId); } } elseif ($request->subject == 'debateUser') { $debate_user_id = $request->debate_user_id; $isVoted = $debateModel->isUserDebateVoted($user->id); if ($debate_user_id && !$isVoted && ($debateNow['user_id_1'] == $debate_user_id || $debateNow['user_id_2'] == $debate_user_id)) { $debateModel->addDebateVote($user->id, $debate_user_id); } } if ($request->isAjax) { // refresh All Chat's $this->DebateRefreshChat(); } else { //Project::getResponse()->redirect(Project::getRequest()->createUrl('Debate', 'Debate')); } }
function returnThemesVote($message) { $debateModel = new DebateModel(); $response = Project::getAjaxResponse(); $lastThemeId = $message['lastThemeId']; $aThemes = $debateModel->getAllThemes("debate_theme.votes DESC"); $isVoted = $debateModel->getThemeVoteByUserId($message['user_id']); $strTable = '<table class="stat-table questions"> <thead> <tr> <th class="main-row">Тема</th> <th>Предложил</th> <th>Голосов</th> <th>Действия</th> </tr> </thead> <tbody>'; $userModel = new UserModel(); foreach ($aThemes as $theme) { if ($message['user_id'] && !$isVoted && $message['user_id'] != $theme['user_id']) { $vote = '<i class="big-icon vote-en-icon"></i><a href="javascript: void(0);" onclick="vote_theme(' . $theme['debate_theme_id'] . ', \'theme\');">голосовать</a>'; } elseif ($message['user_id'] == $theme['user_id']) { $vote = '<span class="my-vote"><i class="big-icon vote-my-icon"></i>моя тема</span>'; } else { $vote = '<span><i class="big-icon vote-ds-icon"></i>голос принят</span>'; } $user_default_avatar = $userModel->getUserAvatar($theme['user_id']); $avator_path = $user_default_avatar['sys_av_id'] ? $user_default_avatar['sys_path'] : $user_default_avatar['path']; if (!$avator_path || $avator_path == 'no.png') { $avator_path = $this->image_url . 'avatar/no25.jpg'; } else { $avator_path = $this->image_url . 'avatar/' . $avator_path; } $strTable .= '<tr> <td class="qv"><a href="#">' . $theme['debate_theme_theme'] . '</a></td> <td class="av"><a class="avatar-link" href="' . Project::getRequest()->createUrl('User', 'Profile', null, $theme['login']) . '"><img src="' . $avator_path . '" alt="" class="avatar" style="width:25px;height:25px;" /><span class="t">' . $theme['login'] . '</span></a></td> <td class="an">' . (int) $theme['debate_theme_votes'] . '</td> <td class="act">' . $vote . '</td> </tr>'; } $strTable .= '</tbody> </table>'; $response->block('themeDivTable', true, $strTable); }