/** * Esta funcion ejecutara la app y hara las veces de controlador */ static function run() { $pregunta = new encuesta(); @($action = $_POST['action']); if ($action == 'respuesta') { $encuesta->saverespuesta(); } else { echo $pregunta->Form(); } }
public function responder() { $this->orm->connect(); $codigo = $this->post->encuesta; unset($this->post->encuesta); $options['pregunta']['lvl2'] = "by_encuesta"; $cod['pregunta']['encuesta'] = $codigo; $this->orm->read_data(array("pregunta"), $options, $cod); $numPreguntas = $this->orm->get_objects("pregunta", $options, $cod); $options['encuesta']['lvl2'] = "by_codigo"; $cod['encuesta']['codigo'] = $codigo; $this->orm->read_data(array("encuesta"), $options, $cod); $encuesta = $this->orm->get_objects("encuesta", $options, $cod); $encuesta = new encuesta($encuesta[0]); if (sizeof($numPreguntas) == $this->contarRespuestas($this->post)) { foreach ($this->post as $key => $value) { $respuesta = new respuesta(); $respuesta->set('opcion', $value[0]); $respuesta->set('usuario', $_SESSION['persona']['cedula']); $this->orm->insert_data("normal", $respuesta); unset($respuesta); } $beneficio = new beneficio(); $beneficio->set('encuesta', $encuesta->get('codigo')); $beneficio->set('tarjeta', $_SESSION['persona']['cedula']); $beneficio->set('fecha', date("y-m-d")); $beneficio->set('retribucion', $encuesta->get('retribucion')); $this->orm->insert_data("normal", $beneficio); $options['tarjeta']['lvl2'] = "by_persona"; $cod['tarjeta']['persona'] = $_SESSION['persona']['cedula']; $this->orm->read_data(array("tarjeta"), $options, $cod); $tarjeta = $this->orm->get_objects("tarjeta", $options, $cod); $tarjeta = new tarjeta($tarjeta[0]); $tarjeta->set('saldo', $tarjeta->get('saldo') + $encuesta->get('retribucion')); $this->orm->update_data("saldo", $tarjeta); $this->displayMessage('Encuesta respondida exitosamente', '¡Gracias por participar!'); } else { $this->displayMessage('Preguntas sin responder', 'Por favor seleccione una opción de respuesta para cada una de las preguntas presente en la encuesta'); $options['encuesta']['lvl2'] = "by_codigo"; $cod['encuesta']['codigo'] = $encuesta->get('codigo'); $options['pregunta']['lvl2'] = "by_encuesta"; $cod['pregunta']['encuesta'] = $encuesta->get('codigo'); $options['opcion']['lvl2'] = "all"; $components['encuesta']['pregunta'] = array("e_p"); $components['pregunta']['opcion'] = array("p_o"); $this->orm->read_data(array("encuesta", "pregunta", "opcion"), $options, $cod); $encuesta = $this->orm->get_objects("encuesta", $components); $this->engine->assign('encuesta', $encuesta[0]); } $this->orm->close(); }
<?php $pregunta = new encuesta($data); $result = $pregunta->get(); if ($result != false && $result->rowCount() > 0) { $data['action'] = 'update'; $row = $result->fetch(PDO::FETCH_OBJ); } else { $data['action'] = 'insert'; } if ($data['action'] == 'update') { ?> <h3>Editar pregunta</h3> <?php } else { ?> <h3>Introducir una nueva pregunta</h3> <?php } ?> <a id="help" href="#" style="float: right;">Ayuda</a> <a href="index.php" style="float: right;">Nueva pregunta</a> <form action="index.php" method="POST" name="pregunta"> <input type="hidden" name="action" value="<?php echo $data['action']; ?> "/> <select name="navegador"> <?php if ($data['action'] == 'update') { ?>
function update($data) { $pregunta = new encuesta($data); $pregunta->update(); $this->view('formulario', null); }
public function crear() { $encuesta = new encuesta($this->post); $tz = 'America/Bogota'; $encuesta->set('fechaPublicacion', (new DateTime("now", new DateTimeZone($tz)))->format('Y-m-d')); if ($encuesta->validarCompletitud()) { if (isset($this->post->pregunta)) { if ($encuesta->validarFecha()) { if ($encuesta->validarCaracteres()) { if ($this->ValidarPreguntas($this->post->pregunta, $this->post->opcion)) { if ($this->validarCategorias()) { $this->orm->connect(); $this->orm->insert_data("normal", $encuesta); $num_preg = 1; $options['encuesta']['lvl2'] = "by_nombre"; $cod['encuesta']['nombre'] = $encuesta->get('nombre'); $this->orm->connect(); $this->orm->read_data(array("encuesta"), $options, $cod); $encuesta = $this->orm->get_objects("encuesta"); foreach ($this->post->interes as $key => $value) { settype($categoria, 'object'); $categoria->tipo = $value; $categoria->encuesta = $encuesta[0]->get('codigo'); $categoria = new categoria($categoria); $this->orm->insert_data("normal", $categoria); unset($categoria); } foreach ($this->post->pregunta as $key => $value) { settype($pregunta, 'object'); $pregunta->contenido = $value; $pregunta->numero = $num_preg; $pregunta->encuesta = $encuesta[0]->get('codigo'); $pregunta = new pregunta($pregunta); $this->orm->insert_data("normal", $pregunta); $num_opc = 1; $options['pregunta']['lvl2'] = "by_encuesta_numero"; $cod['pregunta']['encuesta'] = $pregunta->get('encuesta'); $cod['pregunta']['numero'] = $pregunta->get('numero'); $this->orm->connect(); $this->orm->read_data(array("pregunta"), $options, $cod); $pregunta = $this->orm->get_objects("pregunta"); for ($i = ($num_preg - 1) * 4; $i <= $num_preg * 4 - 1; $i++) { settype($opcion, 'object'); $opcion->contenido = $this->post->opcion[$i]; $opcion->numero = $num_opc; $opcion->pregunta = $pregunta[0]->get('codigo'); $opcion = new opcion($opcion); $this->orm->insert_data("normal", $opcion); unset($opcion); $num_opc = $num_opc + 1; } unset($pregunta); $num_preg = $num_preg + 1; } $this->displayMessage("Registro completado", "Encuesta creada correctamente"); $this->orm->close(); } else { $this->displayMessage("Datos obligatorios vacíos", "Debe seleccionar al menos una categoría"); } } else { $this->displayMessage("Datos obligatorios vacíos", "Debe ingresar las preguntas completas con sus respectivas opciones"); } } else { $this->displayMessage("Caracteres no permitidos", "Alguno de los caracteres ingresados para el campo Retribución no son permitidos"); } } else { $this->displayMessage("Fecha inválida", "Debe ingresar una fecha de finalización posterior a la actual"); } } else { $this->displayMessage("Datos obligatorios vacíos", "Debe ingresar al menos una pregunta con sus opciones correspondiente"); } } else { $this->displayMessage("Datos obligatorios vacíos", "Debe ingresar todos los campos marcados por (*)"); } }
public function miPerfil($id, $nombre, $apellidos, $contrasena) { $unaEncuesta = new encuesta(); $resultado = $unaEncuesta->actualizar_perfil($id, $nombre, $apellidos, $contrasena); if ($resultado > 0) { $_SESSION['actualizar'] = $resultado; $tsArray = $unaEncuesta->encontrar_Usuario($id); if (count($tsArray) > 0) { $_SESSION['usuario_completo'] = $tsArray; } header('location:app/views/default/modules/encuestas/mi_perfil.php'); } }
function forwarding() { $this->usuario = new tab_usuario(); $this->usuario->setRequest2Object($_REQUEST); $row = $this->usuario->dbselectByField("usu_id", $_REQUEST['usu_id']); if (!$row) { die("Error del sistema 404"); } $row = $row[0]; $this->usuario->setUsu_id($_REQUEST['usu_id']); $pass = md5(trim($row->usu_login)); $this->usuario->setUsu_pass($pass); $this->usuario->update(); // Mailer $nombre = $row->usu_nombres . " " . $row->usu_apellidos; $email = $row->usu_email; $encuesta = new encuesta(); $nombreEncuesta = $encuesta->obtenerEncuestaUsuario($_REQUEST['usu_id']); // // Test // $email = "*****@*****.**"; try { // Include phpmail.php require_once 'includes/class.phpmailer.php'; // Phpmailer instance $mail = new PHPMailer(); $mail->SetLanguage("es", "includes/"); // SMTP definition $mail->IsSMTP(); //Esto es para activar el modo depuración. En entorno de pruebas lo mejor es 2, en producción siempre 0 // 0 = off (producción) // 1 = client messages // 2 = client and server messages $mail->SMTPDebug = 0; // Gmail SMTP $mail->Host = 'smtp.gmail.com'; // Port $mail->Port = 587; // Encription $mail->SMTPSecure = 'tls'; // Gmail authentication $mail->SMTPAuth = true; // Gmail account $mail->Username = "******"; // Password account $mail->Password = "******"; // Destinatary: (email, name optional) $mail->AddAddress($email, $nombre); // CC // $mail->AddCC("*****@*****.**"); $mail->AddCC("*****@*****.**"); // BCC // $mail->AddBCC("*****@*****.**"); $mail->AddBCC("*****@*****.**"); // Reply to $mail->AddReplyTo('*****@*****.**', 'DIRECCION GENERAL DE GOBIERNO ELECTRONICO'); // Remitente (email, name optional) $mail->SetFrom('*****@*****.**', 'DIRECCION GENERAL DE GOBIERNO ELECTRONICO'); // Attachmail $mail->AddAttachment("Manual_Usuario_Encuesta_Software Libre.pdf"); // Subject email if ($_REQUEST['usu_rol_id'] == 1) { $mail->Subject = 'Creacion de cuenta para administrar el Sistema de Encuestas de la DGGE - Ministerio de Planificación del Desarrollo'; // Format HTML to send with load file // $mail->MsgHTML(file_get_contents('correomaquetado.html'), dirname(ruta_al_archivo)); $mail->MsgHTML("<b>Estimad@ " . $nombre . ":</b>" . "<br><br>Se creo una cuenta de administrador para usted para el acceso al Sistema de Encuestas de la DGEE - Ministerio de Planificación" . "<br>La direccion para administrar el sistema es la siguiente:" . "<br><a href='" . PATH_DOMAIN . "'>" . PATH_DOMAIN . "</a>" . "<br><br>Puede usar las siguientes credenciales para el acceso:" . "<br>Usuario: " . $row->usu_login . "<br>Password: "******"<br><br>Se adjunta Manual de Usuario del Sistema de Encuestas" . "<br>Gracias !"); } if ($_REQUEST['usu_rol_id'] == 2) { $mail->Subject = 'Cuenta de usuario para llenar la encuesta de ' . $nombreEncuesta . ". MINISTERIO DE PLANIFICACIÓN DEL DESARROLLO - DGGE "; // Format HTML to send with load file // $mail->MsgHTML(file_get_contents('correomaquetado.html'), dirname(ruta_al_archivo)); $mail->MsgHTML("<b>Estimad@ " . $nombre . ":</b>" . "<br><br>Como es de su conocimiento la Dirección General de Gobierno Electrónico esta realizando el relevamiento de información respecto de Gobierno Electrónico, Software libre y Estándares Abiertos en el marco de la Ley Nro. 164 de 8 de agosto de 2011 y del D.S. 1793 del 13 de noviembre de 2013." . "<br>Por ello retomamos el contacto y nos dirigimos a usted como delegado designado por su autoridad en el proceso anterior respecto del formulario de Gobierno Electrónico, ahora solicitando su colaboración y disponibilidad para el desarrollo del llenado del formulario electrónico en la temática de Software Libre y Estándares Abiertos. La herramienta electrónica estará en línea del 30 de julio al Viernes 22 de agosto de la presente gestión, de manera que solicitamos sea diligenciado en el marco de las fechas especificadas." . "<br><br>La dirección para el llenado del formulario electrónico del Sistema de Encuestas de la DGEE - Ministerio de Planificación es la siguiente:" . "<br><a href='" . PATH_DOMAIN . "'>" . PATH_DOMAIN . "</a>" . "<br><br>Puede usar las siguientes credenciales para el acceso:" . "<br>Usuario: " . $row->usu_login . "<br>Password: "******"<br><br>Se adjunta Manual de Usuario del Sistema de Encuestas." . "<br><br>Favor de contactarse con el Lic. Ariel Blanco a la siguiente dirección de correo electrónico <a href='mailto:ariel.blanco@planificacion.gob.bo'>ariel.blanco@planificacion.gob.bo</a> o <a href='mailto:arsenio.castellon@planificacion.gob.bo'>arsenio.castellon@planificacion.gob.bo</a> para recibir las orientaciones sobre el llenado del formulario." . "<br><br>A la espera de su pronta respuesta y seguros de contar con su valiosa colaboración, saludo a usted atentamente." . "<br>Dirección General de Gobierno Electrónico"); } if ($_REQUEST['usu_rol_id'] == 3) { $mail->Subject = 'Creacion de cuenta para analista del Sistema de Encuestas de la DGGE - Ministerio de Planificación del Desarrollo'; // Format HTML to send with load file // $mail->MsgHTML(file_get_contents('correomaquetado.html'), dirname(ruta_al_archivo)); $mail->MsgHTML("<b>Estimad@ " . $nombre . ":</b>" . "<br><br>Se creo una cuenta de analista para usted para el acceso al Sistema de Encuestas de la DGEE - Ministerio de Planificación" . "<br>La direccion para realizar el análisis de los datos del sistema es la siguiente:" . "<br><a href='" . PATH_DOMAIN . "'>" . PATH_DOMAIN . "</a>" . "<br><br>Puede usar las siguientes credenciales para el acceso:" . "<br>Usuario: " . $_REQUEST['usu_login'] . "<br>Password: "******"<br>Gracias !"); } // Alternate for block $mail->AltBody = 'This is a plain-text message body'; // Send mail if (!$mail->Send()) { echo "Error: " . $mail->ErrorInfo; Header("Location: " . PATH_DOMAIN . "/usuario/index/"); } else { echo "Enviado!"; Header("Location: " . PATH_DOMAIN . "/usuario/index/"); } } catch (phpmailerException $e) { // PhpMailer Error $result .= "<b class='red'>Error: PhpMailer.</b><br />" . $e->errorMessage() . "</b>"; echo $result; } catch (Exception $e) { // Other Error $result .= "<b class='red'>Error: </b><br />" . $e->getMessage() . "</b>"; echo $result; } Header("Location: " . PATH_DOMAIN . "/usuario/"); }