function tomarClase() { $cursoUrl = $_GET['curso']; $idClase = $_GET['clase']; require_once 'modulos/cursos/clases/Clase.php'; require_once 'modulos/cursos/modelos/ClaseModelo.php'; require_once 'modulos/cursos/modelos/CursoModelo.php'; require_once 'modulos/usuarios/modelos/UsuarioCursosModelo.php'; $curso = getCursoFromUniqueUrl($cursoUrl); $usuario = getUsuarioActual(); //Validar que la clase pertenezca al curso if (clasePerteneceACurso($curso->idCurso, $idClase)) { //Validar que el usuario este suscrito al curso if (esUsuarioUnAlumnoDelCurso($usuario->idUsuario, $curso->idCurso) || $curso->idUsuario == $usuario->idUsuario || tipoUsuario() == "administrador") { $clase = getClase($idClase); $temas = getTemas($curso->idCurso); $clases = getClases($curso->idCurso); if ($curso->idUsuario != $usuario->idUsuario && tipoUsuario() != "administrador") { //si no es el dueño ni un administrador, contar las views sumarVistaClase($idClase); sumarTotalView($curso->idCurso); } $idSiguienteClase = obtenerIdSiguienteClase($clase->idClase, $clases); switch ($clase->idTipoClase) { case 0: if ($clase->transformado == 1) { require_once 'modulos/cursos/vistas/tomarClaseVideo.php'; } else { setSessionMessage("<h4 class='error'>Este video aún se está transformando. Espera unos minutos</h4>"); redirect('/curso/' . $curso->uniqueUrl); } break; case 1: case 2: require_once 'modulos/cursos/vistas/tomarClase.php'; break; case 3: require_once 'modulos/cursos/vistas/tomarClaseTarjetas.php'; break; } } else { setSessionMessage("<h4 class='error'>No puedes tomar esa clase, no tienens suscripción en ese curso</h4>"); redirect("/"); } } else { setSessionMessage("<h4 class='error'>Ocurrió un error al mostrar el curso. Intenta de nuevo más tarde</h4>"); redirect("/"); } }
function tomarClase() { $cursoUrl = $_GET['curso']; $idClase = $_GET['clase']; require_once 'modulos/cursos/clases/Clase.php'; require_once 'modulos/cursos/modelos/ClaseModelo.php'; require_once 'modulos/cursos/modelos/CursoModelo.php'; require_once 'modulos/usuarios/modelos/UsuarioCursosModelo.php'; $curso = getCursoFromUniqueUrl($cursoUrl); $usuario = getUsuarioActual(); $tipoUsuario = tipoUsuario(); //Validar que la clase pertenezca al curso if (clasePerteneceACurso($curso->idCurso, $idClase)) { //Validar que el usuario este suscrito al curso if (esUsuarioUnAlumnoDelCurso($usuario->idUsuario, $curso->idCurso) || $curso->idUsuario == $usuario->idUsuario || $tipoUsuario == "administrador" || $tipoUsuario == "administradorPrivado") { $clase = getClase($idClase); if ($tipoUsuario != "administrador") { //si no es un administrador, contar las views sumarVistaClase($idClase); sumarTotalView($curso->idCurso); registrarClaseTomada($usuario->idUsuario, $idClase); } $clases = obtenerClaseSiguienteYanterior($curso->idCurso, $idClase); $usoEnDisco = 0; switch ($clase->idTipoClase) { case 0: if ($clase->transformado == 1) { //dividimos el uso de disco entre dos, porque en la base de datos //esta almacenado en uso de disco la suma del archivo mp4 y el ogv. //No siempre el peso de los 2 es igual, pero es lo más cercano sin //necesitar otra columna en la bd ni tener que identificar que navegador es. $usoEnDisco = $clase->usoDeDisco / 2; //aquí aumentamos el ancho de banda utilizado require_once 'modulos/principal/modelos/variablesDeProductoModelo.php'; if (deltaVariableDeProducto("usoActualAnchoDeBanda", $usoEnDisco)) { require_once 'modulos/cursos/vistas/tomarClaseVideo.php'; } else { setSessionMessage("Ocurrió un error al cargar el video.", " ¡Error! ", "error"); redirect('/curso/' . $curso->uniqueUrl); } } else { setSessionMessage("Este archivo de video aún se está transformando. Espera unos minutos", " ¡Espera! ", "error"); redirect('/curso/' . $curso->uniqueUrl); } break; case 1: case 2: $usoEnDisco = $clase->usoDeDisco; //aquí aumentamos el ancho de banda utilizado require_once 'modulos/principal/modelos/variablesDeProductoModelo.php'; if (deltaVariableDeProducto("usoActualAnchoDeBanda", $usoEnDisco)) { require_once 'modulos/cursos/vistas/tomarClase.php'; } else { setSessionMessage("Ocurrió un error al cargar el archivo.", " ¡Error! ", "error"); redirect('/curso/' . $curso->uniqueUrl); } break; case 3: require_once 'modulos/cursos/vistas/tomarClaseTarjetas.php'; break; case 4: if ($clase->transformado == 1) { //dividimos el uso de disco entre dos, porque en la base de datos //esta almacenado en uso de disco la suma del archivo mp4 y el ogv. //No siempre el peso de los 2 es igual, pero es lo más cercano sin //necesitar otra columna en la bd ni tener que identificar que navegador es. $usoEnDisco = $clase->usoDeDisco / 2; //aquí aumentamos el ancho de banda utilizado require_once 'modulos/principal/modelos/variablesDeProductoModelo.php'; if (deltaVariableDeProducto("usoActualAnchoDeBanda", $usoEnDisco)) { require_once 'modulos/cursos/vistas/tomarClaseAudio.php'; } else { setSessionMessage("Ocurrió un error al cargar el audio.", " ¡Espera! ", "error"); redirect('/curso/' . $curso->uniqueUrl); } } else { setSessionMessage("Este archivo de audio aún se está transformando. Espera unos minutos", " ¡Espera! ", "error"); redirect('/curso/' . $curso->uniqueUrl); } break; } } else { setSessionMessage("No puedes tomar esa clase, no tienens suscripción en ese curso", " ¡Error! ", "error"); redirect("/"); } } else { setSessionMessage("Ocurrió un error al mostrar el curso. Intenta de nuevo más tarde", " ¡Error! ", "error"); redirect("/"); } }