Se muestra la lista de solicitudes por aprobar
This commit is contained in:
parent
1f0e954714
commit
a0df31e430
@ -15,7 +15,7 @@ class Auth extends \Myth\Auth\Config\Auth
|
|||||||
*
|
*
|
||||||
* @var string
|
* @var string
|
||||||
*/
|
*/
|
||||||
public $defaultUserGroup;
|
public $defaultUserGroup = 'Prestadores';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------
|
* --------------------------------------------------------------------
|
||||||
|
@ -26,6 +26,7 @@ class Filters extends BaseConfig
|
|||||||
'invalidchars' => InvalidChars::class,
|
'invalidchars' => InvalidChars::class,
|
||||||
'secureheaders' => SecureHeaders::class,
|
'secureheaders' => SecureHeaders::class,
|
||||||
'login' => \Myth\Auth\Filters\LoginFilter::class,
|
'login' => \Myth\Auth\Filters\LoginFilter::class,
|
||||||
|
'role' => \Myth\Auth\Filters\RoleFilter::class,
|
||||||
'inicio' => InicioFilter::class,
|
'inicio' => InicioFilter::class,
|
||||||
'formulario_inicial' => FormularioInicialFilter::class,
|
'formulario_inicial' => FormularioInicialFilter::class,
|
||||||
];
|
];
|
||||||
|
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
namespace Config;
|
namespace Config;
|
||||||
|
|
||||||
|
use CodeIgniter\Commands\Utilities\Routes;
|
||||||
|
|
||||||
// Create a new instance of our RouteCollection class.
|
// Create a new instance of our RouteCollection class.
|
||||||
$routes = Services::routes();
|
$routes = Services::routes();
|
||||||
|
|
||||||
@ -32,19 +34,49 @@ $routes->set404Override();
|
|||||||
* Route Definitions
|
* Route Definitions
|
||||||
* --------------------------------------------------------------------
|
* --------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// We get a performance increase by specifying the default
|
// We get a performance increase by specifying the default
|
||||||
// route since we don't have to scan directories.
|
// route since we don't have to scan directories.
|
||||||
$routes->get('/', 'Prestador::index');
|
$routes->get('/', 'Prestador::index', ['as' => 'home']);
|
||||||
$routes->get('horas/', 'Prestador::horas');
|
$routes->get('horas/', 'Prestador::horas');
|
||||||
$routes->match(['get', 'post'], 'registro/', 'Prestador::formulario');
|
$routes->match(['get', 'post'], 'registro/', 'Prestador::formulario');
|
||||||
$routes->get('success', 'Prestador::success');
|
$routes->get('success', 'Prestador::success');
|
||||||
|
|
||||||
|
// ENCUESTAS
|
||||||
|
$routes->get('encuesta/answered', 'Encuesta::userAnswered');
|
||||||
|
$routes->get('encuesta/(:segment)', 'Encuesta::encuesta/$1', ['as' => 'encuesta']);
|
||||||
|
$routes->post('encuesta/submit/(:segment)', 'Encuesta::submit/$1', ['as' => 'encuesta_submit']);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// utilizar m<>todo attemptRegister personalizdo (no requiere de username)
|
// utilizar m<>todo attemptRegister personalizdo (no requiere de username)
|
||||||
$routes->post('register/', 'Auth::attemptRegister');
|
$routes->post('register/', 'Auth::attemptRegister');
|
||||||
|
// $routes->post('login/', 'Auth::attemptLogin');
|
||||||
|
|
||||||
$routes->group('admin', static function ($routes) {
|
$routes->group('admin', ['filter' => 'role:Admin'], static function ($routes) {
|
||||||
$routes->get('/', 'Admin::home', ['as' => 'admin_home']);
|
$routes->get('/', 'Admin::home', ['as' => 'admin_home']);
|
||||||
|
|
||||||
|
// SOLICITUDES
|
||||||
|
$routes->get('solicitudes/', 'Admin::solicitudes', ['as' => 'admin_solicitudes']);
|
||||||
|
$routes->get('solicitud/aprobar/(:segment)', 'Admin::aprobarSolicitud/$1', ['as' => 'admin_solicitud_aprobar']);
|
||||||
|
$routes->get('solicitud/rechazar/(:segment)', 'Admin::rechazarSolicitud/$1', ['as' => 'admin_solicitud_rechazar']);
|
||||||
|
$routes->get('solicitud/(:segment)', 'Admin::revisarSolicitud/$1', ['as' => 'admin_solicitud_revisar']);
|
||||||
|
|
||||||
|
// ENCUESTAS
|
||||||
|
$routes->get('encuestas/', 'Admin::encuestas', ['as' => 'admin_encuestas']);
|
||||||
|
$routes->match(['get', 'post'], 'encuesta/nueva', 'Admin::nuevaEncuesta', ['as' => 'admin_encuesta_nueva']);
|
||||||
|
$routes->get('encuesta/(:segment)', 'Admin::encuesta/$1', ['as' => 'admin_encuesta']);
|
||||||
|
$routes->match(['get', 'post'], 'encuesta/editar/(:segment)', 'Admin::editarEncuesta/$1', ['as' => 'admin_encuesta_editar']);
|
||||||
|
$routes->get('encuesta/eliminar/(:segment)', 'Admin::eliminarEncuesta/$1', ['as' => 'admin_encuesta_eliminar']);
|
||||||
|
|
||||||
|
// PREGUNTAS
|
||||||
|
$routes->match(['get', 'post'], 'encuesta/(:segment)/pregunta/', 'Admin::nuevaPregunta/$1', ['as' => 'admin_pregunta_nueva']);
|
||||||
|
$routes->match(['get', 'post'], 'pregunta/editar/(:segment)', 'Admin::editarPregunta/$1', ['as' => 'admin_pregunta_editar']);
|
||||||
|
$routes->post('pregunta_post', 'Admin::preguntaPost', ['as' => 'pregunta_post']);
|
||||||
|
$routes->get('pregunta/eliminar/(:segment)', 'Admin::eliminarPregunta/$1', ['as' => 'admin_pregunta_eliminar']);
|
||||||
|
|
||||||
|
// GRUPOS
|
||||||
|
$routes->get('create_group/', 'Admin::createGroup');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@ -2,11 +2,290 @@
|
|||||||
|
|
||||||
namespace App\Controllers;
|
namespace App\Controllers;
|
||||||
|
|
||||||
|
use App\Entities\PrestadorSolicitudModel;
|
||||||
|
use App\Models\EncuestaModel;
|
||||||
|
use App\Models\PreguntaModel;
|
||||||
|
use App\Models\PrestadorModel;
|
||||||
|
use App\Models\PrestadorSolicitudModel as ModelsPrestadorSolicitudModel;
|
||||||
|
use App\Models\UserModel;
|
||||||
|
|
||||||
class Admin extends BaseController
|
class Admin extends BaseController
|
||||||
{
|
{
|
||||||
public function home()
|
public function home()
|
||||||
{
|
{
|
||||||
$data['title'] = 'Inicio';
|
$data = [
|
||||||
|
'title' => 'Inicio',
|
||||||
|
'solicitudes' => model(PrestadorSolicitudModel::class)->countSolicitudes(),
|
||||||
|
'prestadoresActivos' => model(PrestadorModel::class)->countPrestadoresActivos(),
|
||||||
|
];
|
||||||
return view('Admin/index', $data);
|
return view('Admin/index', $data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// SOLICITUDES
|
||||||
|
public function solicitudes()
|
||||||
|
{
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'title' => 'Solicitudes',
|
||||||
|
'solicitudes' => model(PrestadorSolicitudModel::class)->getPrestadorSolicitud(),
|
||||||
|
];
|
||||||
|
return view('Admin/solicitudes', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function revisarSolicitud($id)
|
||||||
|
{
|
||||||
|
|
||||||
|
$model = model(ModelsPrestadorSolicitudModel::class);
|
||||||
|
|
||||||
|
if (!$datos = $model->find($id)) {
|
||||||
|
return redirect()->route('admin_solicitudes')->with('msg', array(
|
||||||
|
'type' => 'danger',
|
||||||
|
'body' => 'Solicitud no encontrada'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'id' => $id,
|
||||||
|
'email' => user()->email,
|
||||||
|
'escuelas' => model(EscuelaModel::class)->getEscuelas(),
|
||||||
|
'departamentos' => model(DepartamentoModel::class)->getDepartamentos(),
|
||||||
|
'datos' => $datos,
|
||||||
|
'revisar' => true,
|
||||||
|
];
|
||||||
|
|
||||||
|
return view('Prestador/formulario_inicial', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function aprobarSolicitud($id)
|
||||||
|
{
|
||||||
|
$solicitudModel = model(ModelsPrestadorSolicitudModel::class);
|
||||||
|
|
||||||
|
// Validar que la solicitud existe
|
||||||
|
if (!$solicitud = $solicitudModel->find($id)) {
|
||||||
|
return redirect()->route('admin_solicitudes')->with('msg', array(
|
||||||
|
'type' => 'danger',
|
||||||
|
'body' => 'Solicitud no encontrada'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Verificar que status de la solicitud == 0
|
||||||
|
if ($solicitud['status'] != 0) {
|
||||||
|
return redirect()->route('admin_solicitudes')->with('msg', array(
|
||||||
|
'type' => 'danger',
|
||||||
|
'body' => 'El status de esta solicitud no permite que sea aprobada'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Encontrar usuario que mandó la solicitud
|
||||||
|
if (!$user = model(UserModel::class)->findUserWithSolicitud($id)) {
|
||||||
|
return redirect()->route('admin_solicitudes')->with('msg', array(
|
||||||
|
'type' => 'danger',
|
||||||
|
'body' => 'Ningún usuario tiene esa solicitud registrada.'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Crear registro en la tabla prestador
|
||||||
|
$prestadorModel = model(PrestadorModel::class);
|
||||||
|
|
||||||
|
// Asignar id de la tabla prestador al usuario aprobado
|
||||||
|
|
||||||
|
// Cambiar status de la solicitud
|
||||||
|
|
||||||
|
return redirect()->route('admin_solicitudes')->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Solicitud aprobada. Se activo la cuenta del prestador.'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function rechazarSolicitud($id)
|
||||||
|
{
|
||||||
|
echo 'rechazandp solicitud ' . $id;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ENCUESTAS
|
||||||
|
public function encuestas()
|
||||||
|
{
|
||||||
|
$data = [
|
||||||
|
'title' => 'Encuestas',
|
||||||
|
'encuestas' => model(EncuestaModel::class)->getEncuestas(),
|
||||||
|
];
|
||||||
|
return view('Admin/encuestas.php', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function encuesta($id)
|
||||||
|
{
|
||||||
|
$data = [
|
||||||
|
'id' => $id,
|
||||||
|
'encuesta' => model(EncuestaModel::class)->getEncuestas($id, true),
|
||||||
|
'preguntas' => model(PreguntaModel::class)->getPreguntas($id),
|
||||||
|
|
||||||
|
];
|
||||||
|
return view('Admin/encuesta', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function nuevaEncuesta()
|
||||||
|
{
|
||||||
|
// Guardar encuesta
|
||||||
|
if ($this->request->getMethod() === 'post') {
|
||||||
|
$encuesta = model(EncuestaModel::class);
|
||||||
|
|
||||||
|
$data = $this->request->getPost();
|
||||||
|
// agregar id del usuario actual
|
||||||
|
$data['user_id'] = user_id();
|
||||||
|
|
||||||
|
// Validar datos
|
||||||
|
if (!$encuesta->save($data)) {
|
||||||
|
return redirect()->back()->withInput()->with('errors', $encuesta->errors());
|
||||||
|
}
|
||||||
|
|
||||||
|
return redirect()->route('admin_encuestas')->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Encuesta creada correctamente.'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
$data = [
|
||||||
|
'title' => 'Nueva encuesta',
|
||||||
|
];
|
||||||
|
return view('Admin/formularioEncuesta', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function editarEncuesta($id)
|
||||||
|
{
|
||||||
|
$encuesta = model(EncuestaModel::class);
|
||||||
|
|
||||||
|
if ($this->request->getMethod() === 'post') {
|
||||||
|
|
||||||
|
$data = $this->request->getPost();
|
||||||
|
|
||||||
|
if (!$encuesta->update($id, $data)) {
|
||||||
|
return redirect()->back()->withInput()->with('errors', $encuesta->errors());
|
||||||
|
}
|
||||||
|
return redirect()->route('admin_encuestas')->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Encuesta editada correctamente',
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'id' => $id,
|
||||||
|
'title' => 'Modificar encuesta',
|
||||||
|
'datos' => $encuesta->getEncuestas($id),
|
||||||
|
];
|
||||||
|
|
||||||
|
return view('Admin/formularioEncuesta', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function eliminarEncuesta($id)
|
||||||
|
{
|
||||||
|
if (!model(EncuestaModel::class)->delete($id)) {
|
||||||
|
return redirect()->route('admin_encuestas')->with('msg', array(
|
||||||
|
'type' => 'error',
|
||||||
|
'body' => 'Error al eliminar la encuesta.'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
return redirect()->route('admin_encuestas')->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Encuesta eliminada correctamente.'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
// PREGUNTAS
|
||||||
|
|
||||||
|
public function nuevaPregunta($id)
|
||||||
|
{
|
||||||
|
if ($this->request->getMethod() === 'post') {
|
||||||
|
$pregunta = model(PreguntaModel::class);
|
||||||
|
|
||||||
|
$data = $this->request->getPost();
|
||||||
|
|
||||||
|
// Relacionar encuesta($id) con pregunta(survey_id)
|
||||||
|
$data['survey_id'] = $id;
|
||||||
|
$data['order_by'] = 1;
|
||||||
|
|
||||||
|
|
||||||
|
// Validar y guardar datos
|
||||||
|
if (!$pregunta->save($data)) {
|
||||||
|
return redirect()->back()->withInput()->with('errors', $pregunta->errors());
|
||||||
|
}
|
||||||
|
|
||||||
|
$url = 'admin/encuesta/' . $id;
|
||||||
|
return redirect()->to($url)->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Pregunta registrada correctamente',
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'title' => 'Nueva pregunta',
|
||||||
|
'id' => $id,
|
||||||
|
];
|
||||||
|
|
||||||
|
return view('Admin/formularioPregunta', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function editarPregunta($id)
|
||||||
|
{
|
||||||
|
$pregunta = model(PreguntaModel::class);
|
||||||
|
|
||||||
|
if ($this->request->getMethod() === 'post') {
|
||||||
|
|
||||||
|
$data = $this->request->getPost();
|
||||||
|
if (!$pregunta->update($id, $data)) {
|
||||||
|
return redirect()->back()->withInput()->with('errors', $pregunta->errors());
|
||||||
|
}
|
||||||
|
|
||||||
|
$encuestaId = $pregunta->find($id)['survey_id'];
|
||||||
|
|
||||||
|
$url = 'admin/encuesta/' . $encuestaId;
|
||||||
|
return redirect()->to($url)->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Pregunta registrada correctamente',
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'preguntaId' => $id,
|
||||||
|
'title' => 'Editar pregunta',
|
||||||
|
'datos' => $pregunta->find($id),
|
||||||
|
];
|
||||||
|
return view('Admin/formularioPregunta', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function eliminarPregunta(int $id)
|
||||||
|
{
|
||||||
|
$model = model('PreguntaModel');
|
||||||
|
|
||||||
|
if (!$pregunta = $model->find($id)) {
|
||||||
|
throw \CodeIgniter\Exceptions\PageNotFoundException::forPageNotFound();
|
||||||
|
}
|
||||||
|
|
||||||
|
$encuestaId = $pregunta['survey_id'];
|
||||||
|
$model->delete($id);
|
||||||
|
|
||||||
|
$url = 'admin/encuesta/' . $encuestaId;
|
||||||
|
|
||||||
|
return redirect()->to($url)->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Pregunta eliminada correctamente',
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
public function preguntaPost()
|
||||||
|
{
|
||||||
|
$data = $this->request->getPost();
|
||||||
|
$data['survey_id'] = 1;
|
||||||
|
$data['order_by'] = 1;
|
||||||
|
|
||||||
|
var_dump($data);
|
||||||
|
}
|
||||||
|
|
||||||
|
// GRUPOS
|
||||||
|
public function createGroup()
|
||||||
|
{
|
||||||
|
// $authorize = service('authorization');
|
||||||
|
// $id = $authorize->createGroup('Prestador', 'Prestadores de Servicio Social o Prácticas Profesionales');
|
||||||
|
// echo $id;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -68,4 +68,45 @@ class Auth extends MythAuthController
|
|||||||
// Success!
|
// Success!
|
||||||
return redirect()->route('login')->with('message', lang('Auth.registerSuccess'));
|
return redirect()->route('login')->with('message', lang('Auth.registerSuccess'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function attemptLogin()
|
||||||
|
{
|
||||||
|
$rules = [
|
||||||
|
'login' => 'required',
|
||||||
|
'password' => 'required',
|
||||||
|
];
|
||||||
|
if ($this->config->validFields === ['email']) {
|
||||||
|
$rules['login'] .= '|valid_email';
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$this->validate($rules)) {
|
||||||
|
return redirect()->back()->withInput()->with('errors', $this->validator->getErrors());
|
||||||
|
}
|
||||||
|
|
||||||
|
$login = $this->request->getPost('login');
|
||||||
|
$password = $this->request->getPost('password');
|
||||||
|
$remember = (bool) $this->request->getPost('remember');
|
||||||
|
|
||||||
|
// Determine credential type
|
||||||
|
$type = filter_var($login, FILTER_VALIDATE_EMAIL) ? 'email' : 'username';
|
||||||
|
|
||||||
|
// Try to log them in...
|
||||||
|
if (!$this->auth->attempt([$type => $login, 'password' => $password], $remember)) {
|
||||||
|
return redirect()->back()->withInput()->with('error', $this->auth->error() ?? lang('Auth.badAttempt'));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Is the user being forced to reset their password?
|
||||||
|
if ($this->auth->user()->force_pass_reset === true) {
|
||||||
|
return redirect()->to(route_to('reset-password') . '?token=' . $this->auth->user()->reset_hash)->withCookies();
|
||||||
|
}
|
||||||
|
|
||||||
|
$redirectURL = session('redirect_url') ?? site_url('/');
|
||||||
|
unset($_SESSION['redirect_url']);
|
||||||
|
|
||||||
|
helper('auth');
|
||||||
|
if (user()->in_groups('Admin'))
|
||||||
|
$redirectURL = site_url('/admin');
|
||||||
|
|
||||||
|
return redirect()->to($redirectURL)->withCookies()->with('message', lang('Auth.loginSuccess'));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
92
app/Controllers/Encuesta.php
Normal file
92
app/Controllers/Encuesta.php
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Controllers;
|
||||||
|
|
||||||
|
use App\Models\EncuestaModel;
|
||||||
|
use App\Models\PreguntaModel;
|
||||||
|
use App\Models\RespuestaModel;
|
||||||
|
use App\Models\SurveyUserModel;
|
||||||
|
use App\Models\UserModel;
|
||||||
|
use phpDocumentor\Reflection\DocBlock\Tags\TagWithType;
|
||||||
|
|
||||||
|
class Encuesta extends BaseController
|
||||||
|
{
|
||||||
|
public function encuesta($id)
|
||||||
|
{
|
||||||
|
if (!$encuesta = model(EncuestaModel::class)->find($id)) {
|
||||||
|
throw \CodeIgniter\Exceptions\PageNotFoundException::forPageNotFound();
|
||||||
|
}
|
||||||
|
$data = [
|
||||||
|
'id' => $encuesta['id'],
|
||||||
|
'title' => $encuesta['title'],
|
||||||
|
'preguntas' => model(PreguntaModel::class)->getPreguntas($id),
|
||||||
|
];
|
||||||
|
return view('Encuesta/template', $data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function submit($id)
|
||||||
|
{
|
||||||
|
$respuestaModel = model(RespuestaModel::class);
|
||||||
|
$userId = user_id();
|
||||||
|
|
||||||
|
$data = $this->request->getPost();
|
||||||
|
$respuestas = [];
|
||||||
|
|
||||||
|
foreach ($data as $questionId => $answer) {
|
||||||
|
if (is_array($answer)) {
|
||||||
|
foreach ($answer as $a) {
|
||||||
|
$respuesta = [
|
||||||
|
'survey_id' => $id,
|
||||||
|
'user_id' => $userId,
|
||||||
|
'answer' => $a,
|
||||||
|
'question_id' => $questionId,
|
||||||
|
];
|
||||||
|
array_push($respuestas, $respuesta);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$respuesta = [
|
||||||
|
'survey_id' => $id,
|
||||||
|
'user_id' => $userId,
|
||||||
|
'answer' => $answer,
|
||||||
|
'question_id' => $questionId,
|
||||||
|
];
|
||||||
|
|
||||||
|
array_push($respuestas, $respuesta);
|
||||||
|
}
|
||||||
|
// $answer = implode(chr(13), $answer);
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
if (!$respuestaModel->insertBatch($respuestas)) {
|
||||||
|
return redirect()->back()
|
||||||
|
->with('msg', array(
|
||||||
|
'type' => 'danger',
|
||||||
|
'body' => 'No se pudo guardar la encuesta. Inténtalo nuevamente.'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Registrar que usuario respondió encuesta
|
||||||
|
$surveyUserModel = model(SurveyUserModel::class);
|
||||||
|
$surveyUserModel->save([
|
||||||
|
'survey_id' => $id,
|
||||||
|
'user_id' => $userId,
|
||||||
|
]);
|
||||||
|
|
||||||
|
return redirect()->route('home')->with('msg', array(
|
||||||
|
'type' => 'success',
|
||||||
|
'body' => 'Encuesta guardada correctamente'
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function userAnswered()
|
||||||
|
{
|
||||||
|
$surveyUserModel = model(SurveyUserModel::class);
|
||||||
|
|
||||||
|
$encuestaId = 23;
|
||||||
|
$userId = user_id();
|
||||||
|
|
||||||
|
echo $surveyUserModel->alreadyAnswered($encuestaId, $userId);
|
||||||
|
}
|
||||||
|
}
|
@ -3,6 +3,7 @@
|
|||||||
namespace App\Controllers;
|
namespace App\Controllers;
|
||||||
|
|
||||||
use App\Models\DepartamentoModel;
|
use App\Models\DepartamentoModel;
|
||||||
|
use App\Models\EncuestaModel;
|
||||||
use App\Models\EscuelaModel;
|
use App\Models\EscuelaModel;
|
||||||
use App\Models\HorasModel;
|
use App\Models\HorasModel;
|
||||||
use App\Models\PrestadorModel;
|
use App\Models\PrestadorModel;
|
||||||
@ -24,11 +25,18 @@ class Prestador extends BaseController
|
|||||||
return $carry + $item['segundos'];
|
return $carry + $item['segundos'];
|
||||||
}, 0);
|
}, 0);
|
||||||
|
|
||||||
|
// Consultar encuestas disponibles
|
||||||
|
$encuestaModel = model(EncuestaModel::class);
|
||||||
|
$horasARealizar = model(PrestadorModel::class)->find(user()->idprestador)['horas_servicio'];
|
||||||
|
$porcentajeRealizado = $segundosTotal / ($horasARealizar * 1000);
|
||||||
|
|
||||||
|
$encuestas = $encuestaModel->getPrestadorEncuestas($porcentajeRealizado);
|
||||||
|
|
||||||
$data = [
|
$data = [
|
||||||
'segundosMensuales' => $segundosMensuales,
|
'segundosMensuales' => $segundosMensuales,
|
||||||
'horasTotales' => $segundosTotal / 3600,
|
'horasTotales' => $segundosTotal / 3600,
|
||||||
'segundosDiarios' => $segundosDiarios,
|
'segundosDiarios' => $segundosDiarios,
|
||||||
|
'encuestas' => $encuestas,
|
||||||
];
|
];
|
||||||
|
|
||||||
return view('Prestador/index', $data);
|
return view('Prestador/index', $data);
|
||||||
@ -75,8 +83,9 @@ class Prestador extends BaseController
|
|||||||
'email' => user()->email,
|
'email' => user()->email,
|
||||||
'escuelas' => model(EscuelaModel::class)->getEscuelas(),
|
'escuelas' => model(EscuelaModel::class)->getEscuelas(),
|
||||||
'departamentos' => model(DepartamentoModel::class)->getDepartamentos(),
|
'departamentos' => model(DepartamentoModel::class)->getDepartamentos(),
|
||||||
'datos' => $prestadorModel->getPrestadorSolicitud(user()->rh_prestador_solicitud_id),
|
'datos' => user()->rh_prestador_solicitud_id ? $prestadorModel->find(user()->rh_prestador_solicitud_id) : null,
|
||||||
];
|
];
|
||||||
|
|
||||||
return view('Prestador/formulario_inicial', $data);
|
return view('Prestador/formulario_inicial', $data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
63
app/Models/EncuestaModel.php
Normal file
63
app/Models/EncuestaModel.php
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use CodeIgniter\Model;
|
||||||
|
|
||||||
|
|
||||||
|
class EncuestaModel extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'survey_set';
|
||||||
|
protected $primaryKey = 'id';
|
||||||
|
protected $useTimestamps = true;
|
||||||
|
|
||||||
|
protected $allowedFields = ['title', 'description', 'user_id', 'perfil', 'fecha', 'status'];
|
||||||
|
|
||||||
|
protected $validationRules = [
|
||||||
|
'title' => 'required',
|
||||||
|
'user_id' => 'required',
|
||||||
|
'perfil' => 'required',
|
||||||
|
'fecha' => 'required',
|
||||||
|
'status' => 'required',
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
public function getEncuestas($id = null, $verbose = false)
|
||||||
|
{
|
||||||
|
if (!$id) {
|
||||||
|
return $this->findAll();
|
||||||
|
}
|
||||||
|
|
||||||
|
$encuesta = $this->where('id', $id)->first();
|
||||||
|
|
||||||
|
if ($verbose && $encuesta) {
|
||||||
|
$encuesta['perfil_nombre'] = $encuesta['perfil'] == 1 ? 'Personal de CEJ' : 'Prestador';
|
||||||
|
$encuesta['status_nombre'] = $encuesta['status'] == 0 ? 'No publicada' : 'Publicada';
|
||||||
|
|
||||||
|
switch ($encuesta['fecha']) {
|
||||||
|
case 1:
|
||||||
|
$encuesta['fecha_nombre'] = 'Inicio de servicio';
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
$encuesta['fecha_nombre'] = '50% de horas o más';
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
$encuesta['fecha_nombre'] = 'Al terminar el servicio';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $encuesta;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getPrestadorEncuestas($porcentajeCompletado)
|
||||||
|
{
|
||||||
|
$fecha = 1 + $porcentajeCompletado * 2;
|
||||||
|
|
||||||
|
return $this
|
||||||
|
->select(['id', 'title'])
|
||||||
|
->where('perfil', 2)
|
||||||
|
->where('fecha <=', $fecha)
|
||||||
|
->findAll();
|
||||||
|
}
|
||||||
|
}
|
27
app/Models/PreguntaModel.php
Normal file
27
app/Models/PreguntaModel.php
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use CodeIgniter\Model;
|
||||||
|
|
||||||
|
class PreguntaModel extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'questions';
|
||||||
|
protected $primaryKey = 'id';
|
||||||
|
protected $useTimestamps = true;
|
||||||
|
|
||||||
|
protected $allowedFields = ['question', 'frm_option', 'type', 'order_by', 'survey_id'];
|
||||||
|
|
||||||
|
protected $validationRules = [
|
||||||
|
'question' => 'required',
|
||||||
|
'survey_id' => 'required',
|
||||||
|
'type' => 'required',
|
||||||
|
];
|
||||||
|
|
||||||
|
public function getPreguntas($encuestaId)
|
||||||
|
{
|
||||||
|
return $this
|
||||||
|
->where('survey_id', $encuestaId)
|
||||||
|
->findAll();
|
||||||
|
}
|
||||||
|
}
|
@ -10,9 +10,25 @@ class PrestadorModel extends Model
|
|||||||
protected $primaryKey = 'idprestador';
|
protected $primaryKey = 'idprestador';
|
||||||
protected $useTimestamps = false;
|
protected $useTimestamps = false;
|
||||||
|
|
||||||
|
protected $allowedFields = [
|
||||||
|
'nombre', 'apaterno', 'amaterno', 'fechanac',
|
||||||
|
'direccion', 'colonia', 'municipio', 'cp',
|
||||||
|
'telefono', 'celular', 'email',
|
||||||
|
'idescuela', 'carrera', 'grado', 'turno',
|
||||||
|
'tipo', 'fechainicio', 'iddepartamento_actual', 'horas_servicio',
|
||||||
|
'codigo_estudiante', 'horario',
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
function getPrestador($id = null)
|
function getPrestador($id = null)
|
||||||
{
|
{
|
||||||
return $this->where('idprestador', $id)->first();
|
return $this->where('idprestador', $id)->first();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function countPrestadoresActivos()
|
||||||
|
{
|
||||||
|
return $this
|
||||||
|
->where('status', 0)
|
||||||
|
->countAllResults();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -54,14 +54,19 @@ class PrestadorSolicitudModel extends Model
|
|||||||
];
|
];
|
||||||
|
|
||||||
|
|
||||||
// protected $validationMessages = [
|
|
||||||
// 'email' => [
|
|
||||||
// 'is_unique' => 'Sorry. That email has already been taken. Please choose another.',
|
|
||||||
// ],
|
|
||||||
// ];
|
|
||||||
|
|
||||||
function getPrestadorSolicitud($id = null)
|
function getPrestadorSolicitud($id = null)
|
||||||
{
|
{
|
||||||
|
if (!$id) {
|
||||||
|
return $this->where('status', 0)->findAll();
|
||||||
|
}
|
||||||
return $this->where('id', $id)->first();
|
return $this->where('id', $id)->first();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function countSolicitudes()
|
||||||
|
{
|
||||||
|
return $this
|
||||||
|
->where('status', 0)
|
||||||
|
->countAllResults();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
21
app/Models/RespuestaModel.php
Normal file
21
app/Models/RespuestaModel.php
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use CodeIgniter\Model;
|
||||||
|
|
||||||
|
class PreguntaModel extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'answers';
|
||||||
|
protected $primaryKey = 'id';
|
||||||
|
protected $useTimestamps = true;
|
||||||
|
|
||||||
|
protected $allowedFields = ['survey_id', 'user_id', 'answer', 'question_id'];
|
||||||
|
|
||||||
|
protected $validationRules = [
|
||||||
|
'survey_id' => 'required',
|
||||||
|
'user_id' => 'required',
|
||||||
|
'answer' => 'required',
|
||||||
|
'question_id' => 'required',
|
||||||
|
];
|
||||||
|
}
|
27
app/Models/SurveyUserModel.php
Normal file
27
app/Models/SurveyUserModel.php
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use CodeIgniter\Model;
|
||||||
|
|
||||||
|
class SurveyUserModel extends Model
|
||||||
|
{
|
||||||
|
protected $table = 'survey_user';
|
||||||
|
protected $useTimestamps = true;
|
||||||
|
|
||||||
|
protected $allowedFields = ['survey_id', 'user_id'];
|
||||||
|
|
||||||
|
protected $validationRules = [
|
||||||
|
'survey_id' => 'required',
|
||||||
|
'user_id' => 'required',
|
||||||
|
];
|
||||||
|
|
||||||
|
|
||||||
|
public function alreadyAnswered($surveyId, $userId)
|
||||||
|
{
|
||||||
|
return $this->where([
|
||||||
|
'survey_id' => $surveyId,
|
||||||
|
'user_id' => $userId,
|
||||||
|
])->countAllResults();
|
||||||
|
}
|
||||||
|
}
|
@ -120,4 +120,13 @@ class UserModel extends Model
|
|||||||
'password' => bin2hex(random_bytes(16)),
|
'password' => bin2hex(random_bytes(16)),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function findUserWithSolicitud($solicitudId)
|
||||||
|
{
|
||||||
|
return $this
|
||||||
|
// ->select('id')
|
||||||
|
->where('rh_prestador_solicitud_id', $solicitudId)
|
||||||
|
->first();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
95
app/Views/Admin/encuesta.php
Normal file
95
app/Views/Admin/encuesta.php
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
<?= $this->extend('templates/baseAdmin') ?>
|
||||||
|
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<h5 class="card-title"><?= $encuesta['title'] ?></h5>
|
||||||
|
<br>
|
||||||
|
<p><?= $encuesta['description'] ?></p>
|
||||||
|
<p>Perfil: <strong><?= $encuesta['perfil_nombre'] ?></strong></p>
|
||||||
|
<p>Fecha: <strong><?= $encuesta['fecha_nombre'] ?></strong></p>
|
||||||
|
<p>Status: <strong><?= $encuesta['status_nombre'] ?></strong></p>
|
||||||
|
<a href="<?= route_to('admin_encuesta_editar', $id) ?>" class="card-link">Editar encuesta</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="d-flex justify-content-between mb-3">
|
||||||
|
<h2>Preguntas</h2>
|
||||||
|
<a href="<?= route_to('admin_pregunta_nueva', $id) ?>" class="btn btn-outline-dark align-items-start mr-3"><i class="right fas fa-plus-circle"></i> Nueva pregunta</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<table class="table">
|
||||||
|
<thead>
|
||||||
|
<th>Pregunta</th>
|
||||||
|
<th>Tipo</th>
|
||||||
|
<th>Opciones</th>
|
||||||
|
<th>Acciones</th>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<?php foreach ($preguntas as $pregunta) : ?>
|
||||||
|
<tr>
|
||||||
|
<td><?= $pregunta['question'] ?></td>
|
||||||
|
<td>
|
||||||
|
<?php if ($pregunta['type'] == '1') echo 'Texto';
|
||||||
|
else if ($pregunta['type'] == '2') echo 'Selección única';
|
||||||
|
else if ($pregunta['type'] == '3') echo 'Selección múltiple' ?>
|
||||||
|
</td>
|
||||||
|
<td><?= $pregunta['frm_option'] ?></td>
|
||||||
|
<td>
|
||||||
|
<div class="button-group mr-2" role="group">
|
||||||
|
<a href="<?= route_to('admin_pregunta_editar', $pregunta['id']) ?>" class="btn btn-info ">
|
||||||
|
<i class="nav-icon fas fa-edit"></i>
|
||||||
|
</a>
|
||||||
|
<button type="button" class="btn btn-danger" data-toggle="modal" data-target="#eliminarModal" data-id="<?= $pregunta['id'] ?>" data-question="<?= $pregunta['question'] ?>" data-link="<?= route_to('admin_pregunta_eliminar', $pregunta['id'], $id) ?>">
|
||||||
|
<i class="nav-icon fas fa-trash"></i>
|
||||||
|
|
||||||
|
</button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<!-- Modal: eliminar encuesta -->
|
||||||
|
<div class="modal fade" id="eliminarModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title" id="exampleModalLabel">Eliminar Pregunta</h5>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
|
||||||
|
<a href="#" id="eliminar-link" class="btn btn-danger">Eliminar</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script src="plugins/jquery/jquery.min.js"></script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#eliminarModal').on('show.bs.modal', (event) => {
|
||||||
|
let button = $(event.relatedTarget)
|
||||||
|
let preguntaId = button.data('id')
|
||||||
|
let preguntaTitle = button.data('question')
|
||||||
|
let preguntaLink = button.data('link')
|
||||||
|
|
||||||
|
let modal = $(this)
|
||||||
|
// modal.find('.modal-title').text('New message to ' + recipient)
|
||||||
|
modal.find('.modal-body').text('Eliminar: ' + preguntaTitle)
|
||||||
|
modal.find('#eliminar-link').attr('href', preguntaLink)
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<?= $this->endSection() ?>
|
74
app/Views/Admin/encuestas.php
Normal file
74
app/Views/Admin/encuestas.php
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
<?= $this->extend('templates/baseAdmin') ?>
|
||||||
|
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
|
<table class="table table-striped" style="table-layout: fixed; word-wrap: break-word;">
|
||||||
|
<thead class="">
|
||||||
|
<th>Título</th>
|
||||||
|
<th colspan="3">Descripción</th>
|
||||||
|
<th>Opciones</th>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<?php foreach ($encuestas as $encuesta) : ?>
|
||||||
|
<tr>
|
||||||
|
<td><?= esc($encuesta['title']) ?></td>
|
||||||
|
<td colspan="3"><?= esc($encuesta['description']) ?></td>
|
||||||
|
<td>
|
||||||
|
<div class="button-group mr-2" role="group">
|
||||||
|
<a href="<?= route_to('admin_encuesta_editar', $encuesta['id']) ?>" class="btn btn-info ">
|
||||||
|
<i class="nav-icon fas fa-edit"></i>
|
||||||
|
</a>
|
||||||
|
<a href="<?= route_to('admin_encuesta', $encuesta['id']) ?>" class="btn btn-success ">
|
||||||
|
<i class="nav-icon fas fa-eye"></i>
|
||||||
|
</a>
|
||||||
|
<button type="button" class="btn btn-danger" data-toggle="modal" data-target="#eliminarModal" data-id="<?= $encuesta['id'] ?>" data-title="<?= $encuesta['title'] ?>" data-link="<?= route_to('admin_encuesta_eliminar', $encuesta['id']) ?>">
|
||||||
|
<i class="nav-icon fas fa-trash"></i>
|
||||||
|
|
||||||
|
</button>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<!-- Modal: eliminar encuesta -->
|
||||||
|
<div class="modal fade" id="eliminarModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog" role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<h5 class="modal-title" id="exampleModalLabel">Eliminar Encuesta</h5>
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancelar</button>
|
||||||
|
<a href="#" id="eliminar-link" class="btn btn-danger">Eliminar</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script src="plugins/jquery/jquery.min.js"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$('#eliminarModal').on('show.bs.modal', (event) => {
|
||||||
|
let button = $(event.relatedTarget)
|
||||||
|
let encuestaId = button.data('id')
|
||||||
|
let encuestaTitle = button.data('title')
|
||||||
|
let encuestaLink = button.data('link')
|
||||||
|
|
||||||
|
let modal = $(this)
|
||||||
|
// modal.find('.modal-title').text('New message to ' + recipient)
|
||||||
|
modal.find('.modal-body').text('Eliminar: ' + encuestaTitle)
|
||||||
|
modal.find('#eliminar-link').attr('href', encuestaLink)
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<?= $this->endSection() ?>
|
45
app/Views/Admin/formularioEncuesta.php
Normal file
45
app/Views/Admin/formularioEncuesta.php
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
<?= $this->extend('templates/baseAdmin') ?>
|
||||||
|
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
|
|
||||||
|
<form action="<?= isset($datos) ? route_to('admin_encuesta_editar', $id) : route_to('admin_encuesta_nueva') ?>" method="POST">
|
||||||
|
<?= csrf_field() ?>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="title">Título</label>
|
||||||
|
<input name="title" id="title" type="text" class="form-control" value="<?= isset($datos) ? $datos['title'] : '' ?>" required>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="perfil">Perfil objetivo</label>
|
||||||
|
<select name="perfil" id="perfil" class="form-control" required>
|
||||||
|
<option value="1" <?= (isset($datos) && $datos['perfil'] == 1) ? 'selected="selected"' : '' ?>>Personal de CEJ</option>
|
||||||
|
<option value="2" <?= (isset($datos) && $datos['perfil'] == 2) ? 'selected="selected"' : '' ?>>Prestador de servicio social o prácticas</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="fecha">Fechas en que se solicita la encuesta</label>
|
||||||
|
<select name="fecha" id="fecha" class="form-control" required>
|
||||||
|
|
||||||
|
<option value="1" <?= (isset($datos) && $datos['fecha'] == 1) ? 'selected="selected"' : '' ?>>Inicio de servicio</option>
|
||||||
|
<option value="2" <?= (isset($datos) && $datos['fecha'] == 2) ? 'selected="selected"' : '' ?>>50% de horas o más</option>
|
||||||
|
<option value="3" <?= (isset($datos) && $datos['fecha'] == 3) ? 'selected="selected"' : '' ?>>Al terminar el servicio</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="description">Descripción</label>
|
||||||
|
<textarea name="description" id="description" cols="30" rows="6" class="form-control"><?= isset($datos) ? $datos['description'] : '' ?></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="status">Status</label>
|
||||||
|
<select name="status" id="status" class="form-control" required>
|
||||||
|
<option value="1" <?= (isset($datos) && $datos['status'] == 1) ? 'selected="selected"' : '' ?>>Publicada</option>
|
||||||
|
<option value="0" <?= (isset($datos) && $datos['status'] == 0) ? 'selected="selected"' : '' ?>>No publicada</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<a href="<?= route_to('admin_encuestas') ?>" class="btn btn-danger">Cancelar</a>
|
||||||
|
<input type="submit" class="btn btn-dark" value="<?= isset($datos) ? 'Actualizar' : 'Guardar' ?>">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<?= $this->endSection() ?>
|
44
app/Views/Admin/formularioPregunta.php
Normal file
44
app/Views/Admin/formularioPregunta.php
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
<?= $this->extend('templates/baseAdmin') ?>
|
||||||
|
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
|
<form action="<?= isset($datos) ? route_to('admin_pregunta_editar', $preguntaId) : route_to('admin_pregunta_nueva', $id) ?>" method="POST">
|
||||||
|
<?= csrf_field() ?>
|
||||||
|
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="question">Pregunta</label>
|
||||||
|
<input type="text" name="question" id="question" class="form-control" value="<?= isset($datos) ? $datos['question'] : '' ?>" required>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="type">Tipo de respuesta</label>
|
||||||
|
<select name="type" id="type" class="form-control" required>
|
||||||
|
<option value="1" <?= (isset($datos) && $datos['type'] == 1) ? 'selected="selected"' : '' ?>>Texto</option>
|
||||||
|
<option value="2" <?= (isset($datos) && $datos['type'] == 2) ? 'selected="selected"' : 'selected="selected"' ?>>Selección única</option>
|
||||||
|
<option value="3" <?= (isset($datos) && $datos['type'] == 3) ? 'selected="selected"' : '' ?>>Selección múltiple</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="form-group" id="frm_option_div">
|
||||||
|
<label for="frm_option">Opciones <small class="form-text">(Escribir cada opción en una línea distinta)</small></label>
|
||||||
|
<textarea name="frm_option" id="frm_option" cols="30" rows="5" class="form-control"><?= (isset($datos) && $datos['frm_option']) ? $datos['frm_option'] : '' ?></textarea>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<a href="<?= isset($datos) ? route_to('admin_encuesta', $datos['survey_id']) : route_to('admin_encuestas') ?>" class="btn btn-danger">Cancelar</a>
|
||||||
|
<input type="submit" class="btn btn-dark" value="Guardar">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<script src="plugins/jquery/jquery.min.js"></script>
|
||||||
|
<script>
|
||||||
|
$("#type").change(function() {
|
||||||
|
if ($(this).val() == '1') {
|
||||||
|
$('#frm_option_div').hide();
|
||||||
|
$('#frm_option').removeAttr('required');
|
||||||
|
$('#frm_option').removeAttr('data-error');
|
||||||
|
} else {
|
||||||
|
$('#frm_option_div').show();
|
||||||
|
$('#frm_option').attr('required', '');
|
||||||
|
$('#frm_option').attr('data-error', 'This field is required.');
|
||||||
|
}
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<?= $this->endSection() ?>
|
@ -2,6 +2,38 @@
|
|||||||
|
|
||||||
<?= $this->section('content') ?>
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
<h1>hey</h1>
|
<div class="container-fluid">
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-4 col-6">
|
||||||
|
<div class="small-box bg-info">
|
||||||
|
<div class="inner">
|
||||||
|
<h3><?= $solicitudes ?></h3>
|
||||||
|
<p>Solicitudes por revisar</p>
|
||||||
|
</div>
|
||||||
|
<div class="icon">
|
||||||
|
<i class="fas fa-clipboard-check"></i>
|
||||||
|
</div>
|
||||||
|
<a href="<?= route_to('admin_solicitudes') ?>" class="small-box-footer">
|
||||||
|
Ver lista <i class="fas fa-arrow-circle-right"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-lg-4 col-6">
|
||||||
|
<!-- small card -->
|
||||||
|
<div class="small-box bg-success">
|
||||||
|
<div class="inner">
|
||||||
|
<h3><?= $prestadoresActivos ?></h3>
|
||||||
|
|
||||||
|
<p>Prestadores activos</p>
|
||||||
|
</div>
|
||||||
|
<div class="icon">
|
||||||
|
<i class="fas fa-user-check"></i>
|
||||||
|
</div>
|
||||||
|
<a href="#" class="small-box-footer">
|
||||||
|
Ver lista <i class="fas fa-arrow-circle-right"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<?= $this->endSection() ?>
|
<?= $this->endSection() ?>
|
63
app/Views/Admin/solicitudes.php
Normal file
63
app/Views/Admin/solicitudes.php
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
<?= $this->extend('templates/baseAdmin') ?>
|
||||||
|
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
|
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.1.3/css/bootstrap.min.css"> -->
|
||||||
|
<script src="https://code.jquery.com/jquery-3.5.1.js"></script>
|
||||||
|
<script src="https://cdn.datatables.net/1.12.1/js/jquery.dataTables.min.js"></script>
|
||||||
|
<script src="https://cdn.datatables.net/1.12.1/js/dataTables.bootstrap5.min.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
|
||||||
|
<table id="table-solicitudes" class="table table-bordered table-striped">
|
||||||
|
<thead>
|
||||||
|
<th>Nombre</th>
|
||||||
|
<th>Email</th>
|
||||||
|
<th>Revisar</th>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
<?php foreach ($solicitudes as $solicitud) : ?>
|
||||||
|
<tr>
|
||||||
|
<td><?= $solicitud['nombre'] . ' ' . $solicitud['apaterno'] . ' ' . $solicitud['amaterno'] ?></td>
|
||||||
|
<td><?= $solicitud['email'] ?></td>
|
||||||
|
<td>
|
||||||
|
<a href="<?= route_to('admin_solicitud_revisar', $solicitud['id']) ?>" class="btn btn-info ">
|
||||||
|
<i class="nav-icon fas fa-user-check"></i>
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<?php endforeach ?>
|
||||||
|
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
let table = new DataTable('#table-solicitudes', {
|
||||||
|
'searching': true,
|
||||||
|
'ordering': true,
|
||||||
|
'language': {
|
||||||
|
"lengthMenu": "Mostrar _MENU_ registros",
|
||||||
|
"info": "Página: _PAGE_ / _PAGES_",
|
||||||
|
"zeroRecords": "No se encontraron registros",
|
||||||
|
"paginate": {
|
||||||
|
"first": "Inicio",
|
||||||
|
"last": "Fin",
|
||||||
|
"next": ">",
|
||||||
|
"previous": "<"
|
||||||
|
},
|
||||||
|
'search': 'Buscar:',
|
||||||
|
},
|
||||||
|
'order': [],
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<?= $this->endSection() ?>
|
54
app/Views/Encuesta/template.php
Normal file
54
app/Views/Encuesta/template.php
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use CodeIgniter\Router\Router;
|
||||||
|
?>
|
||||||
|
<?= $this->extend('templates/base') ?>
|
||||||
|
|
||||||
|
<!-- title -->
|
||||||
|
<?= $this->section('title') ?>Prestador<?= $this->endSection() ?>
|
||||||
|
|
||||||
|
<!-- content -->
|
||||||
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
|
<h1><?= $title ?></h1>
|
||||||
|
|
||||||
|
<form method="POST" action="<?= route_to('encuesta_submit', $id) ?>">
|
||||||
|
<?= csrf_field() ?>
|
||||||
|
|
||||||
|
<!-- PREGUNTAS -->
|
||||||
|
<?php foreach ($preguntas as $pregunta) : ?>
|
||||||
|
<div class="mb-3">
|
||||||
|
<label for="<?= $pregunta['id'] ?>" class="form-label"><?= $pregunta['question'] ?></label>
|
||||||
|
<!-- Pregunta texto -->
|
||||||
|
<?php if ($pregunta['type'] === '1') : ?>
|
||||||
|
<textarea name="<?= $pregunta['id'] ?>" id="<?= $pregunta['id'] ?>" cols="30" rows="1" class="form-control" required></textarea>
|
||||||
|
|
||||||
|
<!-- Pregunta selección única -->
|
||||||
|
<?php elseif ($pregunta['type'] === '2') : ?>
|
||||||
|
<select class="form-control" name="<?= $pregunta['id'] ?>" id="<?= $pregunta['id'] ?>" required>
|
||||||
|
<?php foreach (preg_split("/\r\n|\n|\r/", $pregunta['frm_option']) as $opcion) : ?>
|
||||||
|
<option value="<?= $opcion ?>">
|
||||||
|
<?= $opcion ?>
|
||||||
|
</option>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<!-- Pregunta selección múltiple -->
|
||||||
|
<?php elseif ($pregunta['type'] === '3') : ?>
|
||||||
|
<?php foreach (preg_split("/\r\n|\n|\r/", $pregunta['frm_option']) as $opcion) : ?>
|
||||||
|
<div class="form-check">
|
||||||
|
|
||||||
|
<input class="form-check-input" type="checkbox" name="<?= $pregunta['id'] ?>[<?= $opcion ?>]" value="<?= $opcion ?>" id="<?= $opcion ?>">
|
||||||
|
<label class="form-check-label" for="<?= $opcion ?>">
|
||||||
|
<?= $opcion ?>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
<?php endforeach ?>
|
||||||
|
<?php endif ?>
|
||||||
|
</div>
|
||||||
|
<?php endforeach ?>
|
||||||
|
|
||||||
|
<a href="<?= route_to('home') ?>" class="btn btn-danger">Cancelar</a>
|
||||||
|
<input type="submit" class="btn btn-dark" value="Enviar">
|
||||||
|
</form>
|
||||||
|
<?= $this->endSection() ?>
|
@ -23,44 +23,44 @@
|
|||||||
<label class="form-label" for="">Nombre*</label>
|
<label class="form-label" for="">Nombre*</label>
|
||||||
<input name="nombre" type="text" class="form-control <?php if (session('errors.nombre')) : ?>is-invalid<?php endif ?>" value="<?php if (old('nombre')) echo old('nombre');
|
<input name="nombre" type="text" class="form-control <?php if (session('errors.nombre')) : ?>is-invalid<?php endif ?>" value="<?php if (old('nombre')) echo old('nombre');
|
||||||
else if ($datos) echo $datos['nombre'];
|
else if ($datos) echo $datos['nombre'];
|
||||||
?>" required>
|
?>" required <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-label" for="">Apellido Paterno*</label>
|
<label class="form-label" for="">Apellido Paterno*</label>
|
||||||
<input name="apaterno" type="text" class="form-control <?php if (session('errors.apaterno')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('apaterno')) echo old('apaterno');
|
<input name="apaterno" type="text" class="form-control <?php if (session('errors.apaterno')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('apaterno')) echo old('apaterno');
|
||||||
else if ($datos) echo $datos['apaterno'];
|
else if ($datos) echo $datos['apaterno'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-label" for="">Apellido Materno*</label>
|
<label class="form-label" for="">Apellido Materno*</label>
|
||||||
<input name="amaterno" type="text" class="form-control <?php if (session('errors.amaterno')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('amaterno')) echo old('amaterno');
|
<input name="amaterno" type="text" class="form-control <?php if (session('errors.amaterno')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('amaterno')) echo old('amaterno');
|
||||||
else if ($datos) echo $datos['amaterno'];
|
else if ($datos) echo $datos['amaterno'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-label" for="">Fecha de Nacimiento*</label>
|
<label class="form-label" for="">Fecha de Nacimiento*</label>
|
||||||
<input name="fechanac" type="date" class="form-control <?php if (session('errors.fechanac')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('fechanac')) echo old('fechanac');
|
<input name="fechanac" type="date" class="form-control <?php if (session('errors.fechanac')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('fechanac')) echo old('fechanac');
|
||||||
else if ($datos) echo explode(' ', $datos['fechanac'])[0];
|
else if ($datos) echo explode(' ', $datos['fechanac'])[0];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- Contacto -->
|
<!-- Contacto -->
|
||||||
<div class="row mb-4">
|
<div class="row mb-4">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<label class="form-label" for="">E-mail*</label>
|
<label class="form-label" for="">E-mail*</label>
|
||||||
<input name="email" type="email" class="form-control <?php if (session('errors.email')) : ?>is-invalid<?php endif ?>" readonly value="<?= $email ?>">
|
<input name="email" type="email" class="form-control <?php if (session('errors.email')) : ?>is-invalid<?php endif ?>" readonly value="<?= $email ?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-label" for="">Teléfono Fijo</label>
|
<label class="form-label" for="">Teléfono Fijo</label>
|
||||||
<input name="telefono" type="text" class="form-control <?php if (session('errors.telefono')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('telefono')) echo old('telefono');
|
<input name="telefono" type="text" class="form-control <?php if (session('errors.telefono')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('telefono')) echo old('telefono');
|
||||||
else if ($datos) echo $datos['telefono'];
|
else if ($datos) echo $datos['telefono'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-label" for="">Celular*</label>
|
<label class="form-label" for="">Celular*</label>
|
||||||
<input name="celular" type="text" class="form-control <?php if (session('errors.celular')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('celular')) echo old('celular');
|
<input name="celular" type="text" class="form-control <?php if (session('errors.celular')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('celular')) echo old('celular');
|
||||||
else if ($datos) echo $datos['celular'];
|
else if ($datos) echo $datos['celular'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr class="mb-5">
|
<hr class="mb-5">
|
||||||
@ -71,25 +71,25 @@
|
|||||||
<label class="form-label" for="">Domicilio*</label>
|
<label class="form-label" for="">Domicilio*</label>
|
||||||
<input name="direccion" type="text" class="form-control <?php if (session('errors.direccion')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('direccion')) echo old('direccion');
|
<input name="direccion" type="text" class="form-control <?php if (session('errors.direccion')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('direccion')) echo old('direccion');
|
||||||
else if ($datos) echo $datos['direccion'];
|
else if ($datos) echo $datos['direccion'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<label class="form-label" for="">Colonia*</label>
|
<label class="form-label" for="">Colonia*</label>
|
||||||
<input name="colonia" type="text" class="form-control <?php if (session('errors.colonia')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('colonia')) echo old('colonia');
|
<input name="colonia" type="text" class="form-control <?php if (session('errors.colonia')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('colonia')) echo old('colonia');
|
||||||
else if ($datos) echo $datos['colonia'];
|
else if ($datos) echo $datos['colonia'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<label class="form-label" for="">Municipio*</label>
|
<label class="form-label" for="">Municipio*</label>
|
||||||
<input name="municipio" type="text" class="form-control <?php if (session('errors.municipio')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('municipio')) echo old('municipio');
|
<input name="municipio" type="text" class="form-control <?php if (session('errors.municipio')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('municipio')) echo old('municipio');
|
||||||
else if ($datos) echo $datos['municipio'];
|
else if ($datos) echo $datos['municipio'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
<label class="form-label" for="">Código Postal*</label>
|
<label class="form-label" for="">Código Postal*</label>
|
||||||
<input name="cp" type="text" class="form-control <?php if (session('errors.cp')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('cp')) echo old('cp');
|
<input name="cp" type="text" class="form-control <?php if (session('errors.cp')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('cp')) echo old('cp');
|
||||||
else if ($datos) echo $datos['cp'];
|
else if ($datos) echo $datos['cp'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr class="mb-5">
|
<hr class="mb-5">
|
||||||
@ -101,11 +101,11 @@
|
|||||||
<label class="form-label" for="">Código de Estudiante*</label>
|
<label class="form-label" for="">Código de Estudiante*</label>
|
||||||
<input name="codigo_estudiante" type="text" class="form-control" required value="<?php if (old('codigo_estudiante')) echo old('codigo_estudiante');
|
<input name="codigo_estudiante" type="text" class="form-control" required value="<?php if (old('codigo_estudiante')) echo old('codigo_estudiante');
|
||||||
else if ($datos) echo $datos['codigo_estudiante'];
|
else if ($datos) echo $datos['codigo_estudiante'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<label class="form-label" for="">Centro Universitario*</label>
|
<label class="form-label" for="">Centro Universitario*</label>
|
||||||
<select name="idescuela" class="form-select <?php if (session('errors.idescuela')) : ?>is-invalid<?php endif ?>" required>
|
<select name="idescuela" class="form-select <?php if (session('errors.idescuela')) : ?>is-invalid<?php endif ?>" required <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
<option disabled selected value>---</option>
|
<option disabled selected value>---</option>
|
||||||
<?php foreach ($escuelas as $escuela) : ?>
|
<?php foreach ($escuelas as $escuela) : ?>
|
||||||
<option value="<?= esc($escuela['idescuela']) ?>" <?php if (isset($datos) && $escuela['idescuela'] == $datos['idescuela']) echo 'selected="selected"'; ?>><?= esc($escuela['nombrecorto']) ?></option>
|
<option value="<?= esc($escuela['idescuela']) ?>" <?php if (isset($datos) && $escuela['idescuela'] == $datos['idescuela']) echo 'selected="selected"'; ?>><?= esc($escuela['nombrecorto']) ?></option>
|
||||||
@ -116,17 +116,17 @@
|
|||||||
<label class="form-label" for="">Carrera*</label>
|
<label class="form-label" for="">Carrera*</label>
|
||||||
<input name="carrera" type="text" class="form-control <?php if (session('errors.carrera')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('carrera')) echo old('carrera');
|
<input name="carrera" type="text" class="form-control <?php if (session('errors.carrera')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('carrera')) echo old('carrera');
|
||||||
else if ($datos) echo $datos['carrera'];
|
else if ($datos) echo $datos['carrera'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
<label class="form-label" for="">Grado*</label>
|
<label class="form-label" for="">Grado*</label>
|
||||||
<input name="grado" type="text" class="form-control <?php if (session('errors.grado')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('grado')) echo old('grado');
|
<input name="grado" type="text" class="form-control <?php if (session('errors.grado')) : ?>is-invalid<?php endif ?>" required value="<?php if (old('grado')) echo old('grado');
|
||||||
else if ($datos) echo $datos['grado'];
|
else if ($datos) echo $datos['grado'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5">
|
<div class="col-md-5">
|
||||||
<label class="form-label">Turno*</label>
|
<label class="form-label">Turno*</label>
|
||||||
<select name="turno" class="form-select <?php if (session('errors.turno')) : ?>is-invalid<?php endif ?>" required>
|
<select name="turno" class="form-select <?php if (session('errors.turno')) : ?>is-invalid<?php endif ?>" required <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
<option hidden disabled selected value>---</option>
|
<option hidden disabled selected value>---</option>
|
||||||
<option value="1" <?php if (isset($datos) && $datos['turno'] == 1) echo 'selected="selected"'; ?>>Matutino</option>
|
<option value="1" <?php if (isset($datos) && $datos['turno'] == 1) echo 'selected="selected"'; ?>>Matutino</option>
|
||||||
<option value="2" <?php if (isset($datos) && $datos['turno'] == 2) echo 'selected="selected"'; ?>>Verspertino</option>
|
<option value="2" <?php if (isset($datos) && $datos['turno'] == 2) echo 'selected="selected"'; ?>>Verspertino</option>
|
||||||
@ -140,7 +140,7 @@
|
|||||||
<div class="row mb-4">
|
<div class="row mb-4">
|
||||||
<div class="col-md-3">
|
<div class="col-md-3">
|
||||||
<label class="form-label" for="">Elegiste Coparmex para realizar*</label>
|
<label class="form-label" for="">Elegiste Coparmex para realizar*</label>
|
||||||
<select name="tipo" class="form-select <?php if (session('errors.tipo')) : ?>is-invalid<?php endif ?>" required>
|
<select name="tipo" class="form-select <?php if (session('errors.tipo')) : ?>is-invalid<?php endif ?>" required <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
<option hidden disabled selected value>---</option>
|
<option hidden disabled selected value>---</option>
|
||||||
<option value="1" <?php if (isset($datos) && $datos['tipo'] == 1) echo 'selected="selected"'; ?>>Servicio Social</option>
|
<option value="1" <?php if (isset($datos) && $datos['tipo'] == 1) echo 'selected="selected"'; ?>>Servicio Social</option>
|
||||||
<option value="2" <?php if (isset($datos) && $datos['tipo'] == 2) echo 'selected="selected"'; ?>>Prácticas Profesionales</option>
|
<option value="2" <?php if (isset($datos) && $datos['tipo'] == 2) echo 'selected="selected"'; ?>>Prácticas Profesionales</option>
|
||||||
@ -149,7 +149,7 @@
|
|||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<!-- NO SE GUARDA CAMPO EN NING<EFBFBD>N LUGAR -->
|
<!-- NO SE GUARDA CAMPO EN NING<EFBFBD>N LUGAR -->
|
||||||
<label class="form-label">Disponibilidad de horario*</label>
|
<label class="form-label">Disponibilidad de horario*</label>
|
||||||
<select name="horario" class="form-select">
|
<select name="horario" class="form-select" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
<option value="1" <?php if (isset($datos) && $datos['horario'] == 1) echo 'selected="selected"'; ?>>08:00 am a 12:00 pm</option>
|
<option value="1" <?php if (isset($datos) && $datos['horario'] == 1) echo 'selected="selected"'; ?>>08:00 am a 12:00 pm</option>
|
||||||
<option value="2" <?php if (isset($datos) && $datos['horario'] == 2) echo 'selected="selected"'; ?>>09:00 am a 01:00 pm</option>
|
<option value="2" <?php if (isset($datos) && $datos['horario'] == 2) echo 'selected="selected"'; ?>>09:00 am a 01:00 pm</option>
|
||||||
<option value="3" <?php if (isset($datos) && $datos['horario'] == 3) echo 'selected="selected"'; ?>>01:00 pm a 05:00 pm</option>
|
<option value="3" <?php if (isset($datos) && $datos['horario'] == 3) echo 'selected="selected"'; ?>>01:00 pm a 05:00 pm</option>
|
||||||
@ -160,17 +160,17 @@
|
|||||||
<label class="form-label" for="">Fecha programada de inicio*</label>
|
<label class="form-label" for="">Fecha programada de inicio*</label>
|
||||||
<input name="fechainicio" type="date" class="form-control <?php if (session('errors.fechainicio')) : ?>is-invalid<?php endif ?>" value="<?php if (old('fechainicio')) echo old('fechainicio');
|
<input name="fechainicio" type="date" class="form-control <?php if (session('errors.fechainicio')) : ?>is-invalid<?php endif ?>" value="<?php if (old('fechainicio')) echo old('fechainicio');
|
||||||
else if ($datos) echo explode(' ', $datos['fechainicio'])[0];
|
else if ($datos) echo explode(' ', $datos['fechainicio'])[0];
|
||||||
?>" required>
|
?>" required <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-2">
|
<div class="col-md-2">
|
||||||
<label class="form-label" for="">Horas Totales a Realizar*</label>
|
<label class="form-label" for="">Horas Totales a Realizar*</label>
|
||||||
<input name="horas_servicio" type="number" class="form-control <?php if (session('errors.horas_servicio')) : ?>is-invalid<?php endif ?>" min=1 required value="<?php if (old('horas_servicio')) echo old('horas_servicio');
|
<input name="horas_servicio" type="number" class="form-control <?php if (session('errors.horas_servicio')) : ?>is-invalid<?php endif ?>" min=1 required value="<?php if (old('horas_servicio')) echo old('horas_servicio');
|
||||||
else if ($datos) echo $datos['horas_servicio'];
|
else if ($datos) echo $datos['horas_servicio'];
|
||||||
?>">
|
?>" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5 mt-md-2">
|
<div class="col-md-5 mt-md-2">
|
||||||
<label class="form-label">Departamento al cual fuiste asignado <span class="small">(Si aplica)</span></label>
|
<label class="form-label">Departamento al cual fuiste asignado <span class="small">(Si aplica)</span></label>
|
||||||
<select name="iddepartamento" class="form-select">
|
<select name="iddepartamento" class="form-select" <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
<option selected value>---</option>
|
<option selected value>---</option>
|
||||||
<!-- Añadir opción: no sé -->
|
<!-- Añadir opción: no sé -->
|
||||||
<?php foreach ($departamentos as $departamento) : ?>
|
<?php foreach ($departamentos as $departamento) : ?>
|
||||||
@ -179,19 +179,34 @@
|
|||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="">
|
<div class="<?= isset($revisar) ? 'd-none' : '' ?>">
|
||||||
<input type="checkbox" required>
|
<input type="checkbox" required <?= isset($revisar) ? 'disabled' : '' ?>>
|
||||||
<label>
|
<label>
|
||||||
Acepto el
|
Acepto el
|
||||||
<a href="https://coparmexjal.org.mx/pdf/aviso-privacidad.pdf">aviso de privacidad</a>
|
<a href="https://coparmexjal.org.mx/pdf/aviso-privacidad.pdf">aviso de privacidad</a>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-end">
|
|
||||||
<?php if ($datos) : ?>
|
|
||||||
<a class="btn btn-danger me-3" href="<?= route_to('/') ?>">Cancelar</a>
|
<?php if (isset($revisar)) : ?>
|
||||||
<?php endif ?>
|
<!-- BOTONES PARA APROBAR / RECHAZAR SOLICITUD-->
|
||||||
<button class="btn btn-primary" type="submit"><?= !empty($datos) ? 'Actualizar' : 'Enviar' ?></button>
|
<div class="text-end">
|
||||||
</div>
|
<a href="" class="btn btn-primary">Regresar a lista</a>
|
||||||
|
<a href="<?= route_to('admin_solicitud_rechazar', $id) ?>" class="btn btn-danger">Rechazar solicitud</a>
|
||||||
|
<a href="<?= route_to('admin_solicitud_aprobar', $id) ?>" class="btn btn-success">Aprobar solicitud</a>
|
||||||
|
</div>
|
||||||
|
<?php else : ?>
|
||||||
|
<!-- BOTONES PARA ENVIAR O EDITAR -->
|
||||||
|
<div class="text-end">
|
||||||
|
<?php if ($datos) : ?>
|
||||||
|
<a class="btn btn-danger me-3" href="<?= route_to('/') ?>">Cancelar</a>
|
||||||
|
<?php endif ?>
|
||||||
|
<button class="btn btn-primary" type="submit"><?= !empty($datos) ? 'Actualizar' : 'Enviar' ?></button>
|
||||||
|
</div>
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -17,6 +17,24 @@
|
|||||||
<?= $this->section('content') ?>
|
<?= $this->section('content') ?>
|
||||||
|
|
||||||
<div class="row mb-5">
|
<div class="row mb-5">
|
||||||
|
<!-- ENCUESTAS DISPONIBLES -->
|
||||||
|
<?php if (isset($encuestas)) : ?>
|
||||||
|
<div class="col-md-4">
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-header">
|
||||||
|
Encuestas disponibles
|
||||||
|
</div>
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="list-group list-group-flush">
|
||||||
|
<?php foreach ($encuestas as $encuesta) : ?>
|
||||||
|
<a href="<?= route_to('encuesta', $encuesta['id']) ?>" class="list-group-item list-group-item-action"><?= $encuesta['title'] ?></a>
|
||||||
|
<?php endforeach ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
<!-- HORAS MENSUALES -->
|
<!-- HORAS MENSUALES -->
|
||||||
<div class="col-md-4 mb-5">
|
<div class="col-md-4 mb-5">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
|
@ -25,7 +25,18 @@
|
|||||||
<?= $this->include('templates/navbar') ?>
|
<?= $this->include('templates/navbar') ?>
|
||||||
|
|
||||||
<div class="container mt-4">
|
<div class="container mt-4">
|
||||||
|
|
||||||
|
<?php if (session('msg')) : ?>
|
||||||
|
|
||||||
|
<div class="alert alert-<?= session('msg')['type'] ?> alert-dismissible fade show" role="alert">
|
||||||
|
<?= session('msg')['body'] ?>
|
||||||
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
<?= $this->renderSection('content') ?>
|
<?= $this->renderSection('content') ?>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
@ -17,149 +17,12 @@ scratch. This page gets rid of all links and provides the needed markup only.
|
|||||||
<link rel="stylesheet" href="plugins/fontawesome-free/css/all.min.css">
|
<link rel="stylesheet" href="plugins/fontawesome-free/css/all.min.css">
|
||||||
<!-- Theme style -->
|
<!-- Theme style -->
|
||||||
<link rel="stylesheet" href="dist/css/adminlte.min.css">
|
<link rel="stylesheet" href="dist/css/adminlte.min.css">
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body class="hold-transition sidebar-mini">
|
<body class="hold-transition sidebar-mini">
|
||||||
<div class="wrapper">
|
<div class="wrapper">
|
||||||
|
|
||||||
<!-- Navbar -->
|
|
||||||
<nav class="main-header navbar navbar-expand navbar-white navbar-light">
|
|
||||||
<!-- Left navbar links -->
|
|
||||||
<ul class="navbar-nav">
|
|
||||||
<li class="nav-item">
|
|
||||||
<a class="nav-link" data-widget="pushmenu" href="#" role="button"><i class="fas fa-bars"></i></a>
|
|
||||||
</li>
|
|
||||||
<li class="nav-item d-none d-sm-inline-block">
|
|
||||||
<a href="index3.html" class="nav-link">Home</a>
|
|
||||||
</li>
|
|
||||||
<li class="nav-item d-none d-sm-inline-block">
|
|
||||||
<a href="#" class="nav-link">Contact</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<!-- Right navbar links -->
|
|
||||||
<ul class="navbar-nav ml-auto">
|
|
||||||
<!-- Navbar Search -->
|
|
||||||
<li class="nav-item">
|
|
||||||
<a class="nav-link" data-widget="navbar-search" href="#" role="button">
|
|
||||||
<i class="fas fa-search"></i>
|
|
||||||
</a>
|
|
||||||
<div class="navbar-search-block">
|
|
||||||
<form class="form-inline">
|
|
||||||
<div class="input-group input-group-sm">
|
|
||||||
<input class="form-control form-control-navbar" type="search" placeholder="Search" aria-label="Search">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button class="btn btn-navbar" type="submit">
|
|
||||||
<i class="fas fa-search"></i>
|
|
||||||
</button>
|
|
||||||
<button class="btn btn-navbar" type="button" data-widget="navbar-search">
|
|
||||||
<i class="fas fa-times"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<!-- Messages Dropdown Menu -->
|
|
||||||
<li class="nav-item dropdown">
|
|
||||||
<a class="nav-link" data-toggle="dropdown" href="#">
|
|
||||||
<i class="far fa-comments"></i>
|
|
||||||
<span class="badge badge-danger navbar-badge">3</span>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-menu dropdown-menu-lg dropdown-menu-right">
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<!-- Message Start -->
|
|
||||||
<div class="media">
|
|
||||||
<img src="dist/img/user1-128x128.jpg" alt="User Avatar" class="img-size-50 mr-3 img-circle">
|
|
||||||
<div class="media-body">
|
|
||||||
<h3 class="dropdown-item-title">
|
|
||||||
Brad Diesel
|
|
||||||
<span class="float-right text-sm text-danger"><i class="fas fa-star"></i></span>
|
|
||||||
</h3>
|
|
||||||
<p class="text-sm">Call me whenever you can...</p>
|
|
||||||
<p class="text-sm text-muted"><i class="far fa-clock mr-1"></i> 4 Hours Ago</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Message End -->
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<!-- Message Start -->
|
|
||||||
<div class="media">
|
|
||||||
<img src="dist/img/user8-128x128.jpg" alt="User Avatar" class="img-size-50 img-circle mr-3">
|
|
||||||
<div class="media-body">
|
|
||||||
<h3 class="dropdown-item-title">
|
|
||||||
John Pierce
|
|
||||||
<span class="float-right text-sm text-muted"><i class="fas fa-star"></i></span>
|
|
||||||
</h3>
|
|
||||||
<p class="text-sm">I got your message bro</p>
|
|
||||||
<p class="text-sm text-muted"><i class="far fa-clock mr-1"></i> 4 Hours Ago</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Message End -->
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<!-- Message Start -->
|
|
||||||
<div class="media">
|
|
||||||
<img src="dist/img/user3-128x128.jpg" alt="User Avatar" class="img-size-50 img-circle mr-3">
|
|
||||||
<div class="media-body">
|
|
||||||
<h3 class="dropdown-item-title">
|
|
||||||
Nora Silvester
|
|
||||||
<span class="float-right text-sm text-warning"><i class="fas fa-star"></i></span>
|
|
||||||
</h3>
|
|
||||||
<p class="text-sm">The subject goes here</p>
|
|
||||||
<p class="text-sm text-muted"><i class="far fa-clock mr-1"></i> 4 Hours Ago</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Message End -->
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item dropdown-footer">See All Messages</a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<!-- Notifications Dropdown Menu -->
|
|
||||||
<li class="nav-item dropdown">
|
|
||||||
<a class="nav-link" data-toggle="dropdown" href="#">
|
|
||||||
<i class="far fa-bell"></i>
|
|
||||||
<span class="badge badge-warning navbar-badge">15</span>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-menu dropdown-menu-lg dropdown-menu-right">
|
|
||||||
<span class="dropdown-header">15 Notifications</span>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<i class="fas fa-envelope mr-2"></i> 4 new messages
|
|
||||||
<span class="float-right text-muted text-sm">3 mins</span>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<i class="fas fa-users mr-2"></i> 8 friend requests
|
|
||||||
<span class="float-right text-muted text-sm">12 hours</span>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item">
|
|
||||||
<i class="fas fa-file mr-2"></i> 3 new reports
|
|
||||||
<span class="float-right text-muted text-sm">2 days</span>
|
|
||||||
</a>
|
|
||||||
<div class="dropdown-divider"></div>
|
|
||||||
<a href="#" class="dropdown-item dropdown-footer">See All Notifications</a>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
<li class="nav-item">
|
|
||||||
<a class="nav-link" data-widget="fullscreen" href="#" role="button">
|
|
||||||
<i class="fas fa-expand-arrows-alt"></i>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
<li class="nav-item">
|
|
||||||
<a class="nav-link" data-widget="control-sidebar" data-slide="true" href="#" role="button">
|
|
||||||
<i class="fas fa-th-large"></i>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
<!-- /.navbar -->
|
|
||||||
|
|
||||||
<!-- Main Sidebar Container -->
|
<!-- Main Sidebar Container -->
|
||||||
<aside class="main-sidebar sidebar-dark-primary elevation-4">
|
<aside class="main-sidebar sidebar-dark-primary elevation-4">
|
||||||
<!-- Brand Logo -->
|
<!-- Brand Logo -->
|
||||||
@ -176,61 +39,63 @@ scratch. This page gets rid of all links and provides the needed markup only.
|
|||||||
<img src="dist/img/user2-160x160.jpg" class="img-circle elevation-2" alt="User Image">
|
<img src="dist/img/user2-160x160.jpg" class="img-circle elevation-2" alt="User Image">
|
||||||
</div>
|
</div>
|
||||||
<div class="info">
|
<div class="info">
|
||||||
<a href="#" class="d-block">Alexander Pierce</a>
|
<a href="#" class="d-block">Administrador</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- SidebarSearch Form -->
|
|
||||||
<div class="form-inline">
|
|
||||||
<div class="input-group" data-widget="sidebar-search">
|
|
||||||
<input class="form-control form-control-sidebar" type="search" placeholder="Search" aria-label="Search">
|
|
||||||
<div class="input-group-append">
|
|
||||||
<button class="btn btn-sidebar">
|
|
||||||
<i class="fas fa-search fa-fw"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Sidebar Menu -->
|
<!-- Sidebar Menu -->
|
||||||
<nav class="mt-2">
|
<nav class="mt-2">
|
||||||
<ul class="nav nav-pills nav-sidebar flex-column" data-widget="treeview" role="menu" data-accordion="false">
|
<ul class="nav nav-pills nav-sidebar flex-column" data-widget="treeview" role="menu" data-accordion="false">
|
||||||
<!-- Add icons to the links using the .nav-icon class
|
<!-- Add icons to the links using the .nav-icon class
|
||||||
with font-awesome or any other icon font library -->
|
with font-awesome or any other icon font library -->
|
||||||
|
<li class="nav-item">
|
||||||
|
<a href="" class="nav-link">
|
||||||
|
<i class="nav-icon fas fa-users"></i>
|
||||||
|
Prestadores
|
||||||
|
<i class="right fas fa-angle-left"></i>
|
||||||
|
</a>
|
||||||
|
<ul class="nav nav-treeview">
|
||||||
|
<li class="nav-item">
|
||||||
|
<a href="#" class="nav-link">
|
||||||
|
<i class="far fa-circle nav-icon"></i>
|
||||||
|
Activos
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li class="nav-item">
|
||||||
|
<a href="<?= route_to('admin_solicitudes') ?>" class="nav-link">
|
||||||
|
<i class="far fa-circle nav-icon"></i>
|
||||||
|
Solicitudes
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
<li class="nav-item menu-open">
|
<li class="nav-item menu-open">
|
||||||
<a href="#" class="nav-link active">
|
<a href="#" class="nav-link">
|
||||||
<i class="nav-icon fas fa-tachometer-alt"></i>
|
<i class="nav-icon fas fa-chart-bar"></i>
|
||||||
<p>
|
<p>
|
||||||
Starter Pages
|
Encuestas
|
||||||
<i class="right fas fa-angle-left"></i>
|
<i class="right fas fa-angle-left"></i>
|
||||||
</p>
|
</p>
|
||||||
</a>
|
</a>
|
||||||
<ul class="nav nav-treeview">
|
<ul class="nav nav-treeview">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a href="#" class="nav-link active">
|
<a href="<?= route_to('admin_encuesta_nueva') ?>" class="nav-link">
|
||||||
<i class="far fa-circle nav-icon"></i>
|
<i class="far fa-circle nav-icon"></i>
|
||||||
<p>Active Page</p>
|
<p>Nueva encuesta</p>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a href="#" class="nav-link">
|
<a href="<?= route_to('admin_encuestas') ?>" class="nav-link">
|
||||||
<i class="far fa-circle nav-icon"></i>
|
<i class="far fa-circle nav-icon"></i>
|
||||||
<p>Inactive Page</p>
|
<p>Lista</p>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-item">
|
|
||||||
<a href="#" class="nav-link">
|
|
||||||
<i class="nav-icon fas fa-th"></i>
|
|
||||||
<p>
|
|
||||||
Simple Link
|
|
||||||
<span class="right badge badge-danger">New</span>
|
|
||||||
</p>
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<!-- /.sidebar-menu -->
|
<!-- /.sidebar-menu -->
|
||||||
</div>
|
</div>
|
||||||
<!-- /.sidebar -->
|
<!-- /.sidebar -->
|
||||||
@ -238,18 +103,21 @@ scratch. This page gets rid of all links and provides the needed markup only.
|
|||||||
|
|
||||||
<!-- Content Wrapper. Contains page content -->
|
<!-- Content Wrapper. Contains page content -->
|
||||||
<div class="content-wrapper">
|
<div class="content-wrapper">
|
||||||
|
<?php if (session('msg')) : ?>
|
||||||
|
<div class="alert alert-<?= session('msg')['type'] ?> alert-dismissible fade show" role="alert">
|
||||||
|
<?= session('msg')['body'] ?>
|
||||||
|
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
|
||||||
|
<span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<?php endif ?>
|
||||||
|
|
||||||
<!-- Content Header (Page header) -->
|
<!-- Content Header (Page header) -->
|
||||||
<div class="content-header">
|
<div class="content-header">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<div class="row mb-2">
|
<div class="row mb-2">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<h1 class="m-0"><?= isset($title) ? $title : 'Adminstrador' ?></h1>
|
<h1 class="m-0"><?= isset($title) ? $title : '' ?></h1>
|
||||||
</div><!-- /.col -->
|
|
||||||
<div class="col-sm-6">
|
|
||||||
<ol class="breadcrumb float-sm-right">
|
|
||||||
<li class="breadcrumb-item"><a href="#">Home</a></li>
|
|
||||||
<li class="breadcrumb-item active">Starter Page</li>
|
|
||||||
</ol>
|
|
||||||
</div><!-- /.col -->
|
</div><!-- /.col -->
|
||||||
</div><!-- /.row -->
|
</div><!-- /.row -->
|
||||||
</div><!-- /.container-fluid -->
|
</div><!-- /.container-fluid -->
|
||||||
@ -257,7 +125,7 @@ scratch. This page gets rid of all links and provides the needed markup only.
|
|||||||
<!-- /.content-header -->
|
<!-- /.content-header -->
|
||||||
|
|
||||||
<!-- Main content -->
|
<!-- Main content -->
|
||||||
<div class="content">
|
<div class="content pb-5">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<?= $this->renderSection('content') ?>
|
<?= $this->renderSection('content') ?>
|
||||||
</div><!-- /.container-fluid -->
|
</div><!-- /.container-fluid -->
|
||||||
@ -276,15 +144,6 @@ scratch. This page gets rid of all links and provides the needed markup only.
|
|||||||
</aside>
|
</aside>
|
||||||
<!-- /.control-sidebar -->
|
<!-- /.control-sidebar -->
|
||||||
|
|
||||||
<!-- Main Footer -->
|
|
||||||
<footer class="main-footer">
|
|
||||||
<!-- To the right -->
|
|
||||||
<div class="float-right d-none d-sm-inline">
|
|
||||||
Anything you want
|
|
||||||
</div>
|
|
||||||
<!-- Default to the left -->
|
|
||||||
<strong>Copyright © 2014-2021 <a href="<?= route_to('admin_home') ?>">COPARMEX</a>.</strong> All rights reserved.
|
|
||||||
</footer>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- ./wrapper -->
|
<!-- ./wrapper -->
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user