public function getNote() { $user = Request::get('user_id'); $post = Request::get('post_id'); $vote = Vote::where('user_id', $user)->where('post_id', $post)->first(); return $vote->note; }
public function userHasVoted() { $vote = Vote::where('user_id', '=', Auth::id())->where('meetup', '=', $this->id)->first(); if ($vote) { return true; } return false; }
public function vote_store($id) { $same = Vote::where('user_id', '=', $id)->where('login_id', '=', Auth::User()->id)->get(); //var_dump($same);die; if (count($same) != 0 and $same) { return Redirect::back(); } else { $votes = new Vote(); $data = Input::all(); $data['login_id'] = Auth::User()->id; $data['user_id'] = $id; $votes->create($data); return Redirect::intended('home'); } }
public function viewPhotos($id) { $album = Album::find($id); if ($album === null) { $error = 'Invalid album.'; return View::make('errors.error', array('errorMsg' => $error)); } if (Auth::user()) { $isVoted = sizeof(Vote::where('album_id', '=', $album->id)->where('voter_id', '=', Auth::user()->id)->get()) !== 0; # code... } else { $isVoted = true; } $comments = Comment::where('album_id', '=', $album->id)->with('author')->get(); return View::make('albums.viewPhotos', array('photos' => $album->photos()->get(), 'comments' => $comments, 'albumId' => $album->id, 'isVoted' => $isVoted)); }
/** * Display a listing of the resource. * * @return Response */ public function index() { $users = User::where('id', '!=', Auth::id())->where('priviledge', '!=', 'superuser')->get(); if (Auth::user()->priviledge != 'superuser') { $weights = Vote::where('user_id', '=', Auth::id())->sum('performance'); $sum = $weights; } //echo "<pre>"; //var_dump($users);die; foreach ($users as $key => $value) { $path[$key] = file::where('user_id', '=', $value['id'])->pluck('path'); //echo "<pre>"; //var_dump($path);die; } return View::make('votes.home', compact(Auth::user()->user_name, 'users', 'sum', 'path')); }
public function dislikePost() { $id = Input::get('id'); $dislikeVote = Vote::where('type', 'dislike')->where('user_id', Auth::id())->where('post_id', $id)->first(); if (!$dislikeVote) { $oppositeVote = Vote::where('type', 'like')->where('user_id', Auth::id())->where('post_id', $id)->first(); if (!empty($oppositeVote)) { $oppositeVote->delete(); } $vote = new Vote(); $vote->user_id = Auth::id(); $vote->post_id = $id; $vote->type = 'dislike'; $vote->save(); } $totalLikeVote = Vote::where('type', 'like')->where('post_id', $id)->count(); $totalDislikeVote = Vote::where('type', 'dislike')->where('post_id', $id)->count(); $result = array($totalLikeVote, $totalDislikeVote); return Response::json($result); }
public function voteDownQuestion($qid) { $dbCheck = Vote::where('user_id', '=', Auth::user()->user_id)->where('question_id', '=', $qid)->first(); if ($dbCheck) { return Redirect::route('single-question', $qid)->with('global', 'Sorry, you Previously vote this question'); } else { $vote = new Vote(); $vote->user_id = Auth::user()->user_id; $vote->question_id = $qid; $vote->vote = 0; $vote->save(); /*Insert point to the Vote user*/ $insertPoint = User::find(Auth::user()->user_id); $insertPoint->points = $insertPoint->points - 1; $insertPoint->save(); /*Insert point to the Question user*/ $questionuser = Question::where('id', '=', $qid)->first(); $insertPoint = User::find($questionuser->user_id); $insertPoint->points = $insertPoint->points - 2; $insertPoint->save(); return Redirect::route('single-question', $qid)->with('global', 'Your Successfully vote down this question'); } }
/** * Show the form for creating a new resource. * * @return Response */ public function create() { if (!Auth::guest()) { $user = User::where('priviledge', '!=', 'superuser')->get(); $user_designation = Designation::where('id', '=', Auth::user()->id)->pluck('designation'); $user_votes = Vote::where('user_id', '=', Auth::user()->id)->get(); $count = count($user_votes); $i = 0; foreach ($user_votes as $user_vote) { $user_name[$i] = user::where('id', '=', $user_vote->login_id)->pluck('user_name'); $i++; } //var_dump($user_name);die; $weights = Vote::where('user_id', '=', Auth::id())->sum('performance'); $sum = $weights; $name = priviledge::where('user_id', '=', Auth::user()->id)->pluck('name_show'); $path = file::where('user_id', '=', Auth::user()->id)->pluck('path'); $authority = Priviledge::all(); return View::make('votes.profile', compact('authority', 'path', 'user_designation', 'user_votes', 'sum', 'user', 'name', 'user_name')); } else { return Redirect::intended('login'); } }
public static function action_vote($id = null) { if (!$id) { if ($_SERVER['REQUEST_METHOD'] !== 'POST') { return Response::error(404); } else { $id = (int) Param::post('id'); $answers = Param::post('answers'); $poll = Poll::get($id); $poll->various_answers = '0' != $poll->various_answers; $cookiename = 'p_' . $poll->id . '_v'; // Si no hay respuestas o hay más de una respuesta if (count($answers) === 0 || !$poll->various_answers && count($answers) > 1) { Redirect::to(Url::get('vote', $id, 'vote_error=true')); } if (Vote::where('voter_ip', '=', CURRENT_USER_IP)->and_where('poll_id', '=', $id)->first() || Cookie::get($cookiename)) { Cookie::set($cookiename, !$poll->various_answers ? (string) $answers[0] : 'true', 360); Redirect::to(Url::get('view', $poll->slug, 'poll_already_voted=true')); } Cookie::set($cookiename, !$poll->various_answers ? (string) $answers[0] : 'true', 360); Vote::create(array('voter_ip' => CURRENT_USER_IP, 'poll_id' => $id, 'answer_id' => !$poll->various_answers ? $answers[0] : 0)); foreach ($answers as $answer_id) { Answer::find($answer_id)->set(array('nofilter:votes' => '`votes` + 1')); } Poll::find($id)->set(array('nofilter:total_votes' => '`total_votes` + 1')); Redirect::to(Url::get('view', $poll->slug, 'voted=true')); } } elseif (!is_numeric($id)) { return Response::error(404); } $id = intval($id, 10); if (!($poll = Poll::get($id))) { return Response::error(404); } $answers = Answer::where('poll_id', '=', $poll->id)->get(); return View::make('vote')->add_var('poll', $poll)->add_var('answers', $answers); }
function vote($obj) { $btn1 = 'default'; $disabled1 = ''; $btn2 = 'default'; $disabled2 = ''; $obj_id = '$' . strtolower($obj)->id; if (Auth::check()) { $user_id = Auth::user()->id; $vote = Vote::where('user_id', $user_id)->where('obj_id', $obj_id)->where('obj', $obj)->first(); if ($vote) { if ($vote->vote == 1) { $btn1 = 'success'; $disabled2 = 'disabled="disabled"'; } elseif ($vote->vote == -1) { $btn2 = 'danger'; $disabled1 = 'disabled="disabled"'; } } } ?> <div class="btn-group" id="vote-btn"> <button class="btn btn-{{ $btn1 }}" id="voteUp" {{ $disabled1 }}> <i class="fa fa-thumbs-o-up"></i> </button> <button class="btn btn-{{ $btn2 }}" id="voteDown" {{ $disabled2 }}> <i class="fa fa-thumbs-o-down"></i> </button> </div> <?php }
public function doVoting() { if (Auth::guest()) { echo json_encode(array('status' => 'error', 'message' => Lang::get('texts.request_login'))); exit; } $user = Confide::user(); $user_id = $user->id; $coinvote_id = $_POST['coinvote_id']; $user_vote = Vote::where('user_id', $user_id)->where('coinvote_id', $coinvote_id)->first(); if (isset($user_vote->user_id)) { echo json_encode(array('status' => 'error', 'message' => Lang::get('texts.you_voted'))); exit; } else { /*$trade = Trade::where('seller_id',$user_id)->orwhere('buyer_id',$user_id)->first(); if(!isset($trade->id)){ echo json_encode(array('status'=>'error','message'=> Lang::get('texts.must_have_trade'))); exit; }*/ $date = date("Y-m-d"); $times_vote = Vote::where('created_at', '>=', $date)->where('user_id', $user_id)->orderby('created_at', 'desc')->get()->toArray(); $count = count($times_vote); if ($count > 5) { echo json_encode(array('status' => 'error', 'message' => Lang::get('texts.over_perday'), 'count' => $count, 'times_vote' => $times_vote)); exit; } else { $vote = new Vote(); //Vote::insert(); $vote->coinvote_id = $coinvote_id; $vote->user_id = $user_id; $vote->save(); echo json_encode(array('status' => 'success', 'message' => Lang::get('texts.vote_success'), 'count' => $count, 'times_vote' => $times_vote, 'vote_id' => $vote->id)); exit; } } }
public function votes() { return Vote::where('post_id', $this->id); }
function starSkin($id) { $skin = Skin::find($id); $star = Vote::firstOrNew(array("user_id" => Auth::user()->id, "skin_id" => $id)); $userstar = Vote::where("user_id", Auth::user()->id)->where("skin_id", $id)->first(); if (isset($userstar)) { $userstar->delete(); $skin->votes -= 1; } else { $skin->votes += 1; $star->save(); } $skin->save(); return Response::json("success"); }
private function vote_null($id, $obj, $action) { if (Auth::check()) { $user_id = Auth::user()->id; $vote = Vote::where('user_id', $user_id)->where('obj_id', $id)->where('obj', $obj)->first()->delete(); $obj = $obj::find($id); if ($action == 'up') { $obj->vote_up -= 1; } elseif ($action == 'down') { $obj->vote_down += 1; } $obj->save(); $arr = []; $arr['vote_up'] = $obj->vote_up; $arr['vote_down'] = $obj->vote_down; return $arr; } }
public function redo($id) { $accounts = Account::where('vote_id', '=', $id)->get(); $votes = Vote::where('id', '=', $id)->get(); $school_no = $votes[0]->school_no; $vote_amount = $votes[0]->vote_amount; $redo = 1; $data = [$accounts, $school_no, $vote_amount, $redo]; $vote_data = [$id, $vote_amount]; //$redo = 1; //echo "id",$votes[0]->$id,"amount",$votes[0]->vote_amount; Session::put('vote_id', $id); Session::put('vote_data', $vote_data); Session::put('redo', 1); }
public static function userVoteCount($uid) { $qCount = Vote::where('user_id', '=', $uid); return $qCount->count(); }
public static function vote($obj, $obj_id, $vote_up, $vote_down) { $btn1 = 'default'; $disabled1 = ''; $btn2 = 'default'; $disabled2 = ''; if (Auth::check()) { $user_id = Auth::user()->id; $vote = Vote::where('user_id', $user_id)->where('obj_id', $obj_id)->where('obj', $obj)->first(); if ($vote) { if ($vote->vote == 1) { $btn1 = 'success'; $disabled2 = 'disabled="disabled"'; } elseif ($vote->vote == -1) { $btn2 = 'danger'; $disabled1 = 'disabled="disabled"'; } } } ?> <div class="btn-group btn-group-lg" id="vote-btn"> <button class="btn btn-<?php echo $btn1; ?> " id="voteUp" <?php echo $disabled1; ?> > <i class="fa fa-thumbs-o-up fa-lg"></i> <small> <span class="vote-num" id="vote-up-num"> <?php echo $vote_up != 0 ? $vote_up : ''; ?> </span> </small> </button> <button class="btn btn-<?php echo $btn2; ?> " id="voteDown" <?php echo $disabled2; ?> > <i class="fa fa-thumbs-o-down fa-lg"></i> <small> <span class="vote-num" id="vote-down-num"> <?php echo $vote_down != 0 ? $vote_down : ''; ?> </span> </small> </button> </div> <?php }
public function ajaxGetNextPage($type, $page) { $skip = $page * 12; switch ($type) { case 'fresh': $images = Post::orderBy('created_at', 'desc'); break; case 'mine': $images = Post::where('user_id', Auth::id())->orderBy('created_at', 'desc'); break; case 'trending': $images = Post::select('posts.*', DB::raw('count(votes.id) as total'))->leftJoin('votes', 'posts.id', '=', 'votes.post_id')->groupBy('posts.id')->orderBy('total', 'desc'); break; default: $userid = explode('_', $type); $userid = $userid[1]; $images = Post::where('user_id', $userid)->orderBy('created_at', 'desc'); break; } if (Auth::user()) { $images = $images->with(array('votes' => function ($query) { $query->where('user_id', Auth::id()); })); } $images = $images->skip($skip)->take(12)->get(); $result = ''; if ($images->count() > 0) { foreach ($images as $img) { if (isset($img->votes)) { if (!empty($img->votes->first()) && $img->votes->first()->type == "like") { $classlike = 'activeAct like'; } else { $classlike = 'like'; } if (!empty($img->votes->first()) && $img->votes->first()->type == 'dislike') { $classdislike = 'activeAct dislike'; } else { $classdislike = 'dislike'; } $buttons = '<a href="#" class="' . $classlike . '" data-id="' . $img->id . '"><i class="fa fa-thumbs-up"></i></a> <a href="#" class="' . $classdislike . '" data-id="' . $img->id . '"><i class="fa fa-thumbs-down"></i></a>'; } else { $buttons = '<a class="disabledlike" data-toggle="modal" data-target="#modalSignin"><i class="fa fa-thumbs-up"></i></a> <a class="disabledlike" data-toggle="modal" data-target="#modalSignin"><i class="fa fa-thumbs-down"></i></a>'; } $attack = Comment::where('post_id', $img->id)->where('type', 'attack')->count(); $assist = Comment::where('post_id', $img->id)->where('type', 'assist')->count(); $defense = Comment::where('post_id', $img->id)->where('type', 'defense')->count(); $result = $result . '<div class="col-sm-12"> <a href="' . url('post/' . $img->slug) . '"><h3 class="text-left mtm0">' . str_limit($img->title, $limit = 50, $end = '...') . '</h3></a> <div class="imageBox"> <a href="' . url('post/' . $img->slug) . '"><img src="' . url('imgpost/' . $img->user_id . '/' . $img->image) . '" alt="' . $img->title . '" title="' . $img->title . '"></a> </div><!-- imageBox --> <div class="row infoBarTrend mt10 text-left"> <div class="leftBarTrend pull-left col-sm-7 col-xs-12"> <p class="inlineB">' . Vote::where('post_id', $img->id)->where('type', 'like')->count() . ' likes</p> <p class="inlineB ml10">' . Vote::where('post_id', $img->id)->where('type', 'dislike')->count() . ' dislikes</p> <p class="inlineB ml10">' . Comment::where('post_id', $img->id)->count() . ' comments</p> <div class="actionRow"> ' . $buttons . ' <a href="' . url('post/' . $img->slug) . '"><i class="fa fa-comment"></i></a> </div><!-- actionRow --> </div><!-- leftBarTrend --> <div class="rightBarTrend pull-right col-sm-5 col-xs-12"> <p><img src="' . asset('images/icon_attack.jpg') . '" alt="icon_attack"><span class="clrGrey"> Attack: </span><span> ' . $attack . ' </span> points</p> <p><img src="' . asset('images/icon_defense.jpg') . '" alt="icon_defense"><span class="clrGrey"> Defense: </span><span> ' . $assist . ' </span> points</p> <p><img src="' . asset('images/icon_assist.jpg') . '" alt="icon_assist"><span class="clrGrey"> Assist: </span><span> ' . $defense . ' </span> points</p> </div><!-- rightBarTrend --> </div><!-- infoBarTrend --> </div>'; } $nextpage = $page + 1; $result = $result . '<div class="col-sm-12 mt30 mb40"><a href="' . url('next/' . $type . '/' . $nextpage) . '" class="btn btn-default">Load More</a></div>'; } return $result; }
<?php $poll->total_votes = intval($poll->total_votes, 10); $voted_answer = Cookie::get('p_' . $poll->id . '_v'); if (!$voted_answer) { $vote = Vote::where('voter_ip', '=', CURRENT_USER_IP)->and_where('poll_id', '=', (int) $poll->id)->first(); if ($vote) { $voted_answer = $vote->answer_id; } unset($vote); } if (Param::get('poll_already_voted') == 'true') { ?> <div class="message message--error"> Ya has votado esta encuesta en otra ocasión </div> <?php } if (Param::get('vote_error') == 'true') { ?> <div class="message message--error"> Ha habido un error con tu voto: ¿Seguro que has escogido alguna respuesta? </div> <?php } if (Param::get('voted') == 'true') { ?> <div class="message message--success"> Hey! Tu voto ha sido registrado correctamente. </div> <?php
public function routePage($page = '', $pager_page = '') { $markets = Market::where('active', 1)->get(); $market_wallet = array(); foreach ($markets as $market) { $market_wallet[$market->id] = $market->getWalletType($market->id); } $data['markets'] = $market_wallet; switch ($page) { case 'fee': $data['fee_trades'] = FeeTrade::leftJoin('market', 'fee_trade.market_id', '=', 'market.id')->leftJoin('wallets', 'market.wallet_from', '=', 'wallets.id')->select('fee_trade.*', 'market.wallet_from', 'wallets.name', 'wallets.type')->orderby('wallets.name', 'asc')->get(); //echo "<pre>fee_trades: "; print_r($fee_trades); echo "</pre>"; //echo "<pre>markets: "; print_r($markets); echo "</pre>";exit; return View::make('admin.setting_fee', $data); break; case 'fee-withdraw': $data['fee_withdraws'] = FeeWithdraw::leftjoin('wallets', 'fee_withdraw.wallet_id', '=', 'wallets.id')->select('fee_withdraw.*', 'wallets.type', 'wallets.name')->orderby('wallets.type')->get(); return View::make('admin.setting_fee_withdraw', $data); break; case 'limit-trade': $record_per_page = 15; $total = WalletLimitTrade::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $data['wallets'] = Wallet::orderby('type')->get(); $data['limit_trades'] = WalletLimitTrade::leftjoin('wallets', 'wallet_limittrade.wallet_id', '=', 'wallets.id')->select('wallet_limittrade.*', 'wallets.type as wallet_type', 'wallets.name as wallet_name')->skip($offset_start)->take($record_per_page)->orderby('wallet_type')->get(); return View::make('admin.limittrade.setting_limittrade', $data); break; //add newbie //add newbie case 'time-limit-trade': $record_per_page = 15; $total = WalletTimeLimitTrade::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $data['wallets'] = Wallet::orderby('type')->get(); $data['limit_trades'] = WalletTimeLimitTrade::leftjoin('wallets', 'wallet_timelimittrade.wallet_id', '=', 'wallets.id')->select('wallet_timelimittrade.*', 'wallets.type as wallet_type', 'wallets.name as wallet_name')->skip($offset_start)->take($record_per_page)->orderby('wallet_type')->get(); return View::make('admin.limittrade.setting_timelimittrade', $data); break; case 'statistic-coin-exchanged': $select = "SELECT mk.wallet_from, mk.wallet_to, sum(amount) as total_amount from trade_history a left join market mk on a.market_id=mk.id"; $select_maincoin = "SELECT mk.wallet_from, mk.wallet_to, sum(amount*price) as total_amount from trade_history a left join market mk on a.market_id=mk.id"; $where = ''; if (isset($_GET['filter_time']) && $_GET['filter_time'] != '') { switch ($_GET['filter_time']) { case 'hourly': $hourly = date('Y-m-d H:i:s', strtotime('-1 hour')); $where = $where == '' ? " Where a.created_at>='" . $hourly . "'" : $where . " Where a.created_at>='" . $hourly . "'"; break; case 'daily': $daily = date('Y-m-d H:i:s', strtotime('-24 hour')); $where = $where == '' ? " Where a.created_at>='" . $daily . "'" : $where . " Where a.created_at>='" . $daily . "'"; break; case 'weekly': $thisweek = date('Y-m-d', strtotime('-7 day')); $where = $where == '' ? " Where a.created_at>='" . $thisweek . "'" : $where . " Where a.created_at>='" . $thisweek . "'"; break; case 'monthly': $thismonth = date('Y-m-1', strtotime('-1 month')); $where = $where == '' ? " Where a.created_at>='" . $thismonth . "'" : $where . " Where a.created_at>='" . $thismonth . "'"; break; } } $select .= " " . $where . " group by mk.wallet_from"; $coins_exchanged = DB::select($select); $data['coins_exchanged'] = $coins_exchanged; $select_maincoin .= " " . $where . " group by mk.wallet_to"; $maincoins_exchanged = DB::select($select_maincoin); $data['maincoins_exchanged'] = $maincoins_exchanged; // echo "<pre>"; print_r($fees); echo "</pre>"; $wallets_temp = Wallet::get(); $wallets = array(); foreach ($wallets_temp as $wallet) { $wallets[$wallet->id] = $wallet; } $data['wallets'] = $wallets; return View::make('admin.statistics.statistic_coin_exchanged', $data); break; case 'statistic-fees': $select = "SELECT mk.wallet_from, mk.wallet_to, sum(fee_sell) as fee_sell, sum(fee_buy) as fee_buy from trade_history a left join market mk on a.market_id=mk.id"; $where = ''; if (isset($_GET['filter_time']) && $_GET['filter_time'] != '') { switch ($_GET['filter_time']) { case 'hourly': $hourly = date('Y-m-d H:i:s', strtotime('-1 hour')); $where = $where == '' ? " Where a.created_at>='" . $hourly . "'" : $where . " Where a.created_at>='" . $hourly . "'"; break; case 'daily': $daily = date('Y-m-d H:i:s', strtotime('-24 hour')); $where = $where == '' ? " Where a.created_at>='" . $daily . "'" : $where . " Where a.created_at>='" . $daily . "'"; break; case 'weekly': $thisweek = date('Y-m-d', strtotime('-7 day')); $where = $where == '' ? " Where a.created_at>='" . $thisweek . "'" : $where . " Where a.created_at>='" . $thisweek . "'"; break; case 'monthly': $thismonth = date('Y-m-1', strtotime('-1 month')); $where = $where == '' ? " Where a.created_at>='" . $thismonth . "'" : $where . " Where a.created_at>='" . $thismonth . "'"; break; } } $select .= " " . $where . " group by a.market_id order by `created_at` desc"; $fees = DB::select($select); $data['fees'] = $fees; // echo "<pre>"; print_r($fees); echo "</pre>"; $wallets_temp = Wallet::get(); $wallets = array(); foreach ($wallets_temp as $wallet) { $wallets[$wallet->id] = $wallet; } $data['wallets'] = $wallets; return View::make('admin.statistics.statistic_fees', $data); break; case 'statistic-fee-withdraw': $select = "SELECT w.type, w.name, sum(fee_amount) as total_fee from withdraws a left join wallets w on a.wallet_id=w.id"; $where = ''; if (isset($_GET['filter_time']) && $_GET['filter_time'] != '') { switch ($_GET['filter_time']) { case 'hourly': $hourly = date('Y-m-d H:i:s', strtotime('-1 hour')); $where = $where == '' ? " Where a.created_at>='" . $hourly . "'" : $where . " Where a.created_at>='" . $hourly . "'"; break; case 'daily': $daily = date('Y-m-d H:i:s', strtotime('-24 hour')); $where = $where == '' ? " Where a.created_at>='" . $daily . "'" : $where . " Where a.created_at>='" . $daily . "'"; break; case 'weekly': $thisweek = date('Y-m-d', strtotime('-7 day')); $where = $where == '' ? " Where a.created_at>='" . $thisweek . "'" : $where . " Where a.created_at>='" . $thisweek . "'"; break; case 'monthly': $thismonth = date('Y-m-1', strtotime('-1 month')); $where = $where == '' ? " Where a.created_at>='" . $thismonth . "'" : $where . " Where a.created_at>='" . $thismonth . "'"; break; } } $select .= " " . $where . " group by a.wallet_id"; $withdraw_fees = DB::select($select); $data['withdraw_fees'] = $withdraw_fees; return View::make('admin.statistics.statistic_fee_withdraw', $data); break; case 'add-page': $data['type'] = 'page'; return View::make('admin.pages.add_post', $data); break; case 'add-news': $data['type'] = 'news'; return View::make('admin.pages.add_post', $data); break; case 'all-page': $data['type'] = 'page'; $record_per_page = 15; $total = Post::where('type', $data['type'])->count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $posts = Post::where('type', $data['type'])->skip($offset_start)->take($record_per_page)->get(); $data['posts'] = $posts; return View::make('admin.pages.all_posts', $data); break; case 'all-news': $data['type'] = 'news'; $record_per_page = 15; $total = Post::where('type', $data['type'])->count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $posts = Post::where('type', $data['type'])->skip($offset_start)->take($record_per_page)->get(); $data['posts'] = $posts; return View::make('admin.pages.all_posts', $data); break; case 'users': $record_per_page = 15; $total_users = User::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total_users / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; //$offset_end = ($pager_page*$record_per_page)-1; $users = User::skip($offset_start)->take($record_per_page)->get()->toArray(); foreach ($users as $key => $value) { $user = USer::find($value['id']); $users[$key]['roles'] = $user->roles->toArray(); //echo "<pre>roles:"; print_r($user->roles->toArray()); echo "</pre>"; } //echo "<pre>"; print_r($users); echo "</pre>"; $roles = Role::get(); $data['users'] = $users; $data['roles'] = $roles; return View::make('admin.user.manage_users', $data); break; case 'orders': $record_per_page = 15; if ($pager_page == '') { $pager_page = 1; } $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; //$offset_end = ($pager_page*$record_per_page)-1; $select = "select a.*, b.wallet_from as `from`, b.wallet_to as `to`, c.username from orders a left join market b on a.market_id=b.id left join users c on a.user_id=c.id"; $select_count = "select count(*) as total from orders a"; $where = ''; if (isset($_GET['do_filter'])) { if ($where == '') { if (!empty($_GET['market'])) { $where = $where == '' ? " Where a.market_id='" . $_GET['market'] . "'" : $where . " AND a.market_id='" . $_GET['market'] . "'"; } } if ($_GET['status'] != '') { $where = $where == '' ? " Where a.status='" . $_GET['status'] . "'" : $where . " AND a.status='" . $_GET['status'] . "'"; } if ($_GET['type'] != '') { $where = $where == '' ? " Where a.type='" . $_GET['type'] . "'" : $where . " AND a.type='" . $_GET['type'] . "'"; } } $select_count = $select_count . " " . $where . " order by `created_at` desc"; $total_records = DB::select($select_count); //echo "<pre>total_records: "; print_r($total_records); echo "</pre>"; exit; $data['total_pages'] = ceil($total_records[0]->total / $record_per_page); $select .= " " . $where . " order by `created_at` desc limit " . $offset_start . "," . $record_per_page; $ordershistory = DB::select($select); $data['ordershistories'] = $ordershistory; return View::make('admin.orders', $data); break; case 'trade-histories': $record_per_page = 15; if ($pager_page == '') { $pager_page = 1; } $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $select = "select a.*, b.wallet_from as `from`, b.wallet_to as `to`,c.username as seller, d.username as buyer from trade_history a left join market b on a.market_id=b.id left join users c on a.seller_id=c.id left join users d on a.buyer_id=d.id"; $select_count = "select count(*) as total from trade_history a"; $where = ''; if (isset($_GET['do_filter'])) { if ($where == '') { if (!empty($_GET['market'])) { $where = $where == '' ? " Where a.market_id='" . $_GET['market'] . "'" : $where . " AND a.market_id='" . $_GET['market'] . "'"; } } if ($_GET['type'] != '') { $where = $where == '' ? " Where a.type='" . $_GET['type'] . "'" : $where . " AND a.type='" . $_GET['type'] . "'"; } if ($_GET['time'] != '') { switch ($_GET['time']) { case 'today': $where = $where == '' ? " Where a.created_at>='" . date("Y-m-d") . "'" : $where . " Where a.created_at>='" . date("Y-m-d") . "'"; break; case 'thisweek': $thisweek = date('Y-m-d', strtotime('this week')); $where = $where == '' ? " Where a.created_at>='" . $thisweek . "'" : $where . " Where a.created_at>='" . $thisweek . "'"; break; case 'thismonth': $thismonth = date('Y-m-1', strtotime('this month')); $where = $where == '' ? " Where a.created_at>='" . $thismonth . "'" : $where . " Where a.created_at>='" . $thismonth . "'"; break; } } } $select_count = $select_count . " " . $where . " order by `created_at` desc"; $total_records = DB::select($select_count); //echo "<pre>total_records: "; print_r($total_records); echo "</pre>"; exit; $data['total_pages'] = ceil($total_records[0]->total / $record_per_page); $select .= " " . $where . " order by `created_at` desc limit " . $offset_start . "," . $record_per_page; $trades = DB::select($select); $data['tradehistories'] = $trades; return View::make('admin.trade_histories', $data); break; case 'coins-voting': $coinvotes = DB::table('coin_votes')->get(); $wallet = Wallet::where('type', 'BTC')->first(); if (isset($wallet->id)) { try { $wallet->connectJsonRPCclient($wallet->wallet_username, $wallet->wallet_password, $wallet->wallet_ip, $wallet->port); foreach ($coinvotes as $key => $value) { $num_vote = Vote::where('coinvote_id', '=', $value->id)->count(); //echo "<pre>getreceivedbyaccount"; print_r($wallet->getReceivedByAddress($value->btc_address)); echo "</pre>";//$value->label_address $btc_payment = $wallet->getReceivedByAddress($value->btc_address); //'12X9jVe4S8pAqJ7EoKN7B4YwMQpzfgArtX' $num_payment = floor($btc_payment / 0.0001); //echo "btc_payment: ".$btc_payment; //echo "<br>num_payment: ".$num_payment; $coinvotes[$key]->balance = $num_payment; $coinvotes[$key]->num_vote = $num_vote + $num_payment; } } catch (Exception $e) { $data['error_message'] = "Not connect to this"; //'Caught exception: '.$e->getMessage()."\n"; // } //echo "<pre>coinvotes"; print_r($coinvotes); echo "</pre>"; $data['coinvotes'] = $coinvotes; } else { $data['not_wallet'] = "Please add BTC wallet before add the vote coin."; } return View::make('admin.coins_voting', $data); break; case 'funds': $wallets = Wallet::leftjoin('fee_withdraw', 'fee_withdraw.wallet_id', '=', 'wallets.id')->orderby('type')->get(); $balances = array(); $fee_withdraws = array(); foreach ($wallets as $wallet) { try { $wallet->connectJsonRPCclient($wallet->wallet_username, $wallet->wallet_password, $wallet->wallet_ip, $wallet->port); $balances[$wallet->id] = $wallet->getBalance(); $fee_withdraws[$wallet->id] = $wallet->getTxFee(); UserAddressDeposit::insert(array('user_id' => $user->id, 'wallet_id' => $wallet->id, 'addr_deposit' => $address)); } catch (Exception $e) { $data['error_message'] = 'Caught exception: ' . $e->getMessage() . "\n"; //"Not connect to this wallet";//'Caught exception: '.$e->getMessage()."\n"; } } $data['wallets'] = $wallets; $data['balances'] = $balances; $data['fee_withdraws'] = $fee_withdraws; //echo "<pre>fee_withdraws"; print_r($fee_withdraws); echo "</pre>"; return View::make('admin.funds', $data); break; case 'withdraws-queue': $record_per_page = 20; if ($pager_page == '') { $pager_page = 1; } $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; if (isset($_GET['do_filter'])) { $withdraws = Withdraw::leftjoin('users', 'users.id', '=', 'withdraws.user_id'); if ($_GET['wallet_id'] != '') { $withdraws->where('wallet_id', $_GET['wallet_id']); } if ($_GET['status'] != '') { $withdraws->where('status', $_GET['status']); } if ($_GET['username'] != '') { $withdraws->where('users.username', $_GET['username']); } $withdraws->select('withdraws.*', 'users.username', 'users.id as user_id'); } else { $withdraws = Withdraw::leftjoin('users', 'users.id', '=', 'withdraws.user_id')->select('withdraws.*', 'users.username'); } $total_records = $withdraws->get(); //echo "<br>total_records: ".count($total_records); $data['total_pages'] = ceil(count($total_records) / $record_per_page); //echo "<br>total_records: ".$data['total_pages']; $withdraws = $withdraws->skip($offset_start)->take($record_per_page)->orderby("created_at", "desc")->get(); $wallets = Wallet::orderby('type')->get()->toArray(); $new_wallet = array(); foreach ($wallets as $key => $value) { $new_wallet[$value['id']] = $value; } $data['wallets'] = $new_wallet; $data['withdraws'] = $withdraws; $data['users'] = User::orderBy('username')->get(); return View::make('admin.withdraws_queue', $data); break; case 'deposits-queue': $record_per_page = 20; if ($pager_page == '') { $pager_page = 1; } $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; if (isset($_GET['do_filter'])) { $deposits = Deposit::leftjoin('users', 'users.id', '=', 'deposits.user_id'); if ($_GET['wallet_id'] != '') { $deposits->where('wallet_id', $_GET['wallet_id']); } if ($_GET['status'] != '') { $deposits->where('paid', $_GET['status']); } if ($_GET['username'] != '') { $deposits->where('users.username', $_GET['username']); } $deposits->select('deposits.*', 'users.username', 'users.id as user_id'); } else { $deposits = Deposit::leftjoin('users', 'users.id', '=', 'deposits.user_id')->select('deposits.*', 'users.username'); } $total_records = $deposits->get(); //echo "<br>total_records: ".count($total_records); $data['total_pages'] = ceil(count($total_records) / $record_per_page); //echo "<br>total_records: ".$data['total_pages']; $deposits = $deposits->skip($offset_start)->take($record_per_page)->orderby("created_at", "desc")->get(); $wallets = Wallet::orderby('type')->get()->toArray(); $new_wallet = array(); foreach ($wallets as $key => $value) { $new_wallet[$value['id']] = $value; } $data['wallets'] = $new_wallet; $data['deposits'] = $deposits; $data['users'] = User::orderBy('username')->get(); return View::make('admin.deposits_queue', $data); break; case 'wallets': $record_per_page = 15; $total_users = Wallet::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total_users / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $wallets = Wallet::skip($offset_start)->take($record_per_page)->orderby('name')->get(); $data['wallets'] = $wallets; return View::make('admin.wallet.manage_wallets', $data); break; case 'markets': $record_per_page = 15; $total_users = Market::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total_users / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $markets = Market::skip($offset_start)->take($record_per_page)->get(); $data['markets'] = $markets; $wallets_temp = Wallet::orderby('type')->get(); $wallets = array(); foreach ($wallets_temp as $wallet) { $wallets[$wallet->id] = $wallet; } $data['wallets'] = $wallets; return View::make('admin.manage_markets', $data); break; case 'balance-wallets': $record_per_page = 15; $total_users = Wallet::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total_users / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $wallets = Wallet::skip($offset_start)->take($record_per_page)->orderby('name')->get(); $amount_transaction = array(); $balances = array(); foreach ($wallets as $wallet) { //get total deposit $total_deposit = Deposit::where('wallet_id', $wallet->id)->where('paid', 1)->sum('amount'); $total_withdraw = Withdraw::where('wallet_id', $wallet->id)->where('status', 1)->sum('receive_amount'); $amount_transaction[$wallet->id] = array('total_amount_deposit' => $total_deposit, 'total_amount_withdraw' => $total_withdraw); try { $wallet->connectJsonRPCclient($wallet->wallet_username, $wallet->wallet_password, $wallet->wallet_ip, $wallet->port); $balances[$wallet->id] = $wallet->getBalance(); } catch (Exception $e) { $balances[$wallet->id] = Lang::get('messages.cannot_connect'); } } $data['wallets'] = $wallets; $data['amount_transaction'] = $amount_transaction; $data['balances'] = $balances; return View::make('admin.wallet.manage_wallets_balance', $data); break; case "login-histories": $record_per_page = 15; if ($pager_page == '') { $pager_page = 1; } $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; //$offset_end = ($pager_page*$record_per_page)-1; $select = "select a.*, b.username from login_history a left join users b on a.user_id=b.id"; $select_count = "select count(*) as total from login_history as a"; $where = ''; if (isset($_GET['do_filter'])) { if ($where == '') { if (!empty($_GET['user'])) { $where = $where == '' ? " Where a.user_id='" . $_GET['user'] . "'" : $where . " AND a.user='******'user'] . "'"; } } } $select_count = $select_count . " " . $where; $total_records = DB::select($select_count); //echo "<pre>total_records: "; print_r($total_records); echo "</pre>"; exit; $data['total_pages'] = ceil($total_records[0]->total / $record_per_page); $select .= " " . $where . " order by `date` desc limit " . $offset_start . "," . $record_per_page; $login_histories = DB::select($select); $data['login_histories'] = $login_histories; $users = User::orderby('username')->get(); $data['users'] = $users; return View::make('admin.user.login_histories', $data); break; case 'method-deposit': $record_per_page = 15; $total_users = MethodDepositCurrency::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total_users / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $MethodDepositCurrency = MethodDepositCurrency::skip($offset_start)->take($record_per_page)->get(); $data['MethodDepositCurrency'] = $MethodDepositCurrency; return View::make('admin.method-deposit-currency.manage_method_deposit', $data); break; case 'method-withdraw': $record_per_page = 15; $total_users = MethodWithdrawCurrency::count(); if ($pager_page == '') { $pager_page = 1; } $data['total_pages'] = ceil($total_users / $record_per_page); //15 user per page $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $MethodWithdrawCurrency = MethodWithdrawCurrency::skip($offset_start)->take($record_per_page)->get(); $data['MethodWithdrawCurrency'] = $MethodWithdrawCurrency; return View::make('admin.method-withdraw-currency.manage_method_withdraw', $data); break; default: $setting = new Setting(); //$data['bg_color']=$setting->getSetting('bg_color',''); $data['site_mode'] = $setting->getSetting('site_mode', 0); //$data['bg_file']=$setting->getSetting('bg_file',''); $data['disable_withdraw'] = $setting->getSetting('disable_withdraw', 0); $data['recaptcha_publickey'] = $setting->getSetting('recaptcha_publickey', ''); $data['recaptcha_privatekey'] = $setting->getSetting('recaptcha_privatekey', ''); $data['amount_btc_per_vote'] = $setting->getSetting('amount_btc_per_vote', 0.0001); //pusher app $data['pusher_app_id'] = $setting->getSetting('pusher_app_id', ''); $data['pusher_app_key'] = $setting->getSetting('pusher_app_key', ''); $data['pusher_app_secret'] = $setting->getSetting('pusher_app_secret', ''); //default_market $m_default = Market::where('active', 1)->orderBy('id')->first(); $market_default_id = isset($m_default->id) ? $m_default->id : 0; $data['default_market'] = $setting->getSetting('default_market', $market_default_id); //setting points $data['disable_points'] = $setting->getSetting('disable_points', 0); $data['point_per_btc'] = $setting->getSetting('point_per_btc', 1); $data['percent_point_reward_trade'] = $setting->getSetting('percent_point_reward_trade', 0); $data['percent_point_reward_referred_trade'] = $setting->getSetting('percent_point_reward_referred_trade', 0); $data['max_amount_funds'] = $setting->getSetting('max_amount_funds', 1000); //echo "<pre>data: "; print_r($data); echo "</pre>"; exit; return View::make('admin.setting', $data); break; } }
public function routePage($page = '') { //echo "<pre>user: "******"</pre>"; switch ($page) { case "fees": $market = new Market(); $wallet = new Wallet(); $fees_trade = FeeTrade::get()->toArray(); //echo "<pre>list_buy_orders: "; print_r($list_buy_orders); echo "</pre>"; $fees_withdraw = FeeWithdraw::leftJoin('wallets', 'fee_withdraw.wallet_id', '=', 'wallets.id')->select('fee_withdraw.*', 'wallets.type', 'wallets.name')->get(); foreach ($fees_trade as $key => $value) { $wallet_type = $market->getWalletType($value['market_id']); if (!empty($wallet_type)) { $fees_trade[$key]['wallet_from'] = $wallet_type['wallet_from']; $fees_trade[$key]['wallet_to'] = $wallet_type['wallet_to']; } } $fee['fees_trade'] = $fees_trade; $fee['fees_withdraw'] = $fees_withdraw; return View::make('fees', $fee); break; case "voting": $setting = new Setting(); $coinvotes = DB::table('coin_votes')->get(); try { $wallet = Wallet::where('type', 'BTC')->first(); $wallet->connectJsonRPCclient($wallet->wallet_username, $wallet->wallet_password, $wallet->wallet_ip, $wallet->port); foreach ($coinvotes as $key => $value) { $num_vote = Vote::where('coinvote_id', '=', $value->id)->count(); //echo "<pre>getreceivedbyaccount"; print_r($wallet->getReceivedByAddress($value->btc_address)); echo "</pre>";//$value->label_address $btc_payment = $wallet->getReceivedByAddress($value->btc_address); //'12X9jVe4S8pAqJ7EoKN7B4YwMQpzfgArtX' $amount_btc_per_vote = $setting->getSetting('amount_btc_per_vote', 0.0001); $num_payment = floor($btc_payment / $amount_btc_per_vote); //echo "btc_payment: ".$btc_payment; //echo "<br>num_payment: ".$num_payment; $coinvotes[$key]->num_vote = $num_vote + $num_payment; } } catch (Exception $e) { $data['error_message'] = Lang::get('texts.not_connect_wallet'); //'Caught exception: '.$e->getMessage()."\n"; //"Not connect to this } //echo "<pre>coinvotes"; print_r($coinvotes); echo "</pre>"; $data['coinvotes'] = $coinvotes; return View::make('voting', $data); break; case "security": return View::make('security'); break; case "api": if (isset($_REQUEST['method'])) { $method = $_REQUEST['method']; $value = $this->api($method); } else { $setting = new Setting(); $data['pusher_app_key'] = $setting->getSetting('pusher_app_key', ''); return View::make('api', $data); } print_r($value); break; case "apiprivate": $value = $this->apiprivate(); break; case "all-trades": if (Auth::guest()) { return Redirect::to('/login'); } $record_per_page = 15; if (empty($_GET['pager_page'])) { $pager_page = 1; } else { $pager_page = $_GET['pager_page']; } $data['cur_page'] = $pager_page; $offset_start = ($pager_page - 1) * $record_per_page; $trade_history = Trade::leftjoin('market', 'market.id', '=', 'trade_history.market_id')->select('trade_history.*', 'market.wallet_from as from', 'market.wallet_to as to'); $where = ''; if (Input::has('market')) { $fil_market = Input::get('market'); $trade_history->where("trade_history.market_id", "=", $fil_market); } if (Input::has('type')) { $fil_type = Input::get('type'); $trade_history->where("trade_history.type", "=", $fil_type); } $total_records = $trade_history->get(); $data['total_pages'] = ceil(count($total_records) / $record_per_page); $trades = $trade_history->skip($offset_start)->take($record_per_page)->orderby("created_at", "desc")->get(); #echo "<pre>trade_history"; print_r($trades->toArray()); echo "</pre>"; //echo "<pre>getQueryLog: ".dd(DB::getQueryLog())."</pre>"; $data['tradehistories'] = $trades; $market = new Market(); $markets = Market::get(); $market_wallet = array(); foreach ($markets as $value) { $market_wallet[$value->id] = $market->getWalletType($value->id); } $data['markets'] = $market_wallet; return View::make('alltrades', $data); break; case "all-news": $news = Post::where('type', 'news')->orderby('created_at', 'desc')->get(); $data['news'] = $news; return View::make('allnews', $data); break; default: return View::make('index'); break; } }
public function support(Request $request) { if (Auth::guest()) { $message = ['error' => 'guest']; return $message; } else { // Recuperamos los datos enviados por el metodo POST $user_id = Auth::user()->id; //el id del usuario logueado $id_initiative = $request->input('id'); $password = $request->input('password'); //se crea un array que trae si el usuario ya voto por la iniciativa enviada en la consulta $user_votes = Vote::where('id_initiative', '=', $id_initiative)->where('user', '=', $user_id)->get(); //se valida que la iniciativa no este votada por el usuario logueado if (empty($user_votes[0])) { // Si nuestros datos pasan la validacion creamos un nuevo objeto en base al modelo Initiative para actualizar el campo 'votes' de la iniciativa enviada $initiative = Initiative::find($id_initiative); if ($initiative->password == $password) { $initiative->votes = $initiative->votes + 1; $initiative->save(); //generamos un nuevo registro para la encuesta seleccionada $vote = new Vote(); $vote->id_initiative = $id_initiative; $vote->user = $user_id; $vote->save(); $message = ['success' => 'ok']; return $message; } else { $message = ['error' => 'Token mismatch']; return $message; } } else { $message = ['error' => 'there is already a vote for this initiative']; return $message; } } }
public function vote($id, $votestatus) { if (Post::where('id', $id)->exists() && ($votestatus == 1 || $votestatus == 0)) { $post = Post::where('id', $id)->first(); if (Vote::where('post_id', $id)->where('user_id', Auth::user()->id)->exists()) { return Redirect::back(); } if ($post->user_id == Auth::user()->id) { return Redirect::back(); } $vote = new Vote(); $vote->user_id = Auth::user()->id; $vote->post_id = $id; $vote->vote = $votestatus; $vote->save(); } return Redirect::back(); }
// { // //$accounts = Account::where('vote_id', '=', $id)->get(); // Account::where('vote_id', '=', $id)->delete(); // $votes = Vote::where('id', '=', $id)->get(); // // $vote_id = $vote_new[0]->id; // $vote_data=[$vote->$id,$vote->vote_amount]; // //$redo = 1; // Session::put('vote_data', $vote_data); // Session::put('redo', 1); // //$data = [$accounts,$school_no,$vote_amount,$redo]; // // return our view and Vote information // //return View::make('tasks.account_data_show',compact('data')); // })); Route::get('/account_redo_true/{id}', array('as' => 'account_redo_true', 'uses' => 'VoteController@account_create', function ($id) { Account::where('vote_id', '=', $id)->delete(); $votes = Vote::where('id', '=', $id)->get(); $vote = $votes[0]; $vote_data = [$votes[0]->{$id}, $votes[0]->vote_amount]; //$redo = 1; echo "id", $votes[0]->{$id}, "amount", $votes[0]->vote_amount; Session::put('vote_data', $vote_data); Session::put('redo', 1); })); Route::get('/account_data_del/{id}', ['as' => 'account_data_del', 'uses' => 'AccountController@clean']); // Route::get('/{id}/{s}', array('as' => 'vote.edit2', function($id,$s) // { // // return our view and Vote information // // return View::make('tasks.vote-edit') // pulls app/views/nerd-edit.blade.php // // ->with('vote', Vote::find($id)); // return View::make('tasks.vote-edit2', array('id' => $id,'s'=>$s,'vote'=>Vote::find($id))); // }));
public static function action_edit($id = null) { if (!IS_ADMIN) { Redirect::to(Url::get('admin@login', null, 'redirect-to=' . urlencode(Url::current()))); } if ($_SERVER['REQUEST_METHOD'] === 'POST') { if ($id === 'delete-answer') { if (($answer_id = Param::post('answer_id')) && is_numeric($answer_id)) { $answer = Answer::get((int) $answer_id); Answer::find((int) $answer_id)->delete(); $votes = Vote::where('answer_id', '=', $answer_id)->count(); if ($votes) { Poll::find($answer->poll_id)->set(array('nofilter:total_votes' => "`total_votes` - {$votes}")); } return Response::json(array('status' => 200, 'deleted' => true)); } else { return Response::json(array('status' => 0, 'deleted' => false)); } } elseif ($id) { return Response::error(404); } else { $id = Param::post('id'); if ($answer_id = Param::post('remove_answer')) { Answer::find((int) $answer_id)->and_where('poll_id', '=', $id)->delete(); $votes = Vote::where('answer_id', '=', $answer_id)->count(); if ($votes) { Poll::find($id)->set(array('nofilter:total_votes' => "`total_votes` - {$votes}")); } Redirect::to(Url::get('admin@edit', $id, 'answer_deleted=true')); } if (Param::post('remove_poll')) { Poll::find($id)->delete(); Redirect::to(Url::get('admin', null, 'poll_deleted=true')); } if (is_numeric($id) && ($poll = Poll::get((int) $id))) { foreach ($_POST as $key => $value) { if (isset($poll->{$key}) && (!empty($_POST[$key]) || $_POST[$key] === "0")) { $poll->{$key} = is_numeric($_POST[$key]) ? intval($_POST[$key], 10) : $_POST[$key]; } elseif (false !== strpos($key, 'answer-')) { $answer_id = explode('-', $key); $answer_id = $answer_id[1]; if (is_numeric($answer_id)) { Answer::find((int) $answer_id)->set(array('text' => $value)); } } elseif ($key === 'new_answers') { foreach ($value as $new_answer) { if (!empty($new_answer)) { Answer::create(array('poll_id' => (int) $poll->id, 'text' => $new_answer)); } } } } Poll::save($poll); Redirect::to(Url::get('admin', null, 'success=' . $_POST['id'] . '&updated=true')); } else { return Response::error(500); } } } if (!$id || !is_numeric($id) || !($poll = Poll::get((int) $id))) { return Response::error(404); } else { $answers = Answer::where('poll_id', '=', $poll->id)->get(); return View::make('admin.edit')->add_var('answers', $answers)->add_var('poll', $poll); } }