chore: version inicial del codigo fuente del LMS Estafeta

This commit is contained in:
2026-10-02 20:33:12 -06:00
commit c8bb6b97b9
1572 changed files with 457520 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
<?php
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
require_once "../config.php";
$catid = $_GET['idcat'];
$numEmpl = $_GET['numEmpl'];
$sql = "
SELECT
categoria.id as idcat,
categoria.nombre as categoria,
scormpkg.id as idrecurso,
scormpkg.nombre as recurso,
scormvars.numempl,
scormvars.varName,
scormvars.varValue,
scormvars.fecha
FROM
categoria
INNER JOIN scormpkg ON categoria.id = scormpkg.idcategoria
INNER JOIN scormvars ON scormpkg.id = scormvars.SCOInstanceID
WHERE scormvars.numempl = '$numEmpl' AND scormvars.varName = 'cmi.core.lesson_status'
AND categoria.id = '$catid'
";
global $link;
dbConnect();
$result = mysqli_query($link, $sql);
$return = new stdClass();
if ( mysqli_num_rows($result) <= 0 ) {
$return->code = "0";
$return->msg="Sin insignias";
}else{
$return->code = "1";
$return->msg="insignias";
$return->datos = [];
while ($row = mysqli_fetch_array ($result)){
$return->datos[] = $row;
}
}
echo json_encode($return, JSON_UNESCAPED_UNICODE);
mysqli_free_result($result);
exit;
?>
+39
View File
@@ -0,0 +1,39 @@
<?php
require_once "../config.php";
$sql = "
SELECT
categoria.id,
categoria.clave,
categoria.padre,
categoria.nombre,
categoria.imagen,
categoria.descripcion
FROM
categoria
WHERE
categoria.habilitado = 1 AND categoria.padre = 1
";
global $link;
dbConnect();
$result = mysqli_query($link, $sql);
$return = new stdClass();
if ( mysqli_num_rows($result) <= 0 ) {
$return->code = "0";
$return->msg="Sin cursos";
}else{
$return->code = "1";
$return->msg="cursos";
$return->datos = [];
while ($row = mysqli_fetch_array ($result)){
$img = trim((string)$row["imagen"]);
if ($img !== '' && !preg_match('~^(https?:)?//~i', $img)) { $img = rtrim($CFG->wwwroot, '/') . '/' . ltrim($img, '/'); }
$row["imagen"] = $img;
$return->datos[] = $row;
}
}
echo json_encode($return, JSON_UNESCAPED_UNICODE);
mysqli_free_result($result);
exit;
?>
+43
View File
@@ -0,0 +1,43 @@
<?php
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
require_once "../config.php";
$catid = $_GET['idcat'];
$sql = "
SELECT
scormpkg.id,
scormpkg.idcategoria,
scormpkg.nombre as recname,
categoria.nombre as catname,
categoria.descripcion as catdescripcion,
scormpkg.descripcion,
scormpkg.imagen,
scormpkg.url,
scormpkg.clave
FROM
scormpkg
INNER JOIN categoria ON scormpkg.idcategoria = categoria.id
WHERE scormpkg.idcategoria = '$catid' AND scormpkg.habilitado = 1
";
global $link;
dbConnect();
$result = mysqli_query($link, $sql);
$return = new stdClass();
if ( mysqli_num_rows($result) <= 0 ) {
$return->code = "0";
$return->msg="Sin recursos";
}else{
$return->code = "1";
$return->msg="recursos";
$return->datos = [];
while ($row = mysqli_fetch_array ($result)){
$return->datos[] = $row;
}
}
echo json_encode($return, JSON_UNESCAPED_UNICODE);
mysqli_free_result($result);
?>
+42
View File
@@ -0,0 +1,42 @@
<?php
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
require_once "../config.php";
$catid = $_GET['idcat'];
$sql = "
SELECT
scormpkg.id,
scormpkg.idcategoria,
scormpkg.nombre as recname,
categoria.nombre as catname,
categoria.descripcion as catdescripcion,
scormpkg.descripcion,
scormpkg.imagen,
scormpkg.url
FROM
scormpkg
INNER JOIN categoria ON scormpkg.idcategoria = categoria.id
+68
View File
@@ -0,0 +1,68 @@
<?php
require_once "../config.php";
$numemp = $_GET["numemp"];
$sql = "
SELECT
*
FROM
(
SELECT
categoria.id,
categoria.clave,
categoria.nombre,
scormvars.numempl AS numempl,
insignias.imagen,
insignias.descripcion,
CASE
WHEN ( COUNT( scormvars.varValue ) = ( SELECT COUNT( * ) FROM scormpkg WHERE scormpkg.idcategoria = categoria.id AND scormpkg.habilitado = 1 ) ) THEN
'Completado' ELSE 'No Completado'
END AS estado
FROM
scormvars
INNER JOIN scormpkg ON scormpkg.id = scormvars.SCOInstanceID
INNER JOIN categoria ON scormpkg.idcategoria = categoria.id
INNER JOIN insignias ON scormpkg.idcategoria = insignias.idobjetivo
WHERE
scormvars.varName = 'cmi.core.lesson_status'
AND (scormvars.varValue = 'completed' )
AND scormvars.numempl = '".$numemp."'
AND insignias.habilitado = 1
AND scormpkg.habilitado = 1
GROUP BY
scormvars.numempl,
categoria.clave
) AS rs1
";
global $link;
dbConnect();
$result = mysqli_query($link, $sql);
$return = new stdClass();
if ( mysqli_num_rows($result) <= 0 ) {
$return->code = "0";
$return->msg="Sin sellos v1";
}else{
$return->code = "1";
$return->msg="sellos";
$return->datos = [];
while ($row = mysqli_fetch_array ($result)){
$return->datos[] = $row;
}
}
echo json_encode($return, JSON_UNESCAPED_UNICODE);
mysqli_free_result($result);
exit;
?>