/**
  * Show the form for editing the specified resource.
  *
  * @param  int  $id
  * @return Response
  */
 public function edit($id)
 {
     $pregunta = Pregunta::find($id);
     if (is_null($pregunta)) {
         App::abort(404);
     }
     $evaluacion = Evaluacion::find($pregunta->id_evaluacion);
     $form_data = array('route' => array('pregunta.update', $pregunta->id_pregunta), 'method' => 'PATCH');
     $action = 'Editar';
     $tematicas = Tematica::lists('nombre', 'id_tematica');
     return View::make('Pregunta/form', compact('pregunta', 'form_data', 'action'))->with('tematicas', $tematicas)->with('evaluacion', $evaluacion);
 }
Beispiel #2
0
 public function authenticate()
 {
     // Inicio Login sin contraseña
     if ($this->password === '') {
         $eva = Evaluacion::model()->findByAttributes(array('usu_rut' => $this->username));
         if (!$eva) {
             $this->errorCode = self::ERROR_USERNAME_INVALID;
         } else {
             var_dump($eva);
             $this->_id = $eva->usu_rut;
             $this->username = '******';
             $this->setState('rol', 'view');
             $this->setState('rut', $eva->usu_rut);
             $this->setState('empresa', $eva->emp_rut);
             $this->errorCode = self::ERROR_NONE;
             return !$this->errorCode;
         }
     }
     //Inicio Login Normal
     $user = Usuario::model()->findByPk($this->username);
     if (!$user) {
         $this->errorCode = self::ERROR_USERNAME_INVALID;
     } elseif ($user->usu_password !== md5($this->password)) {
         $this->errorCode = self::ERROR_PASSWORD_INVALID;
     } else {
         // Guarda variables de session
         $this->_id = $user->usu_rut;
         $this->username = $user->usu_rol;
         $this->setState('rol', $user->usu_rol);
         $this->setState('rut', $user->usu_rut);
         $this->setState('nombre', $user->usu_rol);
         $this->setState('empresa', $user->emp_rut);
         $this->errorCode = self::ERROR_NONE;
         $user->newRecords();
     }
     return !$this->errorCode;
 }
Route::resource('usuario', 'UsuarioController');
Route::resource('evaluacion', 'EvaluacionController');
Route::resource('leccion', 'LeccionController');
Route::resource('pregunta', 'PreguntaController');
Route::resource('pregunta_leccion', 'PreguntaLeccionController');
Route::resource('temario', 'TemarioController');
Route::get('temario/{id}/edit1b', array('uses' => 'TemarioController@edit1b', 'as' => 'editar-temario-inicio'));
Route::get('temario/{id}/edit2', array('uses' => 'TemarioController@edit2', 'as' => 'editar-temario-semanal'));
Route::get('temario/{id}/edit', array('uses' => 'TemarioController@edit', 'as' => 'editar-temario-info-curso'));
Route::get('leccion/{id}/edit', array('uses' => 'LeccionController@edit', 'as' => 'editar-leccion'));
Route::get('evaluacion/{id}/edit', array('uses' => 'EvaluacionController@edit', 'as' => 'editar-evaluacion'));
Route::get('pregunta/{id}/edit', array('uses' => 'PreguntaController@edit', 'as' => 'editar-pregunta'));
Route::get('borrar-pregunta/{id}', array('as' => 'borrar-pregunta', function ($id) {
    $pregunta = Pregunta::find($id);
    $id_tarea = $pregunta->id_evaluacion;
    $tarea = Evaluacion::find($id_tarea);
    $evaluacion = $tarea->id_curso;
    $pregunta->delete();
    return Redirect::route('ver-tarea', array($evaluacion, $id_tarea));
}))->where('id', '[0-9]+');
//
// RUTAS DEL Chat
//
Route::get("chat", array('as' => 'chat', function () {
    if (Session::get('user_id') == "") {
        return Redirect::to('index');
    }
    if (Session::get('user') == "") {
        return Redirect::to('index');
    }
    $nombre = Session::get('user', 'Anonimo');
Beispiel #4
0
    echo '<tr><td><span><b>Pregunta # ' . $i . '</b></span><span style="float:right">Tipo pregunta: ' . $value->tipPre_nombre . '</span></td></tr><tr><td>';
    $i++;
    //                if ($value->are_nombre != $area) {
    //                    echo '<b>Area: ' . $value->are_nombre . '</b><p>';
    //                    $area = $value->are_nombre;
    //                }
    //                if ($value->tem_nombre != $tema) {
    //                    echo '<b>Tema: ' . $value->tem_nombre . '</b><p>';
    //                    $tema = $value->tem_nombre;
    //                }
    if (!empty($value->pre_contexto)) {
        echo '<b>Contexto:</b> <br>' . utf8_encode($value->pre_contexto) . '<p>';
    }
    echo '<b>Pregunta:</b> <br>' . utf8_encode($value->pre_nombre) . '<p>';
    $pregu[] = $value->pre_id;
    @($datos = Evaluacion::obtener_respuestas($value->pre_id));
    foreach ($datos as $value2) {
        ?>
                    <div class="col-md-12">
                        <div class="col-md-1">
                            <input type="radio" name="<?php 
        echo $value2->pre_id;
        ?>
" class="obligado" value="<?php 
        echo $value2->res_id;
        ?>
" >
                        </div>
                        <div class="col-md-10">
                            <?php 
        echo $value2->res_nombre;
 public function getProgreso($id_curso)
 {
     $evaluaciones = Evaluacion::where('id_curso', '=', $id_curso)->where('calificable', '=', 'si')->where('semana', '>', 0)->count();
     //$evaluaciones = Evaluacion::where('id_curso','=', $id_curso)->where('calificable','=', 'si')->where('semana','>', 0)->count();
     return $evaluaciones;
 }
 public function getIdCurso()
 {
     $evaluacion = Evaluacion::where('id_evaluacion', '=', $this->id_evaluacion)->first();
     return $evaluacion->id_curso;
 }
                    data: data,
                    color: 'white'
                }],
                exporting: {
                    enabled: false
                }
            });
        });     
    });

