diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php
index 6102eccc..02543965 100644
--- a/ci4/app/Config/Routes.php
+++ b/ci4/app/Config/Routes.php
@@ -95,6 +95,17 @@ $routes->group('configuracion', ['namespace' => 'App\Controllers\Configuracion']
$routes->post('datatable', 'Ubicaciones::datatable', ['as' => 'ubicacionesDT']);
});
+ /* Permisos y roles */
+ $routes->group('group', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) {
+ $routes->get('', 'Group::index', ['as' => 'userGroupList']);
+ $routes->get('index', 'Group::index', ['as' => 'groupIndex']);
+ $routes->post('edit/(:num)', 'Group::edit/$1', ['as' => 'updateGroup']);
+ $routes->get('edit/(:num)', 'Group::edit/$1', ['as' => 'editGroup']);
+ $routes->get('delete/(:num)', 'Group::delete/$1', ['as' => 'deleteGroup']);
+ $routes->get('add', 'Group::add', ['as' => 'newGroup']);
+ $routes->post('add', 'Group::add', ['as' => 'createGroup']);
+ });
+
/* Series Factura */
$routes->group('series-facturas', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) {
$routes->get('', 'SeriesFacturas::index', ['as' => 'seriesFacturasList']);
@@ -151,19 +162,10 @@ $routes->group('users', ['namespace' => 'App\Controllers\Configuracion'], functi
$routes->post('datatable', 'Users::datatable', ['as' => 'datatableOfUsers']);
$routes->get('getMenuComerciales', 'Users::getMenuComerciales', ['as' => 'menuItemsComerciales']);
});
+
$routes->resource('users', ['namespace' => 'App\Controllers\Configuracion', 'controller' => 'Users', 'except' => 'show,new,create,update']);
-$routes->group('group', ['namespace' => 'App\Controllers\Configuracion'], function ($routes) {
- $routes->get('', 'Group::index', ['as' => 'userGroupList']);
- $routes->get('index', 'Group::index', ['as' => 'groupIndex']);
- $routes->post('edit/(:num)', 'Group::edit/$1', ['as' => 'updateGroup']);
- $routes->get('edit/(:num)', 'Group::edit/$1', ['as' => 'editGroup']);
- $routes->get('delete/(:num)', 'Group::delete/$1', ['as' => 'deleteGroup']);
- $routes->get('add', 'Group::add', ['as' => 'newGroup']);
- $routes->post('add', 'Group::add', ['as' => 'createGroup']);
-});
-
$routes->group('tarifapreimpresion', ['namespace' => 'App\Controllers\Tarifas'], function ($routes) {
$routes->get('', 'Tarifapreimpresion::index', ['as' => 'tarifapreimpresionList']);
$routes->get('index', 'Tarifapreimpresion::index', ['as' => 'tarifapreimpresionIndex']);
@@ -746,9 +748,9 @@ $routes->group('presupuestotiradasalternativas', ['namespace' => 'App\Controller
$routes->group('pedidos', ['namespace' => 'App\Controllers\Pedidos'], function ($routes) {
$routes->get('list', 'Pedido::todos', ['as' => 'listaPedidos']);
- $routes->get('listActivos', 'Pedido::activos', ['as' => 'listaPedidosActivos']);
- $routes->get('listFinalizados', 'Pedido::finalizados', ['as' => 'listaFinalizados']);
- $routes->get('listCancelados', 'Pedido::cancelados', ['as' => 'listaCancelados']);
+ $routes->get('activos', 'Pedido::activos', ['as' => 'listaPedidosActivos']);
+ $routes->get('finalizados', 'Pedido::finalizados', ['as' => 'listaPedidosFinalizados']);
+ $routes->get('cancelados', 'Pedido::cancelados', ['as' => 'listaPedidosCancelados']);
$routes->post('datatable', 'Pedido::datatable', ['as' => 'dataTableOfPedidos']);
$routes->get('add', 'Pedido::add', ['as' => 'nuevoPedido']);
$routes->post('add', 'Pedido::add', ['as' => 'crearPedido']);
@@ -761,6 +763,7 @@ $routes->group('pedidos', ['namespace' => 'App\Controllers\Pedidos'], function (
$routes->post('produccion/(:num)', 'Pedido::to_produccion/$1', ['as' => 'toProduccion']);
$routes->get('pedidosCliente', 'Pedido::tablaClienteForm');
$routes->get('getSumCliente/(:num)', 'Pedido::obtenerTotalPedidosCliente/$1');
+ $routes->get('validacion', 'Pedido::validacion', ['as' => 'validacionView']);
});
$routes->resource('pedidos', ['namespace' => 'App\Controllers\Pedidos', 'controller' => 'Pedido', 'except' => 'show,new,create,update']);
diff --git a/ci4/app/Controllers/Ajax.php b/ci4/app/Controllers/Ajax.php
deleted file mode 100755
index 5750dc5b..00000000
--- a/ci4/app/Controllers/Ajax.php
+++ /dev/null
@@ -1,507 +0,0 @@
-user_model = new UserModel();
- $this->group_model = new GroupModel();
- $this->group_user_model = new GroupsUsersModel();
- $this->activity_model = new ActivityModel();
- $this->crontab_model = new CronTabModel();
- $this->notification_model = new NotificationModel();
- $this->id_user = session()->get('id_user');
- $this->token_user = session()->get('token');
- $language = \Config\Services::language();
- $language->setLocale(session()->lang);
- }
-
- public function index()
- {
- return redirect()->to('/home');
- }
-
- public function getUsers(){
- $postData = service('request')->getVar();
- if($postData != null && isset($postData->data)){
- $dtpostData = $postData->data;
-
- //Read value
- $draw = $dtpostData->draw;
- $start = $dtpostData->start;
- $rowperpage = $dtpostData->length; // Rows display per page
- $columnIndex = $dtpostData->order[0]->column; // Column index
- $columnName = $dtpostData->columns[$columnIndex]->data; // Column name
- $columnSortOrder = $dtpostData->order[0]->dir; // asc or desc
- $searchValue = $dtpostData->search->value; // Search value
-
- //Total number of records without filtering
- $totalRecords = $this->user_model->select('id_user')
- //->join('auth_groups','auth_groups.token = auth_user.group')
- ->countAllResults();
-
- //Total number of records with filtering
- $totalRecordwithFilter = $this->user_model->select('id_user')
- //->join('auth_groups','auth_groups.token = auth_user.group')
- ->orLike('first_name', $searchValue)
- ->orLike('email', $searchValue)
- ->countAllResults();
-
- //Fetch records
- //$records = $this->user_model->select('auth_user.*,auth_groups.title')
- $records = $this->user_model->select('auth_user.*')
- //->join('auth_groups','auth_groups.token = auth_user.group')
- ->orLike('first_name', $searchValue)
- ->orLike('email', $searchValue)
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
-
-
-
- //Format records
- foreach ($records as $key => $value){
- if($records[$key]['email_confirmed'] == 1){
- $records[$key]['email'] = $records[$key]['email'].' '.'';
- }
- $editLink = site_url('usuarios/user/edit/').$records[$key]['token'];
- $records[$key]['options'] = ''.
- '
-
-
-
- ';
- }
-
- //Data records
- $data = array();
- foreach($records as $record ){
-
- $groups_token = $this->group_user_model->select('token_group')
- ->where('token_user',$record['token'])
- ->findAll();
-
- $groups_names = [];
- foreach($groups_token as $g_t){
- $title = $this->group_model->select('title')
- ->where('token',$g_t)
- ->first()['title'];
- array_push($groups_names, $title);
-
- }
-
- $data[] = array(
- "first_name"=>$record['first_name'],
- "email"=>$record['email'],
-
- "group"=>$groups_names,//JJO$record['title'],
-
- "mobile"=>$record['mobile'],
- "last_access"=>$record['last_access'],
- "last_ip"=>$record['last_ip'],
- "created_at"=>$record['created_at'],
- "options"=>$record['options']
- );
- }
-
- //Response
- $response = array(
- "draw" => intval($draw),
- "iTotalRecords" => $totalRecords,
- "iTotalDisplayRecords" => $totalRecordwithFilter,
- "aaData" => $data,
- "token" => csrf_hash() // New token hash
- );
- return $this->response->setJSON($response);
- }else{
- return $this->response->setJSON(["error"=>true]);
- }
- }
-
- public function getGroups(){
- $postData = service('request')->getVar();
- if($postData != null && isset($postData->data)){
- $dtpostData = $postData->data;
-
- //Read value
- $draw = $dtpostData->draw;
- $start = $dtpostData->start;
- $rowperpage = $dtpostData->length; // Rows display per page
- $columnIndex = $dtpostData->order[0]->column; // Column index
- $columnName = $dtpostData->columns[$columnIndex]->data; // Column name
- $columnSortOrder = $dtpostData->order[0]->dir; // asc or desc
- $searchValue = $dtpostData->search->value; // Search value
-
- //Total number of records without filtering
- $totalRecords = $this->group_model->select('id_group')
- ->countAllResults();
-
- //Total number of records with filtering
- $totalRecordwithFilter = $this->group_model->select('id_group')
- ->orLike('title', $searchValue)
- ->countAllResults();
-
- //Fetch records
- $records = $this->group_model->select('*')
- ->orLike('title', $searchValue)
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
-
- //Format records
- foreach ($records as $key => $value){
- $editLink = site_url('usuarios/group/edit/').$records[$key]['token'];
- $records[$key]['options'] = ''.
- '
-
-
-
- ';
- }
-
- //Data records
- $data = array();
- foreach($records as $record ){
- $data[] = array(
- "title"=>$record['title'],
- "dashboard"=>$record['dashboard'],
- "created_at"=>$record['created_at'],
- "updated_at"=>$record['updated_at'],
- "options"=>$record['options']
- );
- }
-
- //Response
- $response = array(
- "draw" => intval($draw),
- "iTotalRecords" => $totalRecords,
- "iTotalDisplayRecords" => $totalRecordwithFilter,
- "aaData" => $data,
- "token" => csrf_hash() // New token hash
- );
- return $this->response->setJSON($response);
- }else{
- return $this->response->setJSON(["error"=>true]);
- }
- }
-
- public function getActivities($all=""){
- $postData = service('request')->getVar();
- if($postData != null && isset($postData->data)){
- $dtpostData = $postData->data;
-
- //Read value
- $draw = $dtpostData->draw;
- $start = $dtpostData->start;
- $rowperpage = $dtpostData->length; // Rows display per page
- $columnIndex = $dtpostData->order[0]->column; // Column index
- $columnName = $dtpostData->columns[$columnIndex]->data; // Column name
- $columnSortOrder = $dtpostData->order[0]->dir; // asc or desc
- $searchValue = $dtpostData->search->value; // Search value
-
- $session = session();
-
- //Total number of records without filtering
- if($session->get('dashboard')=='admin' && !empty($all)){
- $totalRecords = $this->activity_model->select('id_activity')
- ->join('auth_user','auth_user.token = auth_activity.user')
- ->countAllResults();
- }else{
- $totalRecords = $this->activity_model->select('id_activity')
- ->join('auth_user','auth_user.token = auth_activity.user')
- ->where('auth_activity.user',$session->get('token'))
- ->countAllResults();
- }
-
- //Total number of records with filtering
- if($session->get('dashboard')=='admin' && !empty($all)){
- $totalRecordwithFilter = $this->activity_model->select('id_activity')
- ->join('auth_user','auth_user.token = auth_activity.user')
- ->orLike('first_name', $searchValue)
- ->countAllResults();
- }else{
- $totalRecordwithFilter = $this->activity_model->select('id_activity')
- ->join('auth_user','auth_user.token = auth_activity.user')
- ->orLike('first_name', $searchValue)
- ->where('auth_activity.user',$session->get('token'))
- ->countAllResults();
- }
-
- //Fetch records
- if($session->get('dashboard')=='admin' && !empty($all)){
- $records = $this->activity_model->select('auth_activity.*,concat(first_name, " (",email, ")") AS name')
- ->join('auth_user','auth_user.token = auth_activity.user')
- ->orLike('first_name', $searchValue)
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
- }else{
- $records = $this->activity_model->select('auth_activity.*,concat(first_name, " (",email, ")") AS name')
- ->join('auth_user','auth_user.token = auth_activity.user')
- ->orLike('first_name', $searchValue)
- ->where('auth_activity.user',$session->get('token'))
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
- }
-
-
- //Data records
- $data = array();
- foreach($records as $record ){
- $data[] = array(
- "name"=>$record['name'],
- "level"=>$record['level'],
- "event"=>$record['event'],
- "ip"=>$record['ip'],
- "os"=>$record['os'],
- "browser"=>$record['browser'],
- "created_at"=>$record['created_at']
- );
- }
-
- //Response
- $response = array(
- "draw" => intval($draw),
- "iTotalRecords" => $totalRecords,
- "iTotalDisplayRecords" => $totalRecordwithFilter,
- "aaData" => $data,
- "token" => csrf_hash() // New token hash
- );
- return $this->response->setJSON($response);
- }else{
- return $this->response->setJSON(["error"=>true]);
- }
- }
-
- public function getCronHistory(){
- $postData = service('request')->getVar();
- if($postData != null && isset($postData->data)){
- $dtpostData = $postData->data;
-
- //Read value
- $draw = $dtpostData->draw;
- $start = $dtpostData->start;
- $rowperpage = $dtpostData->length; // Rows display per page
- $columnIndex = $dtpostData->order[0]->column; // Column index
- $columnName = $dtpostData->columns[$columnIndex]->data; // Column name
- $columnSortOrder = $dtpostData->order[0]->dir; // asc or desc
- $searchValue = $dtpostData->search->value; // Search value
-
- //Total number of records without filtering
- $totalRecords = $this->crontab_model->select('id_crontab')
- ->countAllResults();
-
- //Total number of records with filtering
- $totalRecordwithFilter = $this->crontab_model->select('id_crontab')
- ->orLike('routine', $searchValue)
- ->orLike('error', $searchValue)
- ->countAllResults();
-
- //Fetch records
- $records = $this->crontab_model->select('*')
- ->orLike('routine', $searchValue)
- ->orLike('error', $searchValue)
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
-
- //Data records
- $data = array();
- foreach($records as $record ){
- $data[] = array(
- "routine"=>$record['routine'],
- "error"=>$record['error'],
- "created_at"=>$record['created_at']
- );
- }
-
- //Response
- $response = array(
- "draw" => intval($draw),
- "iTotalRecords" => $totalRecords,
- "iTotalDisplayRecords" => $totalRecordwithFilter,
- "aaData" => $data,
- "token" => csrf_hash() // New token hash
- );
- return $this->response->setJSON($response);
- }else{
- return $this->response->setJSON(["error"=>true]);
- }
- }
-
- public function getNotification(){
- $postData = service('request')->getVar();
- if($postData != null && isset($postData->data)){
- $dtpostData = $postData->data;
-
- //Read value
- $draw = $dtpostData->draw;
- $start = $dtpostData->start;
- $rowperpage = $dtpostData->length; // Rows display per page
- $columnIndex = $dtpostData->order[0]->column; // Column index
- $columnName = $dtpostData->columns[$columnIndex]->data; // Column name
- $columnSortOrder = $dtpostData->order[0]->dir; // asc or desc
- $searchValue = $dtpostData->search->value; // Search value
-
- //Total number of records without filtering
- $totalRecords = $this->notification_model->select('id_notification')
- ->join('user AS sender','notification.user_sender = sender.token','left')
- ->join('user AS recipient','notification.user_recipient = recipient.token','left')
- ->countAllResults();
-
- //Total number of records with filtering
- $totalRecordwithFilter = $this->notification_model->select('id_notification')
- ->join('user AS sender','notification.user_sender = sender.token','left')
- ->join('user AS recipient','notification.user_recipient = recipient.token','left')
- ->orLike('title', $searchValue)
- ->orLike('sender.first_name', $searchValue)
- ->orLike('recipient.first_name', $searchValue)
- ->countAllResults();
-
- //Fetch records
- $records = $this->notification_model->select('notification.token, sender.first_name AS sender, recipient.first_name AS recipient, notification.title, is_send_email, is_read, notification.created_at')
- ->join('user AS sender','notification.user_sender = sender.token','left')
- ->join('user AS recipient','notification.user_recipient = recipient.token','left')
- ->orLike('title', $searchValue)
- ->orLike('sender.first_name', $searchValue)
- ->orLike('recipient.first_name', $searchValue)
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
-
- //Format records
- foreach ($records as $key => $value){
- $records[$key]['options'] = ''.
- '
-
-
-
- ';
- }
-
- //Data records
- $data = array();
- foreach($records as $record ){
- $data[] = array(
- "sender"=>$record['sender'],
- "recipient"=>$record['recipient'],
- "title"=>$record['title'],
- "is_send_email"=>$record['is_send_email'],
- "is_read"=>$record['is_read'],
- "created_at"=>$record['created_at'],
- "options"=>$record['options']
- );
- }
-
- //Response
- $response = array(
- "draw" => intval($draw),
- "iTotalRecords" => $totalRecords,
- "iTotalDisplayRecords" => $totalRecordwithFilter,
- "aaData" => $data,
- "token" => csrf_hash() // New token hash
- );
- return $this->response->setJSON($response);
- }else{
- return $this->response->setJSON(["error"=>true]);
- }
- }
-
- public function getMyNotification(){
- $postData = service('request')->getVar();
- if($postData != null && isset($postData->data)){
- $dtpostData = $postData->data;
-
- //Read value
- $draw = $dtpostData->draw;
- $start = $dtpostData->start;
- $rowperpage = $dtpostData->length; // Rows display per page
- $columnIndex = $dtpostData->order[0]->column; // Column index
- $columnName = $dtpostData->columns[$columnIndex]->data; // Column name
- $columnSortOrder = $dtpostData->order[0]->dir; // asc or desc
- $searchValue = $dtpostData->search->value; // Search value
-
- //Total number of records without filtering
- $totalRecords = $this->notification_model->select('id_notification')
- ->join('user AS sender','notification.user_sender = sender.token','left')
- ->join('user AS recipient','notification.user_recipient = recipient.token','left')
- ->where('user_recipient',$this->token_user)
- ->countAllResults();
-
- //Total number of records with filtering
- $totalRecordwithFilter = $this->notification_model->select('id_notification')
- ->join('user AS sender','notification.user_sender = sender.token','left')
- ->join('user AS recipient','notification.user_recipient = recipient.token','left')
- ->orLike('title', $searchValue)
- ->where('user_recipient',$this->token_user)
- ->countAllResults();
-
- //Fetch records
- $records = $this->notification_model->select('notification.token, sender.first_name AS sender, recipient.first_name AS recipient, notification.title, is_read, notification.created_at')
- ->join('user AS sender','notification.user_sender = sender.token','left')
- ->join('user AS recipient','notification.user_recipient = recipient.token','left')
- ->orLike('title', $searchValue)
- ->where('user_recipient',$this->token_user)
- ->orderBy($columnName,$columnSortOrder)
- ->findAll($rowperpage, $start);
-
- //Format records
- foreach ($records as $key => $value){
- $records[$key]['options'] = ' '.lang("App.notification_view_btn").'';
- }
-
- //Data records
- $data = array();
- foreach($records as $record ){
- $data[] = array(
- "sender"=>$record['sender'],
- "recipient"=>$record['recipient'],
- "title"=>$record['title'],
- "created_at"=>$record['created_at'],
- "is_read"=>$record['is_read'],
- "options"=>$record['options']
- );
- }
-
- //Response
- $response = array(
- "draw" => intval($draw),
- "iTotalRecords" => $totalRecords,
- "iTotalDisplayRecords" => $totalRecordwithFilter,
- "aaData" => $data,
- "token" => csrf_hash() // New token hash
- );
- return $this->response->setJSON($response);
- }else{
- return $this->response->setJSON(["error"=>true]);
- }
- }
-}
diff --git a/ci4/app/Controllers/Configuracion/Group.php b/ci4/app/Controllers/Configuracion/Group.php
index b2a11bad..68b6d694 100755
--- a/ci4/app/Controllers/Configuracion/Group.php
+++ b/ci4/app/Controllers/Configuracion/Group.php
@@ -28,7 +28,7 @@ class Group extends \App\Controllers\GoBaseController
// Breadcrumbs
$this->viewData['breadcrumb'] = [
['title' => "Home", 'route' => "javascript:void(0);", 'active' => false],
- ['title' => lang("App.menu_permission_group"), 'route' => site_url("configuracion/group"), 'active' => true]
+ ['title' => lang("App.menu_permission_group"), 'route' => route_to("userGroupList"), 'active' => true]
];
parent::initController($request, $response, $logger);
diff --git a/ci4/app/Controllers/Configuracion/Users.php b/ci4/app/Controllers/Configuracion/Users.php
index c207006e..3d3127b4 100755
--- a/ci4/app/Controllers/Configuracion/Users.php
+++ b/ci4/app/Controllers/Configuracion/Users.php
@@ -50,7 +50,7 @@ class Users extends \App\Controllers\GoBaseController
// Breadcrumbs (IMN)
$this->viewData['breadcrumb'] = [
['title' => lang("App.menu_configuration"), 'route' => "javascript:void(0);", 'active' => false],
- ['title' => lang("App.menu_users"), 'route' => site_url('configuracion/users'), 'active' => true]
+ ['title' => lang("App.menu_users"), 'route' => route_to('userList'), 'active' => true]
];
parent::initController($request, $response, $logger);
diff --git a/ci4/app/Controllers/My.php b/ci4/app/Controllers/My.php
deleted file mode 100755
index 2bb01f25..00000000
--- a/ci4/app/Controllers/My.php
+++ /dev/null
@@ -1,26 +0,0 @@
-user_model = new UserModel();
- $this->notification_model = new NotificationModel();
- }
-
- public function index()
- {
- return redirect()->to('profile');
- }
-
-
-}
diff --git a/ci4/app/Language/es/RolesPermisos.php b/ci4/app/Language/es/RolesPermisos.php
index 788287c3..0bcc7616 100644
--- a/ci4/app/Language/es/RolesPermisos.php
+++ b/ci4/app/Language/es/RolesPermisos.php
@@ -26,6 +26,9 @@ return [
'toprodPermission' => 'Pasar a Producción',
+ 'otsPermission' => 'Órdenes de trabajo',
+ 'planningsPermission' => 'Plannings',
+
// System sections
'clientesSection' => 'Clientes',
'plantillaTarifaSection' => 'Plantilla de tarifas',
@@ -63,6 +66,7 @@ return [
'albaranesPermission' => 'Albaranes',
'vencimientosPermission' => 'Vencimientos',
"ticketsSection" => "Tickets",
+ 'produccionSection' => 'Producción',
'validation' => [
'id' => [
diff --git a/ci4/app/Views/themes/vuexy/form/my/notification.php b/ci4/app/Views/themes/vuexy/form/my/notification.php
deleted file mode 100644
index 35bc1ffa..00000000
--- a/ci4/app/Views/themes/vuexy/form/my/notification.php
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
-
-
-
-
= $title['module']??'' ?>
- = $title['page']??'' ?>
-
-
-
-
-
-
- - = $item['title'] ?>
-
- - = $item['title'] ?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- | =lang("App.notification_grid_sender")?> |
- =lang("App.notification_grid_recipient")?> |
- =lang("App.notification_grid_title")?> |
- =lang("App.notification_grid_created_my")?> |
- =lang("App.notification_grid_view_my")?> |
- =lang("App.user_grid_options")?> |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-= sweetAlert() ?>
diff --git a/ci4/app/Views/themes/vuexy/form/my/view.php b/ci4/app/Views/themes/vuexy/form/my/view.php
deleted file mode 100644
index 6c8dc4b9..00000000
--- a/ci4/app/Views/themes/vuexy/form/my/view.php
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
-
-
= $title['module']??'' ?>
- = $title['page']??'' ?>
-
-
-
-
-
-
- - = $item['title'] ?>
-
- - = $item['title'] ?>
-
-
-
-
-
-
-
-
-
-
- = html_entity_decode($obj['body']??'');?>
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php b/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php
index 2d0a64af..aa66d967 100644
--- a/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php
+++ b/ci4/app/Views/themes/vuexy/main/menu_digitalizacion.php
@@ -98,28 +98,28 @@
0): ?>
0): ?>
0): ?>
0): ?>
0): ?>
@@ -265,16 +265,17 @@
0): ?>
0): ?>
+
0): ?>
0): ?>
diff --git a/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php b/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php
index deddfe18..b9fa7196 100644
--- a/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php
+++ b/ci4/app/Views/themes/vuexy/main/menu_maquetacion.php
@@ -1,114 +1,119 @@
-
-
-
\ No newline at end of file
+
+
+
+
+
+
+
+
+
+
+
+
+ 0): ?>
+
+
+
+
+
+
+
+
+ 0): ?>
+
+
+
+
+ 0): ?>
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php b/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php
index 169ae9c3..bb7582a5 100644
--- a/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php
+++ b/ci4/app/Views/themes/vuexy/main/menus/configuracion_menu.php
@@ -72,14 +72,14 @@ if (
user()->can('usuarios.menu')) { ?>
user()->can('roles-permisos.menu')) { ?>
diff --git a/ci4/app/Views/themes/vuexy/main/menus/pedidos_menu.php b/ci4/app/Views/themes/vuexy/main/menus/pedidos_menu.php
index e3960862..38c03027 100644
--- a/ci4/app/Views/themes/vuexy/main/menus/pedidos_menu.php
+++ b/ci4/app/Views/themes/vuexy/main/menus/pedidos_menu.php
@@ -18,35 +18,35 @@ if (