function pintarinterfaz2($id, $name) { global $CFG, $COURSE, $USER; $context = get_context_instance(CONTEXT_COURSE, $COURSE->id); $tipo1 = new Ejercicios_mis_puzzledoble(); $aux = $tipo1->obtener_uno_name($name); $nombre = $aux->get('name'); $numero = $aux->get('nrespuestas'); $tasociacion = $aux->get('elemaso'); $mform = $this->_form; $mform->addElement('html', '<link rel="stylesheet" type="text/css" href="./style.css">'); $tabla_menu = '<table>'; //esto puedo quitarlo $cosa = -1; if (has_capability('moodle/legacy:admin', $context, $USER->id, false)) { $cosa = optional_param("cosa", 0, PARAM_INT); } //compruebo si soy profesor if (has_capability('moodle/legacy:editingteacher', $context, $USER->id, false) || $cosa == 0) { //Creando el ejercicio $titulo = '<h1>' . "Creando ejercicio: " . $nombre . '</h1>'; $mform->addElement('html', $titulo); //gestion de tipo de asociacion switch ($tasociacion) { default: case "Imagen-Descripcion": //Imagenes-Descripcion //Seleccion de imagenes for ($i = 1; $i <= $numero; $i++) { $mform->addElement('file', 'archivo' . $i, "Imagen" . $i); $mform->addRule('archivo' . $i, "Imagen Necesaria", 'required', null, 'client'); $mform->addElement('textarea', 'descripcion' . $i, "Descripcion Imagen" . $i, 'wrap="virtual" rows="5" cols="50"'); $mform->addRule('descripcion' . $i, "Descripcion Necesaria", 'required', null, 'client'); } $mform->addElement('hidden', 'oculto', 1); break; case "Video-Descripcion": //Imagenes-Descripcion //Seleccion de imagenes for ($i = 1; $i <= $numero; $i++) { $mform->addElement('file', 'archivo' . $i, "Video" . $i); $mform->addRule('archivo' . $i, "Video Necesaria", 'required', null, 'client'); $mform->addElement('textarea', 'descripcion' . $i, "Descripcion Video" . $i, 'wrap="virtual" rows="5" cols="50"'); $mform->addRule('descripcion' . $i, "Descripcion Necesaria", 'required', null, 'client'); } $mform->addElement('hidden', 'oculto', 2); break; case "Palabra-Descripcion": //Imagenes-Descripcion //Seleccion de imagenes for ($i = 1; $i <= $numero; $i++) { $attributes = 'size="20"'; $mform->addElement('text', 'palabra' . $i, 'Palabra' . $i, $attributes); $mform->addRule('palabra' . $i, "Palabra Necesaria", 'required', null, 'client'); $mform->addElement('textarea', 'descripcion' . $i, "Descripcion Palabra" . $i, 'wrap="virtual" rows="5" cols="50"'); $mform->addRule('descripcion' . $i, "Descripcion Necesaria", 'required', null, 'client'); } $mform->addElement('hidden', 'oculto', 3); break; } //botones $buttonarray = array(); $buttonarray[] =& $mform->createElement('submit', 'submitbutton', get_string('Aceptar', 'ejercicios')); $mform->addGroup($buttonarray, 'botones', '', array(' '), false); } }
function obtener_todos() { $sql = 'SELECT * FROM mdl_ejercicios_tipo_puzzle'; $todos = get_records_sql($sql); $todos_mis_ejercicios = array(); foreach ($todos as $cosa) { $mp = new Ejercicios_mis_puzzledoble(); $mp->obtener_uno($cosa->id); $todos_mis_ejercicios[] = $mp; } return $todos_mis_ejercicios; }
$error = 0; //guardamos el ejercicio en la bd //para ello recuperamos el nombre $ej = required_param('nombre_ejercicio', PARAM_TEXT); //Comprobamos que el nombre no existe ya en la bd $ejercicios_bd = new Ejercicios_mis_puzzledoble(); $ejercicios_todos = $ejercicios_bd->obtener_todos(); foreach ($ejercicios_todos as $ej_bd) { if ($ej_bd->get('name') == $ej) { //Si el ejercico ya existe muestro un error en el nombre //volvemos a la pagina principal $error = 1; redirect('./view.php?id=' . $id_curso . '&opcion=1&error=1'); } } if ($error != 1) { //Si no ha habido error $nelem = required_param('numeroimagenes', PARAM_INT); $Classtipo = required_param('ClasificacionTipo', PARAM_TEXT); $elemAsociacion = required_param('comb', PARAM_TEXT); //echo $nelem+1; //echo $Classtipo; //echo $elemAsociacion; //leo un ejercicio y lo guardo $ejercicio_leido = new Ejercicios_mis_puzzledoble(required_param('nombre_ejercicio', PARAM_TEXT), $nelem + 1, $Classtipo, $elemAsociacion); $ejercicio_leido->insertar(); //mostramos el ejercicio creado redirect('./view.php?id=' . $id_curso . '&opcion=3&name_ej=' . required_param('nombre_ejercicio', PARAM_TEXT)); } } }
//obtenemos todos los archivos uno por uno foreach ($_FILES as $name => $values) { //comprobamos que esten en la carpeta que nosotros queremos if (move_uploaded_file($values['tmp_name'], '/var/www/moodle/mod/ejercicios/imagenes/' . $name_ej . '_' . $i)) { echo 'El archivo ha sido subido correctamente.<br/>'; echo 'Nombre original del archivo: ' . $values['name'] . '<br/>'; $i++; } else { //si no estan en la carpeta que nosotros queremos echo 'Ha ocurrido un error.<br/>'; } } } } //leo un ejercicio y lo guardo $ejercicio_alterar = new Ejercicios_mis_puzzledoble($ejercicios_leido->get('name'), $ejercicios_leido->get('nrespuestas'), $ejercicios_leido->get('ctipo'), $ejercicios_leido->get('elemaso'), $ejercicios_leido->get('id')); if (required_param('oculto', PARAM_INT) == 3) { //Si es un ejercicio del tipo Palabra descripcion añado las palabaras for ($i = 1; $i <= $ejercicios_leido->get('nrespuestas'); $i++) { $ejercicio_alterar->set_palabras(required_param('palabra' . $i, PARAM_TEXT), $i); } } for ($i = 1; $i <= $ejercicios_leido->get('nrespuestas'); $i++) { $ejercicio_alterar->set_descripcion(required_param('descripcion' . $i, PARAM_TEXT), $i); } $ejercicio_alterar->alterar(); if (required_param('oculto', PARAM_INT) == 1) { redirect('./view.php?id=' . $id_curso . '&opcion=2&name_ej=' . $name_ej . '&tipo=1'); } else { if (required_param('oculto', PARAM_INT) == 2) { redirect('./view.php?id=' . $id_curso . '&opcion=2&name_ej=' . $name_ej . '&tipo=2');