</script>

<h1>Resultado</h1>

<?php 
$evaluacion = Evaluacion::model()->findByAttributes(array('id_evaluacion' => $evaluacion_id));
$matriz = Matriz::model()->findByAttributes(array('id_matriz' => $evaluacion->id_matriz));
$niveles = Nivel::model()->findAll();
$nive = array();
$resultado_graficar = array();
$repuestas_y_caracteristica = Yii::app()->db->createCommand("SELECT a.id_pregunta id_pregunta, a.id_respuesta metrica, " . "b.id_caracteristica caracteristica, c.valor valor   " . "FROM resultado a " . "LEFT JOIN pregunta b ON a.id_pregunta = b.id_pregunta " . "LEFT JOIN metrica c ON a.id_respuesta = c.id_metrica " . "WHERE id_evaluacion = " . $evaluacion_id)->queryAll();
foreach ($niveles as $n) {
    $respuestas = 0;
    $valor_por_nivel = 0;
    $id_pregunta_array = array();
    foreach ($repuestas_y_caracteristica as $ryc) {
        $repuestas_y_caracteristica2 = Yii::app()->db->createCommand(" SELECT a.id_caracteristica id_caracteristica " . "FROM caracteristica a " . "WHERE id_caracteristica in (" . $ryc['caracteristica'] . ") and id_nivel=" . $n['id_nivel'])->queryAll();
        if (count($repuestas_y_caracteristica2) >= 1) {
            $respuestas++;
            $id_pregunta_array[] = $ryc['id_pregunta'];
            $resultados_por_nivel = Yii::app()->db->createCommand(" SELECT * " . "FROM resultado a " . "LEFT JOIN metrica b ON a.id_respuesta = b.id_metrica " . "WHERE a.id_pregunta=" . $ryc['id_pregunta'] . " and a.id_evaluacion = " . $evaluacion_id)->queryAll();
Beispiel #8
0
     $smarty->display('evaluacion' . DS . 'evaluacion_menubar.tpl');
     $smarty->display('end_menubar.tpl');
     if (!$uperms['evaluacion_w']) {
         Elfic::cosRedirect('index2.php?com=evaluacion', MSG_NOPERM_ACC);
     } else {
         $e = new Evaluacion($_eid);
         $e->viewEvaluacion();
     }
     break;
 case 'cursos':
     $smarty->display('evaluacion' . DS . 'evaluacion_menubar.tpl');
     $smarty->display('end_menubar.tpl');
     if (!$uperms['evaluacion_r']) {
         Elfic::cosRedirect('index2.php', MSG_NOPERM_COM);
     } else {
         $e = new Evaluacion();
         $e->listarCursos();
     }
     break;
 case 'resultados':
     $smarty->assign('eid', $_eid);
     $smarty->display('encuestas' . DS . 'encuestas_resultados_menubar.tpl');
     $smarty->display('end_menubar.tpl');
     if (!$uperms['encuestas_w']) {
         Elfic::cosRedirect('index2.php', MSG_NOPERM_COM);
     } else {
         if ($_eid) {
             $r = new Resultados($_eid);
             $r->getInforme($_eid);
         }
     }
Beispiel #9
0
<?php

$stylesheet = '
    <link rel="stylesheet" type="text/css" href="' . Yii::app()->request->baseUrl . '/css/mpdf.css" />
    <link rel="stylesheet" type="text/css" href="' . Yii::app()->request->baseUrl . '/css/bootstrap.cerulean.min.css" />
    <body>';
$var = Evaluacion::model()->findByPk($_GET['id']);
//  Contiene datos de la Evaluacion a  imprimir
$var2 = EvaluacionPregunta::model()->findAllByAttributes(array('eva_id' => $var->eva_id));
// datos de las respuestas a la evaluacion a imprimir
$var3;
foreach ($var2 as $key => $value) {
    $var3[$key] = Pregunta::model()->findByPk($value->pre_id);
}
$table = "";
foreach ($var2 as $key => $value) {
    $respuesta = "";
    if ($value->pre_respuesta) {
        $respuesta = "SI";
    } else {
        $respuesta = "NO";
    }
    $table .= "<tr><td>" . ("<center>" . BsHtml::bold($key + "1", $htmlOptions = array('style' => 'font-size:110%;color:#000;'))) . "</td>\n    <td>" . ("<center>" . BsHtml::imageThumbnail(Yii::app()->request->baseUrl . "/images/pregunta/" . str_replace("/upload/preguntas/default/", '', $var3[$key]->pre_imagen), '', $htmlOptions = array('style' => 'width: 110px; height: 110px;margin-top: 5px;margin-bottom: 5px;border:1px solid #dddddd;'))) . "</td>\n    <td>" . ("<center>" . BsHtml::bold($var3[$key]->pre_descripcion, $htmlOptions = array('style' => 'font-size:110%;color:#000;')) . "<br>" . BsHtml::italics('"' . $var3[$key]->pre_comentario . '"', $htmlOptions = array('style' => 'font-size:90%;'))) . "</td>\n    <td>" . ("<center>" . BsHtml::bold($var3[$key]->tpr_nombre, $htmlOptions = array('style' => 'font-size:110%;color:#000;'))) . "</td>\n    <td>" . ("<center>" . BsHtml::bold($respuesta, $htmlOptions = array('style' => 'font-size:110%;color:#000;'))) . "</td></tr>";
}
// $header= BsHtml::pageHeader("Informe - Evaluación","<br>" .$var['emp_nombre']." - "."Usuario ".$var['usu_rut']);
$html = '<table class="table table-bordered table-striped">
  <thead>
    <tr>
      <th style="width:20px"><center>#</th>
      <th style="width:150px"><center>Imagen</th>
      <th><center>Descripción</th>
Beispiel #10
0
 /**
  * Retorna vista de listado de evaluaciones
  */
 public function evaluaciones()
 {
     $evaluaciones = Evaluacion::all();
     $evaluaciones->toarray();
     $this->layout->main = View::make('exam.evaluaciones', compact('evaluaciones'));
 }
Beispiel #11
0
 /**
  * @desc imprime plantilla con listado de cursos-tutores
  *  que puede evaluar un estudiante
  */
 public function listarCursos()
 {
     global $uid;
     $cursos = Evaluacion::getCursosArray($uid);
     $data = array();
     $i = 0;
     foreach ($cursos as $id => $curso) {
         $data[$i]['id'] = $id;
         $data[$i]['curso'] = $curso;
         $data[$i]['evaluado'] = $this->evaluado($id, $uid);
         $i++;
     }
     $tpl = new Elfic_Smarty();
     $tpl->assign('data', $data);
     $tpl->display('evaluacion' . DS . 'cursosList.tpl');
 }
 public function actionCuestionario()
 {
     $id_evaluacion = $_GET['id_evaluacion'];
     $evaluacion = Evaluacion::model()->findByAttributes(array('id_evaluacion' => $id_evaluacion));
     $aspectos = Yii::app()->db->createCommand("SELECT * FROM aspecto WHERE id_matriz=" . $evaluacion->id_matriz)->queryAll();
     $todas_carac = array();
     foreach ($aspectos as $carac) {
         $todas_carac[] = $carac['id_aspecto'];
     }
     $separado_por_comas = implode(",", $todas_carac);
     $preguntas = Yii::app()->db->createCommand("SELECT * FROM pregunta WHERE id_aspecto in (" . $separado_por_comas . ")")->queryAll();
     $todas_preguntas = array();
     foreach ($preguntas as $preg) {
         $todas_preguntas[] = $preg['id_pregunta'];
     }
     $separado_por_comas_preg = implode(",", $todas_preguntas);
     $posibles_respuestas = Yii::app()->db->createCommand("SELECT * FROM opcion_respuesta WHERE id_pregunta in (" . $separado_por_comas_preg . ")")->queryAll();
     $todas_respuestas = array();
     foreach ($posibles_respuestas as $pr) {
         $todas_respuestas[] = $pr['id_respuesta'];
     }
     $separado_por_comas_re = implode(",", $todas_respuestas);
     $this->render("cuestionario", array("preguntas_basa" => $preguntas, "mode1" => $evaluacion, "id" => $id_evaluacion, "comas" => $separado_por_comas, "comas2" => $separado_por_comas_preg, "comas3" => $separado_por_comas_re));
 }
Beispiel #13
0
 public function getAllEvaluaciones()
 {
     $evaluaciones = Evaluacion::where('id_curso', '=', $this->id_curso)->where('semana', '>', 0)->get();
     return $evaluaciones;
 }
 public function actionExcel()
 {
     Yii::import('ext.phpexcel.XPHPExcel');
     $objPHPExcel = XPHPExcel::createPHPExcel();
     // Set document properties
     $objPHPExcel->getProperties()->setCreator("Maarten Balliauw")->setLastModifiedBy("Maarten Balliauw")->setTitle("Office 2007 XLSX Test Document")->setSubject("Office 2007 XLSX Test Document")->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")->setKeywords("")->setCategory("");
     if (Usuario::model()->findByPk(Yii::app()->user->id)->usu_rol == "admins") {
         $var = Evaluacion::model()->findAll();
     } else {
         $var = Evaluacion::model()->findAllByAttributes(array('emp_rut' => Usuario::model()->findByPk(Yii::app()->user->id)->emp_rut));
     }
     foreach ($var as $key => $value) {
         if (Telefono::model()->findByAttributes(array('tel_numero' => $value->tel_numero, 'emp_rut' => $value->emp_rut)) != null) {
             $fono = Telefono::model()->findByAttributes(array('tel_numero' => $value->tel_numero, 'emp_rut' => $value->emp_rut))->tel_mac;
         } else {
             $fono = null;
         }
         $var2 = EvaluacionPregunta::model()->findAllByAttributes(array('eva_id' => $value->eva_id));
         // datos de las respuestas a la evaluacion a imprimir
         $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A' . ($key + 2), $key + 1)->setCellValue('B' . ($key + 2), $value->eva_fecha)->setCellValue('C' . ($key + 2), $value->usu_rut)->setCellValue('D' . ($key + 2), $value->emp_rut)->setCellValue('E' . ($key + 2), $value->emp_nombre)->setCellValue('F' . ($key + 2), $value->tel_numero)->setCellValue('G' . ($key + 2), $fono);
         $c = 7;
         $k = 0;
         $j = null;
         foreach ($var2 as $key2 => $value2) {
             if (Pregunta::model()->findByPk($value2->pre_id) != null) {
                 $descripcion = Pregunta::model()->findByPk($value2->pre_id)->pre_descripcion;
                 if ($value2->pre_respuesta) {
                     $respuesta = "SI";
                 } else {
                     $respuesta = "NO";
                 }
             } else {
                 $descripcion = "Sin resultados";
             }
             if ($c + $key2 > 25) {
                 $j = intval(($c + $key2) / 26);
                 $k = ($c + $key2) % 26;
             }
             if ($j == null) {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($key2 + 65 + $c) . ($key + 2), $descripcion);
             } else {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($j + 64) . chr($k + 65) . ($key + 2), $descripcion);
             }
             $c++;
             if ($c + $key2 > 25) {
                 $j = intval(($c + $key2) / 26);
                 $k = ($c + $key2) % 26;
             }
             if ($j == null) {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($key2 + 65 + $c) . ($key + 2), $respuesta);
             } else {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($j + 64) . chr($k + 65) . ($key + 2), $respuesta);
             }
         }
     }
     $j = null;
     $k = 0;
     $c = 1;
     for ($i = 7; $i < 107; $i++) {
         if ($i > 25) {
             $j = intval($i / 26);
             $k = $i - intval($i / 26) * 26;
         }
         if ($i % 2 != 0) {
             if ($j == null) {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($i + 65) . '1', "Pregunta" . " " . $c);
                 $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension(chr($i + 65))->setWidth(50);
             } else {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($j + 64) . chr($k + 65) . '1', "Pregunta" . " " . $c);
                 $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension(chr($j + 64) . chr($k + 65))->setWidth(50);
             }
         } else {
             if ($j == null) {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($i + 65) . '1', "Respuesta" . " " . $c);
                 $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension(chr($i + 65))->setWidth(15);
                 $c++;
             } else {
                 $objPHPExcel->setActiveSheetIndex(0)->setCellValue(chr($j + 64) . chr($k + 65) . '1', "Respuesta" . " " . $c);
                 $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension(chr($j + 64) . chr($k + 65))->setWidth(15);
                 $c++;
             }
         }
     }
     $objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', 'N°')->setCellValue('B1', 'fecha')->setCellValue('C1', 'Usuario')->setCellValue('D1', 'Rut Empresa')->setCellValue('E1', 'Empresa')->setCellValue('F1', 'N° Telefono')->setCellValue('G1', 'Mac Telefono');
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('A')->setWidth(10);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('B')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('C')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('D')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('E')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('F')->setWidth(20);
     $objPHPExcel->setActiveSheetIndex(0)->getColumnDimension('G')->setWidth(25);
     // Rename worksheet
     $objPHPExcel->getActiveSheet()->setTitle('Simple');
     // Set active sheet index to the first sheet, so Excel opens this as the first sheet
     $objPHPExcel->setActiveSheetIndex(0);
     // Redirect output to a client’s web browser (Excel5)
     header('Content-Type: application/vnd.ms-excel');
     header('Content-Disposition: attachment;filename="informe.xls"');
     header('Cache-Control: max-age=0');
     // If you're serving to IE 9, then the following may be needed
     header('Cache-Control: max-age=1');
     // If you're serving to IE over SSL, then the following may be needed
     header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
     // Date in the past
     header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
     // always modified
     header('Cache-Control: cache, must-revalidate');
     // HTTP/1.1
     header('Pragma: public');
     // HTTP/1.0
     $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
     $objWriter->save('php://output');
     exit;
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id)
 {
     $evaluacion = Evaluacion::find($id);
     $data = Input::all();
     // Revisamos si la data es válida y guardamos en ese caso
     if ($evaluacion->validAndSave($data)) {
         // Y Devolvemos una redirección a la acción show para mostrar el materia
         return Redirect::route('evaluacion.edit', array($evaluacion->id_evaluacion));
     } else {
         // En caso de error regresa a la acción create con los datos y los errores encontrados
         return Redirect::route('evaluacion.edit', $evaluacion->id_evaluacion)->withInput()->withErrors($evaluacion->errors);
     }
 }
Beispiel #16
0
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer $id the ID of the model to be loaded
  * @return Evaluacion the loaded model
  * @throws CHttpException
  */
 public function loadModel($id)
 {
     $model = Evaluacion::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, 'The requested page does not exist.');
     }
     return $model;
 }
 public function getEvaluacion()
 {
     $evaluacion = Evaluacion::find($this->id_evaluacion);
     return $evaluacion;
 }