/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { $pregunta = Pregunta::model()->findByPk($id); if (isset($_POST['Pregunta'])) { $pregunta->attributes = $_POST['Pregunta']; if ($pregunta->validate()) { if (!$pregunta->save()) { Yii::app()->user->setFlash('mensaje', 'La pregunta ' . $pregunta->pregunta . ' no se pudo guardar'); } if (isset($_POST['Respuesta'])) { foreach ($_POST['Respuesta'] as $k => $r) { if ($k > 0) { $respuesta = Respuesta::model()->findByPk($k); } else { $respuesta = new Respuesta(); } $respuesta->respuesta = $r['respuesta']; $respuesta->es_correcta = $r['es_correcta']; $respuesta->save(); } } } //if($preguntaForm->validate()) } //if(isset($_POST['Pregunta']))/**/ $this->render('modificar', array('model' => $pregunta)); }
public function crearEncuesta($encuesta, $email, $nombre = 'sin dato', $empresa = 'sin dato') { if (Session::token() != Input::get('_token')) { die; } $respuesta = Input::all(); //array respuestas form //print_r($respuesta); $datosEncuesta = DB::table('encuesta')->where('id', $encuesta)->first(); $cantidad = DB::table('pregunta')->where('idEncuesta', $encuesta)->count(); //Inserta usuario por email e ip $ip = Request::getClientIp(); $usuariosEmail = DB::table('users')->where('email', $email)->first(); //codigo rand $usuariosEmail = DB::table('users')->where('email', $email)->first(); $base = 1245; $cant = DB::table('users')->count(); $random = $base + $cant; if (empty($usuariosEmail)) { $x = new User(); $x->email = $email; $x->nombre = $nombre; $x->empresa = $empresa; $x->ip = $ip; $x->codigo = $random; $x->save(); } else { $mensaje = 'Usted ya ha completado la encuesta, sólo puede realizar esta acción una vez'; return View::make('encuesta.completado', array('mensaje' => $mensaje, 'encuesta' => $datosEncuesta)); } $usuarios = DB::table('users')->where('email', $email)->first(); $usuario = $usuarios->id; $codigo = $usuarios->codigo; Session::put('codigo', $codigo); //Inserta usuario_encuesta $x = new UsuarioEncuesta(); $x->idUsuario = $usuario; $x->idEncuesta = $encuesta; $x->save(); $usuarioEnc = DB::table('usuario_encuesta')->where('idUsuario', $usuario)->first(); $usuarioEncuesta = $usuarioEnc->id; //Inserta respuestas for ($i = 1; $i <= $cantidad; $i++) { $valor = Input::get('pregunta' . $i); if ($valor != '') { $x = new Respuesta(); $x->idUsuarioEncuesta = $usuarioEncuesta; $x->idEncuestaPregunta = $i; $x->valor = $valor; $x->save(); } } return Redirect::to('/formulario-ok'); //return View::make('encuesta.completado', array('encuesta' => $datosEncuesta,'email' => $email, 'nombre' => $nombre, 'empresa' => $empresa, 'codigo' => $random)); }
public function guardar() { $respuesta = Input::get('respuestas'); $table = new Respuesta(); $table->user_id = Auth::user()->id; $table->sexo = $respuesta['sexo']; $table->edad = $respuesta['edad']; $table->p1 = strtoupper($respuesta['p1']); $table->p1A = strtoupper($respuesta['p1A']); $table->p2 = $respuesta['p2']; $table->p3 = $respuesta['p3']; $table->p4 = $respuesta['p4']; $table->p4A = $respuesta['p4A']; $table->p5 = $respuesta['p5']; $table->p6 = $respuesta['p6']; $table->p7 = $respuesta['p7']; $table->p8 = $respuesta['p8']; $table->p9 = $respuesta['p9']; $table->p10 = $respuesta['p10']; $table->p11 = $respuesta['p11']; $table->p12 = $respuesta['p12']; $table->p13 = $respuesta['p13']; $table->p14 = $respuesta['p14']; $table->p15 = $respuesta['p15']; $table->p15A = $respuesta['p15A']; $table->p16 = $respuesta['p16']; $table->p17 = $respuesta['p17']; $table->p18 = $respuesta['p18']; $table->p18A = $respuesta['p18A']; $table->p19 = $respuesta['p19']; $table->p20 = $respuesta['p20']; $table->p21 = $respuesta['p21']; $table->p22 = $respuesta['p22']; $table->p23 = $respuesta['p23']; $table->p24 = $respuesta['p24']; $table->p25 = $respuesta['p25']; $table->p26 = $respuesta['p26']; $table->p27 = $respuesta['p27']; if ($table->save()) { return 'success'; } return 'error refresque la pagina y intente de nuevo'; }
public function actionCreate() { $pregunta = new Pregunta(); $respuestas = null; // Ajax validation $this->performAjaxValidation($pregunta); if (!empty($_POST['Pregunta'])) { $pregunta->attributes = $_POST['Pregunta']; $pregunta->estado = 1; foreach ($_POST['respuesta'] as $key => $value) { if (isset($_POST['es_correcta'])) { $correcta = $key == $_POST['es_correcta'] ? 1 : 0; } else { $correcta = 0; } $respuestas[] = array('respuesta' => $value, 'es_correcta' => $correcta); } if (!isset($_POST['es_correcta'])) { Yii::app()->user->setFlash('error', "Seleccione una respesta correcta."); } else { if (!empty($_POST['respuesta']) && count(array_values(array_diff($_POST['respuesta'], array('')))) > 1) { $fechaForm = $pregunta->fecha; // Fecha con formato de la bd de mysql $formatoFecha = Yii::app()->dateFormatter->format('yyyy-MM-dd', CDateTimeParser::parse($pregunta->fecha, 'dd/MM/yyyy')); $pregunta->fecha = $formatoFecha; if ($pregunta->save(false, 'save')) { foreach ($_POST['respuesta'] as $key => $value) { $respuesta = null; $respuesta = new Respuesta(); $correcta = 0; $respuesta->respuesta = $value; $correcta = $key == $_POST['es_correcta'] ? 1 : 0; $respuesta->es_correcta = $correcta; $respuesta->pregunta_id = $pregunta->id; $respuesta->save(); } $log = new Logs(); try { $log->accion = 'Creo una pregunta como admin'; $log->usuario = 'Admin id: ' . 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('view', 'id' => $pregunta->id)); } else { $pregunta->fecha = $fechaForm; Yii::app()->user->setFlash('error', "Error al guardar pregunta."); } } else { $pregunta->fecha = $fechaForm; Yii::app()->user->setFlash('error', "Registre al menos (2) respuestas"); } } } $this->render('form', array('pregunta' => $pregunta, 'respuestas' => $respuestas)); }
public function actionInsertarRespuesta() { $comentario = $_POST['respuesta']; $id_posteo = $_POST['id_posteo']; $usuario = Usuario::model()->findByPk(Yii::app()->user->id); $topIdRespuesta; //if($id_posteo != null && $id_posteo != "" && $res != null && $res != ""){ $listaRespuesta = Yii::app()->db->createCommand("select r.id_respuesta from respuesta r where r.id_posteo=" . $id_posteo)->queryAll(); if ($listaRespuesta != null) { foreach ($listaRespuesta as $res) { $topIdRespuesta = $res['id_respuesta']; } $topIdRespuesta++; } else { $topIdRespuesta = 1; } $respuesta = new Respuesta(); $respuesta->id_posteo = $id_posteo; $respuesta->id_usuario = $usuario->id_usuario; $respuesta->respuesta = $comentario; $respuesta->id_respuesta = $topIdRespuesta; $respuesta->fhcreacion = new CDbExpression('NOW()'); $respuesta->cusuario = "juancito"; $respuesta->save(); echo "saved"; }
public function postActualizargrupo() { $data = Input::all(); $grupo_id = $data["id"]; DB::beginTransaction(); DB::table("grupos")->where('id', $grupo_id)->update(array('nombre' => array_key_exists('titulo', $data) ? $data['titulo'] : "", 'descripcion' => array_key_exists('descripcion', $data) ? $data['descripcion'] : "", 'fb_url' => array_key_exists('fb_url', $data) ? $data['fb_url'] : "", 'region' => array_key_exists('departamento', $data) ? $data['departamento'] : "", 'provincia' => array_key_exists('provincia', $data) ? $data['provincia'] : "", 'distrito' => array_key_exists('distrito', $data) ? $data['distrito'] : "", 'edad_desde' => array_key_exists('edad_desde', $data) ? $data['edad_desde'] : "", 'edad_hasta' => array_key_exists('edad_hasta', $data) ? $data['edad_hasta'] : "", 'sexo' => array_key_exists('sexo', $data) ? $data['sexo'] : "")); DB::table("grupo_pregunta")->where('grupo_id', '=', $grupo_id)->delete(); foreach ($data['preguntas'] as $pre) { DB::table("grupo_pregunta")->insert(array("pregunta_id" => $pre['id'], "grupo_id" => $grupo_id, "respuesta" => array_key_exists('respuesta', $pre) ? $pre['respuesta'] : "", "estado" => array_key_exists('estado', $pre) && $pre['estado'] == "true" ? 1 : "")); } $mensaje = new Mensaje(); $mensaje->mensaje = array_key_exists('fb_url', $data) ? $data['fb_url'] : ""; $mensaje->asunto = "Fan Page Actualizado"; $mensaje->activista_id = Auth::user()->id; $mensaje->estado = 1; $mensaje->save(); $respuesta = new Respuesta(); $respuesta->mensaje_id = $mensaje->id; $respuesta->respondido_por = Auth::user()->id; $respuesta->respondido_at = date("Y-m-d H:i:s"); $respuesta->respuesta = $data['titulo'] . ": " . $data['descripcion']; $respuesta->estado = 1; $respuesta->url = 1; $respuesta->save(); // @todo manejar errores $results = array("code" => "ok", "message" => "Datos correctamente guardados"); DB::commit(); return Response::json($results); }
public function addRespuesta($post) { $respuesta = array('code' => 404, 'message' => 'recurso no encontrado'); $pregunta_id = strip_tags(htmlspecialchars($post['pregunta'])); $pregunta_id = intval($pregunta_id); $pregunta_id = filter_var($pregunta_id, FILTER_VALIDATE_INT); $descripcion = strip_tags(htmlspecialchars($post['post']['descripcion'])); $session = Utilities::getSession(); if (is_null($session)) { $respuesta['message'] = 'No se encontro alguna sesion activa :s'; } else { if (!$pregunta_id) { $respuesta['message'] = 'Pregunta no valiad'; } else { if (strcmp($descripcion, '') == 0) { $respuesta['message'] = 'Debe escribir una respuesta'; } else { $pregunta = Pregunta::find($pregunta_id); if (count($pregunta) == 0) { $respuesta['message'] = 'La pregunta no existe'; } else { $fecha_actual = date('Y-m-d'); $reply = new Respuesta(); $reply->perfil_id = $session['user_id']; $reply->pregunta_id = $pregunta->pregunta_id; $reply->descripcion = $descripcion; $reply->fechaRespuesta = $fecha_actual; if ($reply->save()) { $respuesta['code'] = 200; $respuesta['message'] = 'Se guardo correctamente'; $respuesta['username'] = $session['username']; $respuesta['respuesta'] = $reply; } else { $respuesta['message'] = 'Lo sentimos, no se pudo guardar su respuesta'; } } } } } return json_encode($respuesta); }