public function index() { $user = User::fromToken(); $votacion = VtVotacion::where('actual', '=', true)->where('user_id', $user->id)->where('year_id', $user->year_id)->first(); $aspiraciones = VtAspiracion::where('votacion_id', $votacion->id)->get(); return $aspiraciones; }
public function getShow() { $user = User::fromToken(); $votaciones = VtVotacion::actualesInscrito($user, false); // Traer aunque no esté en acción. // Votaciones creadas por el usuario. $consulta = 'SELECT v.id as votacion_id, v.* FROM vt_votaciones v where v.user_id=? and v.year_id=? and v.deleted_at is null'; $votacionesMias = DB::select($consulta, [$user->user_id, $user->year_id]); foreach ($votacionesMias as $key => $votMia) { // Debo crear otro array para verificar que ya no tenga el mismo evento. array_push($votaciones, $votMia); } $cantVot = count($votaciones); for ($j = 0; $j < $cantVot; $j++) { if ($votaciones[$j]->can_see_results) { $aspiraciones = VtAspiracion::where('votacion_id', $votaciones[$j]->votacion_id)->get(); $result = array(); foreach ($aspiraciones as $aspira) { $candidatos = VtCandidato::porAspiracion($aspira->id, $user->year_id); for ($i = 0; $i < count($candidatos); $i++) { $votos = VtVoto::deCandidato($candidatos[$i]->candidato_id, $aspira->id)[0]; $candidatos[$i]->cantidad = $votos->cantidad; $candidatos[$i]->total = $votos->total; } $aspira->candidatos = $candidatos; array_push($result, $aspira); } $votaciones[$j]->aspiraciones = $result; } } return $votaciones; }
public function getConaspiraciones() { $user = User::fromToken(); if ($user->tipo == 'Alumno' || $user->tipo == 'Acudiente') { $votacion = VtVotacion::actualInscrito($user); } else { $votacion = VtVotacion::actual($user); } $aspiraciones = VtAspiracion::where('votacion_id', $votacion->id)->get(); $particip = VtParticipante::one($user->id); $result = array(); foreach ($aspiraciones as $aspira) { $candidatos = VtCandidato::porAspiracion($aspira->id, $user->year_id); $aspira->candidatos = $candidatos; $votado = []; if ($particip) { try { $votado = VtVoto::votesInAspiracion($aspira->id, $particip->id); } catch (Exception $e) { } } $aspira->votado = $votado; array_push($result, $aspira); } return $result; }
public function getIndex() { $user = User::fromToken(); $votacion = VtVotacion::where('in_action', '=', true)->first(); $hayVotacion = false; $signed = false; $voted = false; $rutear = false; if ($votacion) { $hayVotacion = true; $signed = VtParticipante::isSigned($user->user_id, $votacion->id); if ($signed) { $voted = VtVoto::hasVoted($votacion->id, $signed->id); $rutear = true; } $eventos = array('votaciones' => array('hay' => $hayVotacion, 'signed' => $signed, 'voted' => $voted, 'rutear' => $rutear, 'state' => 'votaciones.votar')); return $eventos; } else { $eventos = array('votaciones' => array('hay' => false, 'signed' => false, 'voted' => false, 'rutear' => false, 'state' => '')); return $eventos; } }
public function deleteDestroy($id) { $votaciones = VtVotacion::findOrFail($id); $votaciones->delete(); return $votaciones; }
public function getAllinscritos() { $votacion = VtVotacion::where('actual', '=', true)->first(); $consulta = 'SELECT usus.persona_id, vp.id as participante_id, usus.nombres, usus.apellidos, usus.user_id, usus.username, usus.tipo from (select p.id as persona_id, p.nombres, p.apellidos, p.user_id, u.username, ("Pr") as tipo from profesores p inner join users u on p.user_id=u.id union select a.id as persona_id, a.nombres, a.apellidos, a.user_id, u.username, ("Al") as tipo from alumnos a inner join users u on a.user_id=u.id inner join matriculas m on m.alumno_id=a.id and m.matriculado=true )usus inner join vt_participantes vp on vp.user_id=usus.user_id and vp.votacion_id = :votacion_id'; $participantes = DB::select(DB::raw($consulta), array('votacion_id' => $votacion->id)); return $participantes; }
public function actualInAction($user) { return VtVotacion::where('actual', true)->where('user_id', $user->id)->where('in_action', true)->where('year_id', $user->year_id)->first(); }
public function postIndex(Request $request) { $userTemp = []; $token = []; try { $token = JWTAuth::parseToken(); if ($token) { $userTemp = User::fromToken(false, $request); } else { if (!Request::has('username') && Request::input('username') != '') { return response()->json(['error' => 'Token expirado'], 401); } } } catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) { if (!count(Input::all())) { return response()->json(['error' => 'token_expired'], 401); } } catch (JWTException $e) { // No haremos nada, continuaremos verificando datos. } $credentials = ['username' => Request::input('username'), 'password' => (string) Request::input('password')]; if (!$userTemp) { if (Auth::attempt($credentials)) { $userTemp = Auth::user(); } else { if (Request::has('username') && Request::input('username') != '') { $pass = Hash::make((string) Request::input('password')); $usuario = User::where('password', '=', $pass)->where('username', '=', Request::input('username'))->get(); if (count($usuario) > 0) { $userTemp = Auth::login($usuario[0]); } else { $usuario = User::where('password', '=', (string) Request::input('password'))->where('username', '=', Request::input('username'))->get(); if (count($usuario) > 0) { $usuario[0]->password = Hash::make((string) $usuario[0]->password); $usuario[0]->save(); $userTemp = Auth::loginUsingId($usuario[0]->id); } else { return abort(400, 'Credenciales inválidas.'); } } } else { return abort(401, 'Por favor ingrese de nuevo.'); } } if (!$token) { if (!($token = JWTAuth::attempt($credentials))) { return abort('401', 'Usuario o contraseña incorrectos para el token.'); } } $userTemp = User::fromToken($token); // Ahora verificamos si está inscrito en alguna votación $votaciones = VtVotacion::actualesInscrito($userTemp, true); $votacionesResult = []; $cantVot = count($votaciones); if ($cantVot > 0) { for ($i = 0; $i < $cantVot; $i++) { $completos = VtVotacion::verificarVotosCompletos($votaciones[$i]->votacion_id, $votaciones[$i]->participante_id); if (!$completos) { array_push($votacionesResult, $votaciones[$i]); } } $cantVot = count($votacionesResult); if ($cantVot > 0) { $userTemp->votaciones = $votacionesResult; } } } //return json_decode(json_encode($user[0]), true); return json_decode(json_encode($userTemp), true); }