public function actionPerfil()
 {
     $usuario_id = Yii::app()->user->id;
     $ahora = date('Y-m-d G:i:s');
     $jugador = Jugador::model()->with('usuario', 'parentesco')->findByAttributes(array('usuario_id' => $usuario_id));
     $rxj = RespuestaXJugador::model()->with('pregunta', 'respuesta', 'pregunta.nivel')->findAll(array('order' => 't.fecha DESC', 'condition' => 'TIMESTAMPDIFF(MINUTE,  CONCAT(pregunta.fecha," ",pregunta.hora_fin), "' . $ahora . '" ) >= 5 AND jugador_id =' . $jugador->id), array('limit' => '10'));
     $mes = date('m');
     $anho = date('Y');
     $ranking_mes = Jugador::model()->getRanking('mes', $mes, false);
     $ranking_anho = Jugador::model()->getRanking('anho', $anho, false);
     $p_m = 0;
     $p_a = 0;
     $r_m = 0;
     $r_a = 0;
     foreach ($ranking_mes as $mes) {
         if ($mes['id'] == $usuario_id) {
             $p_m = $mes['puntaje'];
             $r_m = $mes['top'];
         }
     }
     foreach ($ranking_anho as $anho) {
         if ($anho['id'] == $usuario_id) {
             $p_a = $anho['puntaje'];
             $r_a = $anho['top'];
         }
     }
     $this->render('perfil', array('jugador' => $jugador, 'rxj' => $rxj, 'ranking_mes' => $r_m, 'ranking_anho' => $r_a, 'puntaje_mes' => $p_m, 'puntaje_anho' => $p_a));
 }
 public function actionDelete($id)
 {
     $prx = new PreguntaXRonda();
     $rxj = new RespuestaXJugador();
     $res = new Respuesta();
     $pre = new Pregunta();
     $criteria = new CDbCriteria();
     $criteria->join = 'inner join pregunta p ON respuesta_x_jugador.pregunta_id = p.id';
     $criteria->condition = 'p.id=' . $id;
     $prx->deleteAll("pregunta_id = {$id}");
     $rxj->deleteAll($criteria);
     $res->deleteAll("pregunta_id = {$id}");
     $pre->deleteAll("id = {$id}");
     $log = new Logs();
     try {
         $log->accion = 'Elimino la pregunta id #' . $id . ' como admin';
         $log->usuario = Yii::app()->user->id;
         $log->msg = 'IP: ' . $_SERVER['REMOTE_ADDR'] . ' : ' . $_SERVER['REMOTE_PORT'];
         $log->fecha = date('Y-m-d G:i:s');
         $log->save();
     } catch (Exception $e) {
         $log->accion = 'Error log';
         $log->msg = '';
         $log->fecha = '';
         $log->save();
     }
     $this->redirect(array('index'));
 }
 public function validarTiempo($preguntas)
 {
     foreach ($preguntas as $key => $value) {
         $hora_inicio = date('G:i:s', strtotime($value['hora_inicio']));
         $hora_inicio = explode(':', $hora_inicio);
         $hora_inicio = join('', $hora_inicio);
         $hora_fin = date('G:i:s', strtotime($value['hora_fin']));
         $hora_fin = explode(':', $hora_fin);
         $hora_fin = join('', $hora_fin);
         $hora_actual = date('G:i:s', time());
         $hora_actual = explode(':', $hora_actual);
         $hora_actual = join('', $hora_actual);
         $respuesta = RespuestaXJugador::model()->findAll('pregunta_id = ? AND jugador_id = ?', array(0 => $value->id, 1 => Yii::app()->user->id));
         if (count($respuesta) == 0) {
             if ($hora_actual >= $hora_inicio && $hora_actual <= $hora_fin) {
                 $preguntas[$key]->estado = 1;
             } else {
                 $preguntas[$key]->estado = 0;
             }
             $preguntas[$key]->save();
         } else {
             $preguntas[$key]->estado = 2;
         }
     }
     return $preguntas;
 }