inicio_postgres
This commit is contained in:
commit
bf938777a2
Binary file not shown.
|
After Width: | Height: | Size: 2.7 KiB |
|
|
@ -0,0 +1,20 @@
|
||||||
|
Assignment files
|
||||||
|
================
|
||||||
|
|
||||||
|
Report to display all assignment files uploaded for a course and / or user
|
||||||
|
|
||||||
|
|
||||||
|
Installation
|
||||||
|
------------
|
||||||
|
|
||||||
|
Copy code to the folder /report/curriculum_files
|
||||||
|
|
||||||
|
Run the notifications to update the capabilities
|
||||||
|
|
||||||
|
Then the report is available from site admin -> reports -> curriculum_files
|
||||||
|
|
||||||
|
Version history
|
||||||
|
---------------
|
||||||
|
|
||||||
|
Version : 2013091500
|
||||||
|
Initial attempt
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
<?php
|
||||||
|
require('../../config.php');
|
||||||
|
require_once($CFG->dirroot.'/lib/tablelib.php');
|
||||||
|
require_once(dirname(__FILE__) . '/lib.php');
|
||||||
|
|
||||||
|
|
||||||
|
global $DB, $USER;
|
||||||
|
|
||||||
|
$v_funcion = isset($_REQUEST["funcion"]) ? $_REQUEST["funcion"] : "SIN_REGISTRO";
|
||||||
|
$v_idtraspaso = isset($_POST['idtraspaso']) ? $_POST['idtraspaso'] : 0;
|
||||||
|
$v_idcurso = isset($_POST['curso']) ? $_POST['curso'] : 0;
|
||||||
|
|
||||||
|
switch($v_funcion){
|
||||||
|
|
||||||
|
case "traspasar_notas":
|
||||||
|
|
||||||
|
|
||||||
|
$enrol = enrol_get_plugin('dbinacap');
|
||||||
|
$authdb = $enrol->db_init_inacap();
|
||||||
|
|
||||||
|
$sql_traspsoSIGA =" begin TRASPASO_NOTAS_SIGA.INSERTA_NOTAEXAM_SIGA(".$v_idtraspaso.",'".$USER->idnumber."' ); end;";
|
||||||
|
|
||||||
|
$rs = $authdb->Execute( $sql_traspsoSIGA );
|
||||||
|
if( !$rs ){
|
||||||
|
echo "Error al Insertar Notas Examen a SIGA";
|
||||||
|
}else{
|
||||||
|
echo "Traspaso realizado....";
|
||||||
|
// add_to_log($v_idcurso, "traspasoexa_SIGA", "traspasoexa", "trapasa a siga idtraspaso(".$v_idtraspaso.") ", $USER->id, 0, $USER->id);
|
||||||
|
|
||||||
|
}
|
||||||
|
$authdb->Close();
|
||||||
|
exit;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case "eliminar_notas":
|
||||||
|
|
||||||
|
$enrol = enrol_get_plugin('dbinacap');
|
||||||
|
$authdb = $enrol->db_init_inacap();
|
||||||
|
|
||||||
|
$sql_elimina =" begin TRASPASO_NOTAS.elimina_traspasoexa(".$v_idtraspaso."); end; ";
|
||||||
|
|
||||||
|
$Elirs = $authdb->Execute( $sql_elimina );
|
||||||
|
if(!$Elirs){
|
||||||
|
echo 'Error al Eliminar...';
|
||||||
|
}else{
|
||||||
|
// add_to_log($v_idcurso, "traspasoexa_SIGA", "Elimina Traspaso Exa", "Elimina Traspaso Exa(".$v_idtraspaso.") ", $USER->id, 0, $USER->id);
|
||||||
|
echo 'Eliminación Realizada....';
|
||||||
|
}
|
||||||
|
$authdb->Close();
|
||||||
|
exit;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
@ -0,0 +1,2 @@
|
||||||
|
define ("report_traspasonotasexam/export",["jquery"],function(a){return{initialise:function initialise(){a("h2").css({display:"block","font-size":"1.5em"});if(0==a("#view-activities").length||0==a("#view-grades-siga").length){a("#ok").css("display","none");a("#view-resumen").css("display","none");a("#view-tabla").css("display","none");a("#view-detalles").css("display","none")}a("#ok").click(function(){var b=a("input[name=\"activ\"]:checked").parents("tr").children(":eq(1)").html(),c=a("input[name=\"cali\"]:checked").parents("tr").children(":eq(1)").html();if(b==void 0){alert("Seleccione Actividad y Calificaci\xF3n.");return!1}if(c==void 0){alert("Seleccione Actividad y Calificaci\xF3n.");return!1}});a("#gradesform").submit(function(){if(!confirm("Ha Seleccionado Homologar la Actividad "+a("input[name=\"activ\"]:checked").parents("tr").children(":eq(1)").html()+" Con la Calificaci\xF3n "+a("input[name=\"cali\"]:checked").parents("tr").children(":eq(0)").html()+" \xBFDesea Continuar?")){return!1}});a("#open").click(function(){a(".popup").slideToggle("slow");return!1});a("a[data-toggle=modal]").click(function(){var b=a(this).attr("id");a.ajax({cache:!1,type:"POST",url:"detalles.php",data:"idtraspaso="+b,success:function success(b){a("#myModal").show();a(".modal-body").show().html(b)}})});a("input[type='button'][name='ftraspaso']").click(function(){var b=a(this).attr("id"),c=a("input[type='hidden'][name='idcourse']").val();a.ajax({cache:!1,type:"POST",url:"accion.php",data:{funcion:"traspasar_notas",idtraspaso:b,curso:c},dataType:"html",success:function success(a){alert(a);location.reload()}})});a("input[type='button'][name='ftraspasoelim']").click(function(){var b=a(this).attr("id"),c=a("input[type='hidden'][name='idcourse']").val();a.ajax({cache:!1,type:"POST",url:"accion.php",data:{funcion:"eliminar_notas",idtraspaso:b,curso:c},dataType:"html",success:function success(a){alert(a);location.reload()}})})}}});
|
||||||
|
//# sourceMappingURL=export.min.js.map
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,86 @@
|
||||||
|
|
||||||
|
//define(['jquery', 'core/ajax', 'core/modal_factory', 'core/str'], function($, Ajax, ModalFactory, str) {
|
||||||
|
define(['jquery'], function($) {
|
||||||
|
return {
|
||||||
|
initialise: function() {
|
||||||
|
$("h2").css({"display": "block", "font-size": "1.5em"});
|
||||||
|
if($("#view-activities").length == 0 || $("#view-grades-siga").length == 0){
|
||||||
|
$("#ok").css("display","none");
|
||||||
|
$("#view-resumen").css("display", "none");
|
||||||
|
$("#view-tabla").css("display", "none");
|
||||||
|
$("#view-detalles").css("display", "none");
|
||||||
|
}
|
||||||
|
$("#ok").click(function(){
|
||||||
|
var valorAct = $('input[name="activ"]:checked').parents("tr").children(":eq(1)").html();
|
||||||
|
var valorCali = $('input[name="cali"]:checked').parents("tr").children(":eq(1)").html();
|
||||||
|
if( valorAct == undefined){
|
||||||
|
alert("Seleccione Actividad y Calificaci\u00f3n.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if( valorCali == undefined){
|
||||||
|
alert("Seleccione Actividad y Calificaci\u00f3n.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$("#gradesform").submit(function(){
|
||||||
|
if (!confirm("Ha Seleccionado Homologar la Actividad " +
|
||||||
|
$('input[name="activ"]:checked').parents("tr").children(":eq(1)").html()
|
||||||
|
+ " Con la Calificación " + $('input[name="cali"]:checked').parents("tr").children(":eq(0)").html()
|
||||||
|
+ " ¿Desea Continuar?")){ return false;}
|
||||||
|
});
|
||||||
|
$("#open").click(function() {
|
||||||
|
$(".popup").slideToggle("slow");
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
$("a[data-toggle=modal]").click(function()
|
||||||
|
{
|
||||||
|
var traspaso_id = $(this).attr("id");
|
||||||
|
$.ajax({
|
||||||
|
cache: false,
|
||||||
|
type: "POST",
|
||||||
|
url: "detalles.php",
|
||||||
|
data: "idtraspaso="+traspaso_id,
|
||||||
|
success: function(data)
|
||||||
|
{
|
||||||
|
$("#myModal").show();
|
||||||
|
$(".modal-body").show().html(data);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
$("input[type='button'][name='ftraspaso']").click(function() {
|
||||||
|
var v_idtraspaso = $(this).attr("id");
|
||||||
|
var idcursos = $("input[type='hidden'][name='idcourse']").val();
|
||||||
|
//alert(v_idtraspaso);
|
||||||
|
$.ajax({
|
||||||
|
cache: false,
|
||||||
|
type: "POST",
|
||||||
|
url: "accion.php",
|
||||||
|
data: {funcion:'traspasar_notas',idtraspaso:v_idtraspaso,curso:idcursos},
|
||||||
|
dataType: "html",
|
||||||
|
success: function(data)
|
||||||
|
{
|
||||||
|
alert(data);
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
$("input[type='button'][name='ftraspasoelim']").click(function() {
|
||||||
|
var v_idtraspaso = $(this).attr("id");
|
||||||
|
var idcursos = $("input[type='hidden'][name='idcourse']").val();
|
||||||
|
// alert(v_idtraspaso);
|
||||||
|
$.ajax({
|
||||||
|
cache: false,
|
||||||
|
type: "POST",
|
||||||
|
url: "accion.php",
|
||||||
|
data: {funcion:'eliminar_notas',idtraspaso:v_idtraspaso,curso:idcursos},
|
||||||
|
dataType: "html",
|
||||||
|
success: function(data)
|
||||||
|
{
|
||||||
|
alert(data);
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
});
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,40 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Capabilities
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage traspaso_notas
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('MOODLE_INTERNAL') || die();
|
||||||
|
|
||||||
|
$capabilities = array(
|
||||||
|
|
||||||
|
'report/traspasonotasexam:view' => array(
|
||||||
|
'riskbitmask' => RISK_PERSONAL,
|
||||||
|
'captype' => 'read',
|
||||||
|
'contextlevel' => CONTEXT_USER,
|
||||||
|
'archetypes' => array(
|
||||||
|
'manager' => CAP_ALLOW
|
||||||
|
),
|
||||||
|
'clonepermissionsfrom' => 'coursereport/log:view',
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Post installation and migration code.
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage participation
|
||||||
|
* @copyright 2011 Petr Skoda {@link http://skodak.org}
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('MOODLE_INTERNAL') || die;
|
||||||
|
|
||||||
|
function xmldb_report_traspasonotasexam_install() {
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,56 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<XMLDB PATH="report/traspasonotasexam/db" VERSION="20130915" COMMENT="XMLDB file for Moodle report/traspasonotasexam"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:noNamespaceSchemaLocation="../../../lib/xmldb/xmldb.xsd"
|
||||||
|
>
|
||||||
|
<TABLES>
|
||||||
|
<TABLE NAME="traspasonotasexam" COMMENT="Instancias de Traspaso de Notas Examenes">
|
||||||
|
<FIELDS>
|
||||||
|
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
|
||||||
|
<FIELD NAME="secc_ccod" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Seccion de curso en SIGA tabla secciones"/>
|
||||||
|
<FIELD NAME="cali_ncorr" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Calificacion Seccion de curso en SIGA tabla CALIFICACIONES_SECCION "/>
|
||||||
|
<FIELD NAME="cali_nevaluacion" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Número de Calificacion en SIGA tabla CALIFICACIONES_SECCION "/>
|
||||||
|
<FIELD NAME="courseid" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="ID del Curso en AAI MOODLE tabla M_course"/>
|
||||||
|
<FIELD NAME="gradeid" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="ID de la calificaciòn que tiene realación con la actividad en AAI MOODLE"/>
|
||||||
|
<FIELD NAME="grademax" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Máximo valor de la calificaciòn en AAI MOODLE"/>
|
||||||
|
<FIELD NAME="itemmodule" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="ID de la actividad del curso en AAI MOODLE"/>
|
||||||
|
<FIELD NAME="pers_ncorr" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="IDNUMBER de MOODLE.M_USER, PERS_NCORR de SIGA.PERSONAS Profesor del Curso"/>
|
||||||
|
<FIELD NAME="audi_tusuario" TYPE="char" LENGTH="255" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="IDNUMBER de MOODLE.M_USER, PERS_NCORR de SIGA.PERSONAS que hace el traspaso"/>
|
||||||
|
<FIELD NAME="audi_fmodificacion" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="FECHA TIMESTAMP en la que se hace el traspaso"/>
|
||||||
|
<FIELD NAME="audi_fmodificacion_siga" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="FECHA TIMESTAMP en la que se hace el traspaso a SIGA"/>
|
||||||
|
<FIELD NAME="scale" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Escala utilizada en la actividad"/>
|
||||||
|
<FIELD NAME="observacion" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" COMMENT="Grado de finalización de la activodad (finalizado/no finalizado)"/>
|
||||||
|
</FIELDS>
|
||||||
|
<KEYS>
|
||||||
|
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
|
||||||
|
</KEYS>
|
||||||
|
<INDEXES>
|
||||||
|
<INDEX NAME="course" UNIQUE="false" FIELDS="courseid"/>
|
||||||
|
</INDEXES>
|
||||||
|
</TABLE>
|
||||||
|
<TABLE NAME="traspasonotasexam_det" COMMENT="Stores all the actual chat messages">
|
||||||
|
<FIELDS>
|
||||||
|
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true"/>
|
||||||
|
<FIELD NAME="traspasoidexe" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="Id de la tabla traspaso_notas"/>
|
||||||
|
<FIELD NAME="itemid" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="registro en grada_items que enlaza con la actividad "/>
|
||||||
|
<FIELD NAME="pers_ncorr" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="IDNUMBER de MOODLE.M_USER, PERS_NCORR de SIGA.PERSONAS del alumno que hace la actividad"/>
|
||||||
|
<FIELD NAME="userid" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="id de usuario alumno en M_USER"/>
|
||||||
|
<FIELD NAME="porcent_exigencia" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="el porcentaje de exigencia con el cual se calculó la nota"/>
|
||||||
|
<FIELD NAME="grade" TYPE="number" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" DECIMALS="1" COMMENT="Puntaje en Moodle del alumno en la actividad"/>
|
||||||
|
<FIELD NAME="nota" TYPE="number" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" DECIMALS="1" COMMENT="Nota calculada respecto del porcentaje de exigencia y grade"/>
|
||||||
|
<FIELD NAME="audi_tusuario" TYPE="char" LENGTH="255" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="IDNUMBER de MOODLE.M_USER, PERS_NCORR de SIGA.PERSONAS que hace el traspaso"/>
|
||||||
|
<FIELD NAME="audi_fmodificacion" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="FECHA TIMESTAMP en la que se hace el traspaso"/>
|
||||||
|
<FIELD NAME="audi_fmodificacion_siga" TYPE="int" LENGTH="10" NOTNULL="true" DEFAULT="0" SEQUENCE="false" COMMENT="FECHA TIMESTAMP en la que se hace el traspaso a SIGA"/>
|
||||||
|
<FIELD NAME="observacion" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" COMMENT="Observacion en general"/>
|
||||||
|
</FIELDS>
|
||||||
|
<KEYS>
|
||||||
|
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
|
||||||
|
<KEY NAME="fk_traspasoidexe" TYPE="foreign" FIELDS="traspasoidexe" REFTABLE="traspasonotasexam" REFFIELDS="id"/>
|
||||||
|
</KEYS>
|
||||||
|
<INDEXES>
|
||||||
|
<INDEX NAME="user" UNIQUE="false" FIELDS="userid"/>
|
||||||
|
<INDEX NAME="pers_ncorr" UNIQUE="false" FIELDS="pers_ncorr"/>
|
||||||
|
</INDEXES>
|
||||||
|
</TABLE>
|
||||||
|
</TABLES>
|
||||||
|
</XMLDB>
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
// This file keeps track of upgrades to
|
||||||
|
// the traspasonotasexam module
|
||||||
|
//
|
||||||
|
// Sometimes, changes between versions involve
|
||||||
|
// alterations to database structures and other
|
||||||
|
// major things that may break installations.
|
||||||
|
//
|
||||||
|
// The upgrade function in this file will attempt
|
||||||
|
// to perform all the necessary actions to upgrade
|
||||||
|
// your older installation to the current version.
|
||||||
|
//
|
||||||
|
// If there's something it cannot do itself, it
|
||||||
|
// will tell you what you need to do.
|
||||||
|
//
|
||||||
|
// The commands in here will all be database-neutral,
|
||||||
|
// using the methods of database_manager class
|
||||||
|
//
|
||||||
|
// Please do not forget to use upgrade_set_timeout()
|
||||||
|
// before any action that may take longer time to finish.
|
||||||
|
|
||||||
|
function xmldb_traspasonotasexam_upgrade($oldversion) {
|
||||||
|
global $CFG, $DB;
|
||||||
|
|
||||||
|
$dbman = $DB->get_manager();
|
||||||
|
|
||||||
|
|
||||||
|
// Moodle v2.2.0 release upgrade line
|
||||||
|
// Put any upgrade step following this
|
||||||
|
|
||||||
|
// Moodle v2.3.0 release upgrade line
|
||||||
|
// Put any upgrade step following this
|
||||||
|
|
||||||
|
|
||||||
|
// Moodle v2.4.0 release upgrade line
|
||||||
|
// Put any upgrade step following this
|
||||||
|
|
||||||
|
|
||||||
|
// Moodle v2.5.0 release upgrade line.
|
||||||
|
// Put any upgrade step following this.
|
||||||
|
|
||||||
|
|
||||||
|
// Moodle v2.6.0 release upgrade line.
|
||||||
|
// Put any upgrade step following this.
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
<?php
|
||||||
|
require_once(dirname(dirname(dirname(__FILE__))) . '/config.php');
|
||||||
|
require_once(dirname(__FILE__) . '/lib.php');
|
||||||
|
require_once(dirname(__FILE__) . '/filter_form.php');
|
||||||
|
require_once($CFG->libdir . '/adminlib.php');
|
||||||
|
|
||||||
|
$idtraspaso = isset($_POST['idtraspaso']) ? $_POST['idtraspaso'] : 0;
|
||||||
|
|
||||||
|
|
||||||
|
echo traspasonotasexam_Display_Detalles_lista($idtraspaso);
|
||||||
|
?>
|
||||||
|
|
||||||
|
|
@ -0,0 +1,54 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Report filter form
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage assignment_files
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('MOODLE_INTERNAL') || die;
|
||||||
|
|
||||||
|
require_once($CFG->libdir . '/formslib.php');
|
||||||
|
|
||||||
|
class filter_form extends moodleform {
|
||||||
|
|
||||||
|
public function definition() {
|
||||||
|
global $CFG, $USER, $DB;
|
||||||
|
$mform =& $this->_form;
|
||||||
|
$mior_options2 = array();
|
||||||
|
$mform->addElement('header', 'details', get_string('filteroptions', 'report_traspasonotasexam'));
|
||||||
|
|
||||||
|
$mform->addElement('hidden', 'userid');
|
||||||
|
$mform->setType('userid', PARAM_INT);
|
||||||
|
$basefields = array('id', 'shortname', 'fullname', 'idnumber');
|
||||||
|
$datafields=get_user_coursesexa($USER->id, true, $basefields,' fullname ASC ');
|
||||||
|
// echo '<pre>';
|
||||||
|
// print_r($datafields);
|
||||||
|
// echo '</pre>';
|
||||||
|
foreach($datafields as $datafield) {
|
||||||
|
$mior_options2[$datafield->id] = format_string($datafield->fullname);//multilang formatting
|
||||||
|
}
|
||||||
|
$settings = array('type' => 'select');
|
||||||
|
$mform->addElement('select', "cursos", "Mis Cursos", $mior_options2);
|
||||||
|
$this->add_action_buttons(false, "Listar Actividades");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,339 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Participation report
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage participation
|
||||||
|
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
require('../../config.php');
|
||||||
|
require_once($CFG->dirroot.'/lib/tablelib.php');
|
||||||
|
require_once(dirname(__FILE__) . '/lib.php');
|
||||||
|
|
||||||
|
define('DEFAULT_PAGE_SIZE', 20);
|
||||||
|
define('SHOW_ALL_PAGE_SIZE', 5000);
|
||||||
|
|
||||||
|
$activ = required_param('activ', PARAM_INT); // course id.
|
||||||
|
$cali = required_param('cali', PARAM_INT); // course id.
|
||||||
|
//$porcent = required_param('porcent', PARAM_INT); // Porcentaje de incidencia de la calificaciòn sobre la evaluaciòn
|
||||||
|
$idcourse = required_param('idcourse', PARAM_INT);
|
||||||
|
|
||||||
|
$dific = isset($_POST['porcent']) ? $_POST['porcent'] : 60;
|
||||||
|
|
||||||
|
$page = optional_param('page', 0, PARAM_INT); // which page to show
|
||||||
|
$perpage = optional_param('perpage', DEFAULT_PAGE_SIZE, PARAM_INT); // how many per page
|
||||||
|
|
||||||
|
|
||||||
|
$url = new moodle_url('/report/traspasonotasexam/gradelist.php', array('course'=>$idcourse));
|
||||||
|
if ($activ !== 0) $url->param('activ');
|
||||||
|
if ($cali !== 0) $url->param('cali');
|
||||||
|
if ($idcourse !== 0) $url->param('course');
|
||||||
|
if ($page !== 0) $url->param('page');
|
||||||
|
if ($perpage !== DEFAULT_PAGE_SIZE) $url->param('perpage');
|
||||||
|
|
||||||
|
$PAGE->set_url($url, array(
|
||||||
|
'page' => $page,
|
||||||
|
'perpage' => $perpage,
|
||||||
|
'id' => $idcourse));
|
||||||
|
$PAGE->set_pagelayout('report');
|
||||||
|
|
||||||
|
if (!$course = $DB->get_record('course', array('id'=>$idcourse))) {
|
||||||
|
print_error('invalidcourse');
|
||||||
|
}
|
||||||
|
|
||||||
|
require_login($course);
|
||||||
|
$context = context_course::instance($course->id);
|
||||||
|
// require_capability('report/traspasonotasexam:view', $context);// ver capabilities para el docente en la página.
|
||||||
|
?>
|
||||||
|
<script type="text/javascript" src="jquery.js"></script>
|
||||||
|
<script type="text/javascript" src="paging.js"></script>
|
||||||
|
<script type="text/javascript" src="paginacion.js"></script>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function()
|
||||||
|
{
|
||||||
|
$(".emptyrow").remove();
|
||||||
|
// $('#porcent').attr('size',10);
|
||||||
|
$("h2").css({"display": "block", "font-size": "1.5em"});
|
||||||
|
$('#porcent').keyup(function (){
|
||||||
|
this.value = (this.value + '').replace(/[^0-9]/g, '');
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#calcular").click(function(){
|
||||||
|
var porcentaje = $("#porcent").val();
|
||||||
|
if(porcentaje.length < 1 || porcentaje < 10 || porcentaje !=60){
|
||||||
|
alert('Valor ingresado no es valido, sólo se acepta 60%.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
/* if(porcentaje > 99){
|
||||||
|
alert('Valor ingresado debe estar entre el 10% - 99%.');
|
||||||
|
return false;
|
||||||
|
} */
|
||||||
|
if(porcentaje != 60 ){
|
||||||
|
alert('Valor ingresado debe ser 60%.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$("#guardar").click(function(){
|
||||||
|
var formulario = $("#studentsgradesform").serializeArray();
|
||||||
|
var porcentaje = $("#porcent").val();
|
||||||
|
if(porcentaje.length < 1 || porcentaje < 60){
|
||||||
|
alert('Solo se permite el valor 60.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if(porcentaje > 60){
|
||||||
|
alert('Valor ingresado debe ser 60%.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (confirm('¿Usted está seguro de realizar la acción Guardar al '+ porcentaje+' % ?')){
|
||||||
|
$.ajax({
|
||||||
|
type: "POST",
|
||||||
|
dataType: "html",
|
||||||
|
url: "guardar.php",
|
||||||
|
data: formulario,
|
||||||
|
success: function(source){
|
||||||
|
alert(source);
|
||||||
|
// var obj = jQuery.parseJSON(source);
|
||||||
|
window.location = "index.php?cursos="+<?php echo $course->id; ?>;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<?php
|
||||||
|
$PAGE->set_title($course->shortname .': Traspaso de Calificaciones a SIGA ');
|
||||||
|
$PAGE->set_heading($course->fullname);
|
||||||
|
echo $OUTPUT->header();
|
||||||
|
|
||||||
|
/* $dbe = new auth_plugin_db_inacap;
|
||||||
|
$authdb = $dbe->db_init(); */
|
||||||
|
$enrol = enrol_get_plugin('dbinacap');
|
||||||
|
$authdb = $enrol->db_init_inacap();
|
||||||
|
|
||||||
|
$sqlDif = "select asi.tasg_ccod,decode(asi.tasg_ccod,1,(select ponf_jnota_examen *100
|
||||||
|
from ponderaciones_nota_final where talu_ccod = nvl (1, 1) and peri_ccod_inicio <= sc.peri_ccod
|
||||||
|
and sc.peri_ccod <= decode (peri_ccod_termino,0, sc.peri_ccod,peri_ccod_termino)), '')
|
||||||
|
pond_examen from secciones sc, asignaturas asi Where sc.asig_ccod = asi.asig_ccod and sc.secc_ccod=".$course->idnumber;
|
||||||
|
|
||||||
|
$result = $authdb->Execute( $sqlDif );
|
||||||
|
foreach($result as $Ndif){
|
||||||
|
$ponde = isset($Ndif['POND_EXAMEN']) ? $Ndif['POND_EXAMEN'] : 1;
|
||||||
|
}
|
||||||
|
//$dific = isset($_POST['porcent']) ? $_POST['porcent'] : 25;
|
||||||
|
|
||||||
|
$baseurl = $CFG->wwwroot.'/report/traspasonotasexam/gradelist.php?idcourse='.$course->id.'&activ='
|
||||||
|
.$activ.'&cali='.$cali.'&dific='.$dific.'&perpage='.$perpage.'&page='.$page;
|
||||||
|
|
||||||
|
// echo $baseurl;
|
||||||
|
|
||||||
|
$sqlgrades="select x.userid, x.idnumber, x.firstname,x.item, x.lastname, x.itemname, NVL(x.grademin,0) grademin, NVL(x.grademax,0) grademax,NVL(g.rawgrade,0) rawgrade,
|
||||||
|
NVL(g.rawgrademin,0) rawgrademin, NVL(g.rawgrademax,0) rawgrademax, (x.GRADEMAX*$dific)/100 as xexig,
|
||||||
|
to_char( (((7-4)/((NVL(x.GRADEMAX,0) )-(((NVL(x.GRADEMAX,0) )*$dific)/100)))*(NVL(G.RAWGRADE,0)-(((NVL(x.GRADEMAX,0))*$dific)/100)))+4,'990.9') ap ,
|
||||||
|
to_char( (((4-1)/(((NVL(x.GRADEMAX,0)-NVL(x.GRADEMin,0))*$dific)/100))*NVL(G.RAWGRADE,0))+1,'990.9') rep
|
||||||
|
from (
|
||||||
|
select * from(
|
||||||
|
SELECT u.id userid,u.firstname,u.lastname, u.idnumber
|
||||||
|
FROM m_user u
|
||||||
|
JOIN (SELECT DISTINCT eu1_u.id FROM m_user eu1_u JOIN m_user_enrolments eu1_ue ON eu1_ue.userid = eu1_u.id and eu1_ue.status=0 JOIN m_enrol eu1_e ON (eu1_e.id = eu1_ue.enrolid AND eu1_e.courseid = $idcourse)
|
||||||
|
WHERE eu1_u.deleted = 0 AND eu1_u.id <> 1) je ON je.id = u.id
|
||||||
|
JOIN (
|
||||||
|
SELECT DISTINCT ra.userid
|
||||||
|
FROM m_role_assignments ra, m_context mctx
|
||||||
|
WHERE ra.roleid IN (5)
|
||||||
|
and RA.CONTEXTID = MCTX.ID
|
||||||
|
and MCTX.CONTEXTLEVEL = 50
|
||||||
|
and MCTX.INSTANCEID = $idcourse
|
||||||
|
) rainner ON rainner.userid = u.id
|
||||||
|
AND u.deleted = 0
|
||||||
|
) usr,
|
||||||
|
(SELECT id item, itemname, itemtype, grademin, grademax FROM m_grade_items WHERE courseid = $idcourse AND itemtype <> 'course'
|
||||||
|
AND categoryid in (SELECT id FROM m_grade_categories WHERE courseid = $idcourse ))
|
||||||
|
) x left join m_grade_grades g on g.itemid = x.item and g.userid = x.userid
|
||||||
|
where item in ($activ)
|
||||||
|
order by firstname, lastname ";
|
||||||
|
|
||||||
|
// echo $sqlgrades.'<br><br>';
|
||||||
|
|
||||||
|
$grades = $DB->get_records_sql($sqlgrades);
|
||||||
|
|
||||||
|
// // //Generación de Tabla 1--
|
||||||
|
$totalcount = count($grades);
|
||||||
|
$data = array();
|
||||||
|
|
||||||
|
$sqlgrades_header = 'select * from {grade_items} WHERE id = '.$activ;
|
||||||
|
|
||||||
|
$grades_header = $DB->get_record_sql($sqlgrades_header);
|
||||||
|
|
||||||
|
// $dbe = new auth_plugin_db_inacap;
|
||||||
|
// $authdb = $dbe->db_init();
|
||||||
|
|
||||||
|
$sqlCali = "SELECT 0 CALI_NEVALUACION,
|
||||||
|
s.secc_ccod,
|
||||||
|
'Examen' || ' - ' || s.SECC_FTERMINO_SEC || ' ' || $dific caliSIGA
|
||||||
|
FROM secciones s
|
||||||
|
WHERE s.secc_ccod =$cali";
|
||||||
|
// echo $sqlCali;
|
||||||
|
$Ncali = $authdb->Execute( $sqlCali );
|
||||||
|
foreach($Ncali as $Ncalif){
|
||||||
|
$vNCali = $Ncalif['CALI_NEVALUACION'];
|
||||||
|
$vCalisiga = $Ncalif['CALISIGA'];
|
||||||
|
}
|
||||||
|
echo '<form action="'.$CFG->wwwroot.'/report/traspasonotasexam/gradelist.php" method="post" id="studentsgradesform">'."\n";
|
||||||
|
echo '<div style="text-align:center;">'."\n";
|
||||||
|
echo '<input type="hidden" name="idcourse" value="'.$course->id.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="cursos" value="'.$course->id.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="activ" value="'.$activ.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="cali" value="'.$cali.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="ncali" value="'.$vNCali.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="calisiga" value="'.$vCalisiga.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="dific" value="'.$dific.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="returnto" value="'. s($PAGE->url) .'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="secc_ccod" value="'.$course->idnumber.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="gradeid" value="'.$grades_header->id.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="grademax" value="'.$grades_header->grademax.'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="itemmodule" value="'.$grades_header->itemname.'" />'."\n";
|
||||||
|
|
||||||
|
// Nueva distribución de Tablas *****************************************
|
||||||
|
echo html_writer::start_tag('table', array('border' => '0', 'style'=>'margin: 0 auto;'));
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td', array('colspan' => '3', 'align' => 'center'));
|
||||||
|
echo '<h2> Actividad : '.$grades_header->itemname.'</h2>'."<br/>";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
/* echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td', array('colspan' => '3', 'align' => 'center'));
|
||||||
|
echo '<h2> Tabla de Cálculo</h2>'."\n";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr'); */
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td',array('colspan' => '3', 'align' => 'center'));
|
||||||
|
echo html_writer::start_tag('table', array("width" => "100%"));
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td', array('align' => 'center'));
|
||||||
|
//echo '<div>';
|
||||||
|
echo '<input type="submit" id="calcular" value="Calcular al " />'."\n";
|
||||||
|
echo '<input type="text" min="60" max="60" name="porcent" id="porcent" value='.$dific.' /> % '."\n";
|
||||||
|
// echo '<label for="porcent">%</label>'."\n";
|
||||||
|
//echo '</div>';
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
|
||||||
|
echo html_writer::end_tag('table');
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td', array('valign'=>'top'));
|
||||||
|
//VARIABLES Y DATOS DE REGISTROS PARA GENERAR LA TABLA 1
|
||||||
|
$table = new flexible_table('course-grade-'.$course->id.'-'.$activ);
|
||||||
|
$table->course = $course;
|
||||||
|
|
||||||
|
$table->define_columns(array('fullname','grade','calif'));
|
||||||
|
$table->define_headers(array('Nombres / Apellidos','Puntaje','Calificación Calculada al '.$dific.' %'));
|
||||||
|
$table->define_baseurl($baseurl);
|
||||||
|
|
||||||
|
$table->set_attribute('cellpadding','1');
|
||||||
|
$table->set_attribute('class', 'table table-bordered generaltable yy');
|
||||||
|
$table->set_attribute('id', 'participantes');
|
||||||
|
$table->sortable(false,'fullname','ASC');
|
||||||
|
$table->no_sorting('grade');
|
||||||
|
$table->no_sorting('calif');
|
||||||
|
|
||||||
|
$table->set_control_variables(array(
|
||||||
|
TABLE_VAR_SORT => 'ssort',
|
||||||
|
TABLE_VAR_HIDE => 'shide',
|
||||||
|
TABLE_VAR_SHOW => 'sshow',
|
||||||
|
TABLE_VAR_IFIRST => 'sifirst',
|
||||||
|
TABLE_VAR_ILAST => 'silast',
|
||||||
|
TABLE_VAR_PAGE => 'spage'
|
||||||
|
));
|
||||||
|
$table->setup();
|
||||||
|
|
||||||
|
foreach ($grades as $u) {
|
||||||
|
echo '<input type="hidden" name="pers_ncorr" value="'.$u->idnumber.'" />'."\n";
|
||||||
|
if($u->rawgrade < $u->xexig) $calificacion = $u->rep;else $calificacion = $u->ap;
|
||||||
|
$data = array('<a href="'.$CFG->wwwroot.'/user/view.php?id='.$u->userid.'&course='.$course->id.'">'.$u->firstname.' '.$u->lastname.'</a>'."\n",
|
||||||
|
$u->rawgrade,
|
||||||
|
$calificacion
|
||||||
|
);
|
||||||
|
$table->add_data($data);
|
||||||
|
}
|
||||||
|
$table->print_html(); //IMPRIME TABLA 1
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::start_tag('td', array('valign'=>'top'));
|
||||||
|
$GRADEMAX =$grades_header->grademax;
|
||||||
|
$GRADEMIN = $grades_header->grademin;
|
||||||
|
$table2 = new flexible_table('course-grade-'.$course->id.'-'.$activ.'-grid');
|
||||||
|
$table2->course = $course;
|
||||||
|
$table2->define_columns(array('points','grade'));
|
||||||
|
$table2->define_headers(array('Puntaje','Calificación Calculada al '.$dific.' %'));
|
||||||
|
$table2->define_baseurl($baseurl);
|
||||||
|
$table2->set_attribute('cellpadding','1');
|
||||||
|
$table2->set_attribute('class', 'table table-bordered generaltable xx');
|
||||||
|
$table2->set_attribute('id', 'resultados');
|
||||||
|
$table2->setup();
|
||||||
|
$RAWGRADE = $GRADEMIN;
|
||||||
|
$v_exig = ($GRADEMAX*$dific)/100;
|
||||||
|
while ($RAWGRADE <= $GRADEMAX) {
|
||||||
|
if ($RAWGRADE < $v_exig )
|
||||||
|
$v_nota= number_format((((4-1)/((($GRADEMAX - $GRADEMIN)*$dific)/100))*$RAWGRADE)+1 ,1);
|
||||||
|
else
|
||||||
|
// $v_nota= number_format( (((7-4)/(($GRADEMAX - $GRADEMIN)-(((($GRADEMAX - $GRADEMIN)*$dific)/100*100)/100)))*($RAWGRADE-(((($GRADEMAX - $GRADEMIN)*$dific)/100*100)/100)))+4,2);
|
||||||
|
$v_nota= number_format((((7-4)/(($GRADEMAX )-((($GRADEMAX )*$dific)/100)))*($RAWGRADE-((($GRADEMAX)*$dific)/100)))+4,1);
|
||||||
|
$data1 = array($RAWGRADE,$v_nota);
|
||||||
|
$table2->add_data($data1);
|
||||||
|
$RAWGRADE++;
|
||||||
|
}
|
||||||
|
$table2->print_html(); //IMPRIME TABLA 2
|
||||||
|
echo "<div id='NavPosicion'></div>";
|
||||||
|
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::start_tag('td', array('valign'=>'top'));
|
||||||
|
/**/
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
|
||||||
|
echo html_writer::end_tag('table');
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td', array('align' => 'center', 'colspan' =>'3'));
|
||||||
|
echo html_writer::end_tag('table');
|
||||||
|
echo html_writer::start_tag('tr', array('style'=>'height: 50px'));
|
||||||
|
echo html_writer::start_tag('td', array('align' => 'center'));
|
||||||
|
echo '<input type="button" id="guardar" value="Guardar" />'."<br/>";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td', array('align' => 'center', 'style' => 'font-size:12px'));
|
||||||
|
echo '<a href="'.$CFG->wwwroot.'/report/traspasonotasexam/?cursos='.$idcourse.'"> Volver Atrás</a>'."\n";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo html_writer::end_tag('table');
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo '</div>'."\n";
|
||||||
|
echo '</form>'."\n";
|
||||||
|
echo html_writer::end_tag('table');
|
||||||
|
|
||||||
|
$PAGE->requires->js_init_call('M.report_traspasonotasexam.init');
|
||||||
|
|
||||||
|
echo $OUTPUT->footer();
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,43 @@
|
||||||
|
<?php
|
||||||
|
require('../../config.php');
|
||||||
|
require_once($CFG->dirroot.'/lib/tablelib.php');
|
||||||
|
require_once(dirname(__FILE__) . '/lib.php');
|
||||||
|
|
||||||
|
|
||||||
|
global $DB, $USER;
|
||||||
|
|
||||||
|
$enrol = enrol_get_plugin('dbinacap');
|
||||||
|
$authdb = $enrol->db_init_inacap();
|
||||||
|
|
||||||
|
$v_funcion = isset($_REQUEST["funcion"]) ? $_REQUEST["funcion"] : "SIN_REGISTRO";
|
||||||
|
$v_idtraspaso = isset($_POST['idtraspaso']) ? $_POST['idtraspaso'] : 0;
|
||||||
|
|
||||||
|
|
||||||
|
if(isset($_REQUEST['secc_ccod']) != NULL){
|
||||||
|
|
||||||
|
$record = new stdClass();
|
||||||
|
$record->secc_ccod = $_REQUEST['secc_ccod'];
|
||||||
|
$record->cali_ncorr = $_REQUEST['cali'];
|
||||||
|
$record->cali_nevaluacion = $_REQUEST['ncali'];
|
||||||
|
$record->courseid = $_REQUEST['idcourse'];
|
||||||
|
$record->gradeid = $_REQUEST['gradeid'];
|
||||||
|
$record->grademax = $_REQUEST['grademax'];
|
||||||
|
$record->itemmodule = $_REQUEST['activ'];
|
||||||
|
$record->pers_ncorr = $USER->idnumber;//$_REQUEST['pers_ncorr'];
|
||||||
|
$record->audi_tusuario = $USER->idnumber;//$_REQUEST['pers_ncorr'];//0;
|
||||||
|
$record->audi_fmodificacion = time();
|
||||||
|
$record->audi_fmodificacion_siga = 0;
|
||||||
|
$record->scale = $_REQUEST['dific'];
|
||||||
|
$record->observacion = "traspasonotasexam/guardar.php";
|
||||||
|
|
||||||
|
|
||||||
|
$id_traspaso = $DB->insert_record('traspasonotasexam', $record);
|
||||||
|
$sql_ina=" BEGIN traspaso_notas.INSERTA_DETALLE_EXA($id_traspaso,$USER->idnumber,$record->audi_fmodificacion); END;";
|
||||||
|
|
||||||
|
$ret_ina= $authdb->Execute($sql_ina) ;
|
||||||
|
// add_to_log($record->courseid, "traspasonotasexam", "guarda_traspaso", "almacena trapaso ($id_traspaso) seccion".$record->secc_ccod, $USER->id, 0, $USER->id);
|
||||||
|
$authdb->Close();
|
||||||
|
echo 'Almacenado....';
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
@ -0,0 +1,256 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Displays a list of all assignment files for a user and/or course
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage traspaso_notas
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
//require_once(dirname(dirname(dirname(__FILE__))) . '/config.php');
|
||||||
|
require('../../config.php');
|
||||||
|
require_once(dirname(__FILE__) . '/lib.php');
|
||||||
|
require_once(dirname(__FILE__) . '/filter_form.php');
|
||||||
|
require_once($CFG->libdir . '/adminlib.php');
|
||||||
|
global $DB, $USER;
|
||||||
|
$filters['cursos'] = optional_param('cursos', 0, PARAM_INT);
|
||||||
|
$course = isset($_GET['id']) ? $_GET['id'] : 0;
|
||||||
|
require_login();
|
||||||
|
|
||||||
|
$admins = get_admins();
|
||||||
|
$isadmin = false;
|
||||||
|
foreach ($admins as $admin)
|
||||||
|
{
|
||||||
|
if ($USER->id == $admin->id)
|
||||||
|
{
|
||||||
|
$isadmin = true; break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//if ($isadmin) { echo 'Es administrador'; exit; }
|
||||||
|
|
||||||
|
$sql_count=" Select count(*)
|
||||||
|
from m_user mu, m_course mc, m_context mctx, m_role_assignments mra
|
||||||
|
where
|
||||||
|
MRA.CONTEXTID = MCTX.ID
|
||||||
|
and MCTX.INSTANCEID = MC.ID
|
||||||
|
and mctx.contextlevel = 50
|
||||||
|
and MRA.ROLEID in (3,4,61,101,21)
|
||||||
|
and MC.VISIBLE = 1
|
||||||
|
and MRA.USERID = mu.id
|
||||||
|
and mu.id =".$USER->id;
|
||||||
|
$count = $DB->count_records_sql($sql_count);
|
||||||
|
// print_r($count);
|
||||||
|
if($count == 0 && $isadmin == false){
|
||||||
|
$context = context_system::instance();
|
||||||
|
$heading = get_string('pluginname', 'report_traspasonotasexam');
|
||||||
|
$PAGE->set_context($context);
|
||||||
|
$PAGE->set_heading(format_string($heading));
|
||||||
|
$PAGE->set_title(format_string($heading));
|
||||||
|
$PAGE->set_url('/report/traspasonotasexam/index.php', $filters);
|
||||||
|
$PAGE->set_pagelayout('report');
|
||||||
|
echo $OUTPUT->header();
|
||||||
|
echo $OUTPUT->heading($heading);
|
||||||
|
echo '<div id="contenedorizquierdo"><h3>Usuario no autorizado...</h3></div>';
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
// require_login();
|
||||||
|
$context = context_system::instance();
|
||||||
|
|
||||||
|
$heading = get_string('pluginname', 'report_traspasonotasexam');
|
||||||
|
$PAGE->set_context($context);
|
||||||
|
$PAGE->set_heading(format_string($heading));
|
||||||
|
$PAGE->set_title(format_string($heading));
|
||||||
|
$PAGE->set_url('/report/traspasonotasexam/index.php', $filters);
|
||||||
|
$PAGE->set_pagelayout('report');
|
||||||
|
//admin_externalpage_setup('report_traspaso_notas');
|
||||||
|
global $SESSION;
|
||||||
|
|
||||||
|
echo $OUTPUT->header();
|
||||||
|
echo $OUTPUT->heading($heading);
|
||||||
|
|
||||||
|
$mform = new filter_form();
|
||||||
|
|
||||||
|
if ($formdata = $mform->get_data()) {
|
||||||
|
$filters['cursos'] = $formdata->cursos;
|
||||||
|
} else {
|
||||||
|
$formdata = new stdClass();
|
||||||
|
$formdata->cursos = $filters['cursos'];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$mform->set_data($formdata);
|
||||||
|
$mform->display();
|
||||||
|
|
||||||
|
if ($filters['cursos'] != '0' ) {
|
||||||
|
$context = context_course::instance($filters['cursos'], MUST_EXIST);
|
||||||
|
$roles = get_user_roles($context, $USER->id, false);
|
||||||
|
$role = key($roles);
|
||||||
|
$roleid = $roles[$role]->roleid;}
|
||||||
|
else{$roleid = '0';}
|
||||||
|
|
||||||
|
if ($filters['cursos'] != '0' ) {
|
||||||
|
|
||||||
|
|
||||||
|
echo '
|
||||||
|
<script language="JavaScript" src="js/jquery.js" type="text/javascript"></script>
|
||||||
|
<script type="text/javascript" src="js/bootstrap.js"></script> ';
|
||||||
|
echo '<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
$("h2").css({"display": "block", "font-size": "1.5em"});
|
||||||
|
if($("#view-activities").length == 0 || $("#view-grades-siga").length == 0){
|
||||||
|
$("#ok").css("display","none");
|
||||||
|
$("#view-resumen").css("display", "none");
|
||||||
|
$("#view-tabla").css("display", "none");
|
||||||
|
$("#view-detalles").css("display", "none");
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#ok").click(function(){
|
||||||
|
var valorAct = $(\'input[name="activ"]:checked\').parents("tr").children(":eq(1)").html();
|
||||||
|
var valorCali = $(\'input[name="cali"]:checked\').parents("tr").children(":eq(1)").html();
|
||||||
|
if( valorAct == undefined){
|
||||||
|
alert("Seleccione Actividad y Calificaci\u00f3n.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( valorCali == undefined){
|
||||||
|
alert("Seleccione Actividad y Calificaci\u00f3n.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#gradesform").submit(function(){
|
||||||
|
if (!confirm("Ha Seleccionado Homologar la Actividad " + $(\'input[name="activ"]:checked\').parents("tr").children(":eq(1)").html() + " Con la Calificación " + $(\'input[name="cali"]:checked\').parents("tr").children(":eq(0)").html() + " ¿Desea Continuar?")){ return false;}
|
||||||
|
});
|
||||||
|
|
||||||
|
$("#open").click(function() {
|
||||||
|
$(".popup").slideToggle("slow");
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
$("a[data-toggle=modal]").click(function()
|
||||||
|
{
|
||||||
|
var traspaso_id = $(this).attr("id");
|
||||||
|
$.ajax({
|
||||||
|
cache: false,
|
||||||
|
type: "POST",
|
||||||
|
url: "detalles.php",
|
||||||
|
data: "idtraspaso="+traspaso_id,
|
||||||
|
success: function(data)
|
||||||
|
{
|
||||||
|
$("#myModal").show();
|
||||||
|
$(".modal-body").show().html(data);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
$("input[type=\'button\'][name=\'ftraspaso\']").click(function() {
|
||||||
|
var v_idtraspaso = $(this).attr("id");
|
||||||
|
var idcursos = $("input[type=\'hidden\'][name=\'idcourse\']").val();
|
||||||
|
//alert(v_idtraspaso);
|
||||||
|
$.ajax({
|
||||||
|
cache: false,
|
||||||
|
type: "POST",
|
||||||
|
url: "accion.php",
|
||||||
|
data: {funcion:\'traspasar_notas\',idtraspaso:v_idtraspaso,curso:idcursos},
|
||||||
|
dataType: "html",
|
||||||
|
success: function(data)
|
||||||
|
{
|
||||||
|
alert(data);;
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
$("input[type=\'button\'][name=\'ftraspasoelim\']").click(function() {
|
||||||
|
var v_idtraspaso = $(this).attr("id");
|
||||||
|
var idcursos = $("input[type=\'hidden\'][name=\'idcourse\']").val();
|
||||||
|
// alert(v_idtraspaso);
|
||||||
|
$.ajax({
|
||||||
|
cache: false,
|
||||||
|
type: "POST",
|
||||||
|
url: "accion.php",
|
||||||
|
data: {funcion:\'eliminar_notas\',idtraspaso:v_idtraspaso,curso:idcursos},
|
||||||
|
dataType: "html",
|
||||||
|
success: function(data)
|
||||||
|
{
|
||||||
|
alert(data);;
|
||||||
|
location.reload();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>';
|
||||||
|
$assignments = traspasonotasexam_get_list($filters);
|
||||||
|
echo '<form action="'.$CFG->wwwroot.'/report/traspasonotasexam/gradelist.php" method="post" id="gradesform">'."\n";
|
||||||
|
echo '<div style="text-align:center;">'."\n";
|
||||||
|
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />'."\n";
|
||||||
|
echo '<input type="hidden" name="idcourse" value="'.$filters['cursos'].'" />'."\n";
|
||||||
|
echo '<div style="font-weight:bold"><h2>'. miCursoexa($filters['cursos']) . '</h2></div>';
|
||||||
|
echo traspasonotasexam_display_list($assignments, $filters);
|
||||||
|
echo '<div>';
|
||||||
|
echo '<br/><input id="ok" style="width: 130px; height: 30px; " type="submit" value="' . get_string('ok', 'report_traspasonotasexam') . '" />'."\n";
|
||||||
|
echo '</div>';
|
||||||
|
echo '</div>'."\n";
|
||||||
|
echo '</form>'."\n";
|
||||||
|
$assignments = traspasonotasexam_get_resumen($filters);
|
||||||
|
echo ' <p> </p>
|
||||||
|
<div id="content" style="text-align:center;">
|
||||||
|
<div><a href="#" id="open">Resumen Histórico</a></div>
|
||||||
|
<p> </p>
|
||||||
|
</div>
|
||||||
|
<div id="popup" class="popup">
|
||||||
|
<div class="content-popup">
|
||||||
|
<div align="center">';
|
||||||
|
echo traspasonotasexam_Display_Detalles($assignments, $filters);
|
||||||
|
echo ' <div class="detpopup-overlay"></div>';
|
||||||
|
echo ' </div>
|
||||||
|
</div>
|
||||||
|
</div>';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
echo '<br> <strong>Debe seleccionar Asignatura. </strong>';
|
||||||
|
}
|
||||||
|
echo '<div id="dialog-confirm"></div>';
|
||||||
|
echo ' <!-- Modal -->
|
||||||
|
<div class="modal" id="myModal" style="display:none">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||||
|
<h4 class="modal-title">Detalle Traspaso Notas</h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a href="#" class="btn btn-default" data-dismiss="modal">Cerrar</a>
|
||||||
|
</div>
|
||||||
|
</div><!-- /.modal-content -->
|
||||||
|
</div><!-- /.modal-dialog -->
|
||||||
|
</div><!-- /.modal -->';
|
||||||
|
|
||||||
|
$PAGE->requires->js_init_call('M.report_traspasonotasexam.init');
|
||||||
|
|
||||||
|
|
||||||
|
echo $OUTPUT->footer();
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,210 @@
|
||||||
|
/* =========================================================
|
||||||
|
* bootstrap-modal.js v2.0.1
|
||||||
|
* http://twitter.github.com/bootstrap/javascript.html#modals
|
||||||
|
* =========================================================
|
||||||
|
* Copyright 2012 Twitter, Inc.
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
* ========================================================= */
|
||||||
|
|
||||||
|
|
||||||
|
!function( $ ){
|
||||||
|
|
||||||
|
"use strict"
|
||||||
|
|
||||||
|
/* MODAL CLASS DEFINITION
|
||||||
|
* ====================== */
|
||||||
|
|
||||||
|
var Modal = function ( content, options ) {
|
||||||
|
this.options = options
|
||||||
|
this.$element = $(content)
|
||||||
|
.delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
|
||||||
|
}
|
||||||
|
|
||||||
|
Modal.prototype = {
|
||||||
|
|
||||||
|
constructor: Modal
|
||||||
|
|
||||||
|
, toggle: function () {
|
||||||
|
return this[!this.isShown ? 'show' : 'hide']()
|
||||||
|
}
|
||||||
|
|
||||||
|
, show: function () {
|
||||||
|
var that = this
|
||||||
|
|
||||||
|
if (this.isShown) return
|
||||||
|
|
||||||
|
$('body').addClass('modal-open')
|
||||||
|
|
||||||
|
this.isShown = true
|
||||||
|
this.$element.trigger('show')
|
||||||
|
|
||||||
|
escape.call(this)
|
||||||
|
backdrop.call(this, function () {
|
||||||
|
var transition = $.support.transition && that.$element.hasClass('fade')
|
||||||
|
|
||||||
|
!that.$element.parent().length && that.$element.appendTo(document.body) //don't move modals dom position
|
||||||
|
|
||||||
|
that.$element
|
||||||
|
.show()
|
||||||
|
|
||||||
|
if (transition) {
|
||||||
|
that.$element[0].offsetWidth // force reflow
|
||||||
|
}
|
||||||
|
|
||||||
|
that.$element.addClass('in')
|
||||||
|
|
||||||
|
transition ?
|
||||||
|
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) :
|
||||||
|
that.$element.trigger('shown')
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
, hide: function ( e ) {
|
||||||
|
e && e.preventDefault()
|
||||||
|
|
||||||
|
if (!this.isShown) return
|
||||||
|
|
||||||
|
var that = this
|
||||||
|
this.isShown = false
|
||||||
|
|
||||||
|
$('body').removeClass('modal-open')
|
||||||
|
|
||||||
|
escape.call(this)
|
||||||
|
|
||||||
|
this.$element
|
||||||
|
.trigger('hide')
|
||||||
|
.removeClass('in')
|
||||||
|
|
||||||
|
$.support.transition && this.$element.hasClass('fade') ?
|
||||||
|
hideWithTransition.call(this) :
|
||||||
|
hideModal.call(this)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* MODAL PRIVATE METHODS
|
||||||
|
* ===================== */
|
||||||
|
|
||||||
|
function hideWithTransition() {
|
||||||
|
var that = this
|
||||||
|
, timeout = setTimeout(function () {
|
||||||
|
that.$element.off($.support.transition.end)
|
||||||
|
hideModal.call(that)
|
||||||
|
}, 500)
|
||||||
|
|
||||||
|
this.$element.one($.support.transition.end, function () {
|
||||||
|
clearTimeout(timeout)
|
||||||
|
hideModal.call(that)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function hideModal( that ) {
|
||||||
|
this.$element
|
||||||
|
.hide()
|
||||||
|
.trigger('hidden')
|
||||||
|
|
||||||
|
backdrop.call(this)
|
||||||
|
}
|
||||||
|
|
||||||
|
function backdrop( callback ) {
|
||||||
|
var that = this
|
||||||
|
, animate = this.$element.hasClass('fade') ? 'fade' : ''
|
||||||
|
|
||||||
|
if (this.isShown && this.options.backdrop) {
|
||||||
|
var doAnimate = $.support.transition && animate
|
||||||
|
|
||||||
|
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
|
||||||
|
.appendTo(document.body)
|
||||||
|
|
||||||
|
if (this.options.backdrop != 'static') {
|
||||||
|
this.$backdrop.click($.proxy(this.hide, this))
|
||||||
|
}
|
||||||
|
|
||||||
|
if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
|
||||||
|
|
||||||
|
this.$backdrop.addClass('in')
|
||||||
|
|
||||||
|
doAnimate ?
|
||||||
|
this.$backdrop.one($.support.transition.end, callback) :
|
||||||
|
callback()
|
||||||
|
|
||||||
|
} else if (!this.isShown && this.$backdrop) {
|
||||||
|
this.$backdrop.removeClass('in')
|
||||||
|
|
||||||
|
$.support.transition && this.$element.hasClass('fade')?
|
||||||
|
this.$backdrop.one($.support.transition.end, $.proxy(removeBackdrop, this)) :
|
||||||
|
removeBackdrop.call(this)
|
||||||
|
|
||||||
|
} else if (callback) {
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function removeBackdrop() {
|
||||||
|
this.$backdrop.remove()
|
||||||
|
this.$backdrop = null
|
||||||
|
}
|
||||||
|
|
||||||
|
function escape() {
|
||||||
|
var that = this
|
||||||
|
if (this.isShown && this.options.keyboard) {
|
||||||
|
$(document).on('keyup.dismiss.modal', function ( e ) {
|
||||||
|
e.which == 27 && that.hide()
|
||||||
|
})
|
||||||
|
} else if (!this.isShown) {
|
||||||
|
$(document).off('keyup.dismiss.modal')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* MODAL PLUGIN DEFINITION
|
||||||
|
* ======================= */
|
||||||
|
|
||||||
|
$.fn.modal = function ( option ) {
|
||||||
|
return this.each(function () {
|
||||||
|
var $this = $(this)
|
||||||
|
, data = $this.data('modal')
|
||||||
|
, options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
|
||||||
|
if (!data) $this.data('modal', (data = new Modal(this, options)))
|
||||||
|
if (typeof option == 'string') data[option]()
|
||||||
|
else if (options.show) data.show()
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
$.fn.modal.defaults = {
|
||||||
|
backdrop: true
|
||||||
|
, keyboard: true
|
||||||
|
, show: true
|
||||||
|
}
|
||||||
|
|
||||||
|
$.fn.modal.Constructor = Modal
|
||||||
|
|
||||||
|
|
||||||
|
/* MODAL DATA-API
|
||||||
|
* ============== */
|
||||||
|
|
||||||
|
$(function () {
|
||||||
|
$('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) {
|
||||||
|
var $this = $(this), href
|
||||||
|
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
|
||||||
|
, option = $target.data('modal') ? 'toggle' : $.extend({}, $target.data(), $this.data())
|
||||||
|
|
||||||
|
e.preventDefault()
|
||||||
|
$target.modal(option)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
}( window.jQuery );
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -0,0 +1,44 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Strings for report 'assignment_files'
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage assignment_files
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
$string['pluginname'] = 'SIGA grades transfer';
|
||||||
|
$string['filteroptions'] = 'Filter Options';
|
||||||
|
$string['usernamefilter'] = 'Nombre de usuario contiene';
|
||||||
|
$string['coursenamefilter'] = 'Equipo contiene';
|
||||||
|
$string['assignment_files:view'] = 'View assignment files';
|
||||||
|
$string['filenames'] = 'Assignment file name(s)';
|
||||||
|
$string['profesion_g'] = 'Profesion Generica contiene';
|
||||||
|
$string['profesion_e'] = 'Profesion Extendida contiene';
|
||||||
|
$string['firstname'] = 'Nombre';
|
||||||
|
$string['lastname'] = 'Apellidos';
|
||||||
|
$string['profesion_generic'] = 'Profesión';
|
||||||
|
$string['profesion_amplio'] = 'Profesión Extendida';
|
||||||
|
$string['ok'] = 'Send';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Strings for report 'assignment_files'
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage assignment_files
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
$string['pluginname'] = 'Traspaso de Notas Examen a Siga';
|
||||||
|
$string['filteroptions'] = 'Opciones de Filtro';
|
||||||
|
$string['usernamefilter'] = 'Nombre de usuario contiene';
|
||||||
|
$string['coursenamefilter'] = 'Equipo contiene';
|
||||||
|
$string['assignment_files:view'] = 'View assignment files';
|
||||||
|
$string['filenames'] = 'Assignment file name(s)';
|
||||||
|
$string['profesion_g'] = 'Profesion Generica contiene';
|
||||||
|
$string['profesion_e'] = 'Profesion Extendida contiene';
|
||||||
|
$string['firstname'] = 'Nombre';
|
||||||
|
$string['lastname'] = 'Apellidos';
|
||||||
|
$string['profesion_generic'] = 'Profesión';
|
||||||
|
$string['profesion_amplio'] = 'Profesión Extendida';
|
||||||
|
$string['ok'] = 'Enviar';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = '';
|
||||||
|
$string[''] = ' ';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,546 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Library of functions and constants for the assignment_files report
|
||||||
|
*
|
||||||
|
* @package report
|
||||||
|
* @subpackage assignment_files
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('MOODLE_INTERNAL') || die;
|
||||||
|
|
||||||
|
// Required for definitions.
|
||||||
|
require_once($CFG->dirroot . '/mod/assign/submissionplugin.php');
|
||||||
|
require_once($CFG->dirroot . '/mod/assign/submission/file/locallib.php');
|
||||||
|
// Flexible table.
|
||||||
|
require_once($CFG->libdir . '/tablelib.php');
|
||||||
|
// require_once($CFG->dirroot .'/auth/db_inacap/auth.php');
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a list of coursefiles for a user
|
||||||
|
*
|
||||||
|
* @global object $DB
|
||||||
|
* @param array $filters
|
||||||
|
* @param int $totalcount
|
||||||
|
* @return array $assignments - list of assignments and filenames
|
||||||
|
*/
|
||||||
|
function x_traspasonotasexam_get_list($filters) {
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
$params = array();
|
||||||
|
$sqlcourse='';
|
||||||
|
|
||||||
|
if (isset($filters['cursos']) && $filters['cursos']) {
|
||||||
|
$params['cursos'] = $filters['cursos'];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$sqlcourses= 'SELECT distinct mgi.id item, mgi.itemname, mgi.itemtype, mgi.grademin, mgi.grademax, nvl(mtn.id,0) trapaso
|
||||||
|
FROM m_grade_items mgi, m_TRASPASONOTASEXAM mtn
|
||||||
|
WHERE itemtype <> \'course\'
|
||||||
|
and MGI.ID = mtn.itemMODULE(+)
|
||||||
|
and mgi.courseid =:cursos
|
||||||
|
and trim(lower(mgi.itemname)) like lower(\'%Examen%\')
|
||||||
|
and not regexp_like (trim(lower(mgi.itemname)), lower(\'Formativ(a|o)\'))
|
||||||
|
and mgi.itemtype =\'mod\'
|
||||||
|
order by 1 asc';
|
||||||
|
|
||||||
|
|
||||||
|
$submissions = $DB->get_records_sql($sqlcourses, $params);
|
||||||
|
// var_dump($submissions);
|
||||||
|
return $submissions;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//GET Registros Resumen Histórico P_TraspasoNotasExa
|
||||||
|
function x_traspasonotasexam_get_resumen($filters) {
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
$params = array();
|
||||||
|
$sqlcourse='';
|
||||||
|
//echo '<br><br><br>cursos'.$filters['cursos'];exit;
|
||||||
|
|
||||||
|
if (isset($filters['cursos']) && $filters['cursos']) {
|
||||||
|
$params['cursos'] = $filters['cursos'];
|
||||||
|
}else{$params['cursos'] =0;}
|
||||||
|
|
||||||
|
$course = $DB->get_record('course', array('id' => $filters['cursos']), '*', MUST_EXIST);
|
||||||
|
|
||||||
|
$sqlc="SELECT mt.id idtraspaso,TO_CHAR (to_moodfecha (MT.AUDI_FMODIFICACION), 'dd-mm-yyyy') fcreacionaai,
|
||||||
|
MT.AUDI_FMODIFICACION_SIGA ftraspaso, gi.ITEMNAME,
|
||||||
|
-- (SYSDATE - s.SECC_FTERMINO_SEC) fdia, 'Examen' || '-' || TO_CHAR (s.SECC_FTERMINO_SEC, 'dd-mm-yyyy') caliSiga
|
||||||
|
FROM
|
||||||
|
-- secciones s,
|
||||||
|
{TRASPASONOTASEXAM} mt,
|
||||||
|
{course} mc,
|
||||||
|
{grade_items} gi
|
||||||
|
WHERE
|
||||||
|
TO_CHAR (s.secc_ccod) = mc.idnumber
|
||||||
|
AND s.secc_ccod = mt.secc_ccod
|
||||||
|
AND mc.id = gi.courseid
|
||||||
|
AND mt.ITEMMODULE = gi.id
|
||||||
|
AND mc.idnumber = ".$course->idnumber;
|
||||||
|
|
||||||
|
|
||||||
|
/* $dbe = new auth_plugin_db_inacap;
|
||||||
|
$authdb = $dbe->db_init(); */
|
||||||
|
$enrol = enrol_get_plugin('dbinacap311');
|
||||||
|
$authdb = $enrol->db_init_inacap311();
|
||||||
|
|
||||||
|
$sql_auth = "SELECT mt.id idtraspaso,
|
||||||
|
'Examen' || '-' || TO_CHAR (s.SECC_FTERMINO_SEC, 'dd-mm-yyyy')
|
||||||
|
caliSiga,
|
||||||
|
TO_CHAR (to_moodfecha (MT.AUDI_FMODIFICACION), 'dd-mm-yyyy')
|
||||||
|
fcreacionaai,
|
||||||
|
MT.AUDI_FMODIFICACION_SIGA ftraspaso,
|
||||||
|
gi.ITEMNAME,
|
||||||
|
(SYSDATE - s.SECC_FTERMINO_SEC) fdia
|
||||||
|
FROM secciones s,
|
||||||
|
m_TRASPASONOTASEXAM mt,
|
||||||
|
m_course mc,
|
||||||
|
m_grade_items gi
|
||||||
|
WHERE TO_CHAR (s.secc_ccod) = mc.idnumber
|
||||||
|
AND s.secc_ccod = mt.secc_ccod
|
||||||
|
AND mc.id = gi.courseid
|
||||||
|
AND mt.ITEMMODULE = gi.id
|
||||||
|
AND mc.idnumber = ".$course->idnumber;
|
||||||
|
|
||||||
|
|
||||||
|
/* SELECT mt.id idtraspaso,CS.CALI_NCORR,TP.TEVA_TDESC|| ' - '|| to_char(CS.CALI_FEVALUACION, 'dd-mm-yyyy') || ' - '|| CS.CALI_NPONDERACION|| '%' caliSiga, to_char(to_moodfecha(MT.AUDI_FMODIFICACION),'dd-mm-yyyy') fcreacionaai,
|
||||||
|
MT.AUDI_FMODIFICACION_SIGA ftraspaso,
|
||||||
|
gi.ITEMNAME, (sysdate - cs.CALI_FEVALUACION) fdia FROM CALIFICACIONES_SECCION cs,TIPOS_EVALUACION tp,P_TRASPASO_NOTAS mt,p_course mc,p_grade_items gi WHERE TP.TEVA_CCOD = CS.TEVA_CCOD
|
||||||
|
AND cs.secc_ccod = mt.secc_ccod AND cs.cali_ncorr = mt.cali_ncorr AND mc.idnumber = TO_CHAR (cs.secc_ccod) and mc.id=gi.courseid and mt.ITEMMODULE = gi.id
|
||||||
|
AND mc.id = ".$filters['cursos']; */
|
||||||
|
|
||||||
|
$rs = $authdb->Execute( $sql_auth );
|
||||||
|
$objects = array();
|
||||||
|
if (is_array($rs) || is_object($rs))
|
||||||
|
{
|
||||||
|
foreach($rs as $vrs){
|
||||||
|
$key = reset($vrs);
|
||||||
|
$data_cal = $vrs["CALISIGA"];
|
||||||
|
$fcreaAAI = $vrs['FCREACIONAAI'];
|
||||||
|
$ftraspaso = $vrs['FTRASPASO'];
|
||||||
|
$idtraspaso = $vrs['IDTRASPASO'];
|
||||||
|
$itemname = $vrs['ITEMNAME'];
|
||||||
|
$fdia = $vrs['FDIA'];
|
||||||
|
|
||||||
|
|
||||||
|
$submissions = array('itemname' => $itemname, 'calisiga' => $data_cal, 'fcreacion' => $fcreaAAI, 'ftraspaso' => $ftraspaso,'idtraspaso'=>$idtraspaso, 'fdia' => $fdia);
|
||||||
|
if (array_key_exists($key, $objects)) {
|
||||||
|
debugging("Error...");
|
||||||
|
}
|
||||||
|
$objects[$key] = (object)$submissions;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// }
|
||||||
|
return $objects;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Displays a table of curriculum_files
|
||||||
|
*
|
||||||
|
* @param array $submissions array of record objects
|
||||||
|
* @param array $params - contains paging parameters mu.firstname, mu.lastname,uc.profesion_generic, uc.profesion_amplio
|
||||||
|
*/
|
||||||
|
function x_traspasonotasexam_display_list($submissions, $params) {
|
||||||
|
global $DB;
|
||||||
|
// var_dump($submissions);
|
||||||
|
if ($submissions) {
|
||||||
|
|
||||||
|
//Cabecera de la tabla
|
||||||
|
echo html_writer::start_tag('table', array('id'=>'view-tabla','style'=>'margin: 0 auto;'));
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo html_writer::start_tag('td');
|
||||||
|
echo '<h2> Actividades LMS-Online</h2>'."\n";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::start_tag('td');
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::start_tag('td');
|
||||||
|
echo '<h2> Examen en SIGA</h2>'."\n";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
|
||||||
|
|
||||||
|
$table = new flexible_table('view-activities');
|
||||||
|
$table->define_columns(array('id','actividad','migrar'));
|
||||||
|
$table->define_headers(array('Item', 'Actividad','Seleccionar'));
|
||||||
|
$table->define_baseurl(new moodle_url('/report/traspasonotasexam/index.php', $params));
|
||||||
|
$table->collapsible(false);
|
||||||
|
$table->set_attribute('cellspacing', '1');
|
||||||
|
$table->set_attribute('id', 'view-activities');
|
||||||
|
$table->set_attribute('cellpadding','5');
|
||||||
|
$table->set_attribute('class', 'table table-bordered generaltable generalbox reporttable');
|
||||||
|
|
||||||
|
$table->sortable(false,'actividad','ASC');
|
||||||
|
$table->set_control_variables(array(
|
||||||
|
TABLE_VAR_SORT => 'ssort',
|
||||||
|
TABLE_VAR_HIDE => 'shide',
|
||||||
|
TABLE_VAR_SHOW => 'sshow',
|
||||||
|
TABLE_VAR_IFIRST => 'sifirst',
|
||||||
|
TABLE_VAR_ILAST => 'silast',
|
||||||
|
TABLE_VAR_PAGE => 'spage'
|
||||||
|
));
|
||||||
|
echo html_writer::start_tag('td', array('valign'=>'top'));
|
||||||
|
$table->setup();
|
||||||
|
// print_r($submissions);
|
||||||
|
if ($submissions) {
|
||||||
|
foreach ($submissions as $submission) {
|
||||||
|
$row = array();
|
||||||
|
$row[] = format_string($submission->item);
|
||||||
|
$row[] = format_string($submission->itemname);
|
||||||
|
if($submission->trapaso <> '0'){
|
||||||
|
$row[] =' ';
|
||||||
|
}else {
|
||||||
|
// AQUI if()
|
||||||
|
// if($submission->fdia > 15){
|
||||||
|
// $row[] = '*';
|
||||||
|
// }else{
|
||||||
|
$row[] ='<input type="radio" class="activcurs" id="activcurs" name="activ" value="' . $submission->item . '" /> ';
|
||||||
|
//}
|
||||||
|
}
|
||||||
|
$table->add_data($row);
|
||||||
|
}
|
||||||
|
// $row = array();
|
||||||
|
// // $row[] ='Seleccione la actividad que desea traspasar.';
|
||||||
|
// $row[] ='<td colspan="2">Seleccione la actividad que desea traspasar.</td>';
|
||||||
|
// $table->add_data($row);
|
||||||
|
}
|
||||||
|
$table->print_html();
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::start_tag('td');
|
||||||
|
echo '<img src="Flecha.png" alt="calificaciones" height="22" width="22">'."\n";
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return '<br> <strong> Nada que mostrar </strong>';
|
||||||
|
}
|
||||||
|
|
||||||
|
$course = $DB->get_record('course', array('id' => $params['cursos']), 'idnumber', MUST_EXIST);
|
||||||
|
$enrol = enrol_get_plugin('dbinacap311');
|
||||||
|
$authdb = $enrol->db_init_inacap311();
|
||||||
|
/* $dbe = new auth_plugin_db_inacap;
|
||||||
|
$authdb = $dbe->db_init(); */
|
||||||
|
|
||||||
|
|
||||||
|
$table_cal = new flexible_table('view-grades-siga');
|
||||||
|
$table_cal->define_columns(array('nro','calificacion','fecha','ponderacion','seleccione'));
|
||||||
|
$table_cal->define_headers(array('Nro.','Calificaciones','F. Termino Sección',format_string('Ponderación'),'Seleccione'));
|
||||||
|
$table_cal->define_baseurl(new moodle_url('/report/traspasonotasexam/index.php', $params));
|
||||||
|
$table_cal->collapsible(false);
|
||||||
|
$table_cal->set_attribute('cellspacing', '1');
|
||||||
|
$table_cal->set_attribute('id', 'view-grades-siga');
|
||||||
|
$table_cal->set_attribute('cellpadding','5');
|
||||||
|
$table_cal->set_attribute('class', 'table table-bordered generaltable generalbox reporttable');
|
||||||
|
|
||||||
|
echo html_writer::start_tag('td', array('valign'=>'top'));
|
||||||
|
$table_cal->setup();
|
||||||
|
$row_cal = array();
|
||||||
|
|
||||||
|
$sqlDif = "select asi.tasg_ccod,(select ponf_jnota_examen *100
|
||||||
|
from ponderaciones_nota_final where talu_ccod = nvl (1, 1) and peri_ccod_inicio <= sc.peri_ccod
|
||||||
|
and sc.peri_ccod <= decode (peri_ccod_termino,0, sc.peri_ccod,peri_ccod_termino))
|
||||||
|
pond_examen from secciones sc, asignaturas asi Where sc.asig_ccod = asi.asig_ccod and sc.secc_ccod=".$course->idnumber;
|
||||||
|
|
||||||
|
$result = $authdb->Execute( $sqlDif );
|
||||||
|
foreach($result as $Ndif){
|
||||||
|
$dific = isset($Ndif['POND_EXAMEN']) ? $Ndif['POND_EXAMEN'] : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$sql_auth = "
|
||||||
|
Select nvl(b.suma,0) suma, a.* from (
|
||||||
|
Select 0 cali_nevaluacion, s.SECC_FTERMINO_SEC feval, to_char(S.SECC_FTERMINO_SEC, 'dd-mm-yyyy') CALI_FEVALUACION, $dific CALI_NPONDERACION, 'Examen' TEVA_TDESC, s.secc_ccod,
|
||||||
|
case nvl(mt.secc_ccod,0)
|
||||||
|
when 0 then '<input type=\"radio\" class=\"cali\" id=\"cali\" name=\"cali\" value=\"'|| s.secc_ccod ||'\" /> '
|
||||||
|
else ' '
|
||||||
|
end case,
|
||||||
|
trunc((sysdate - S.SECC_FTERMINO_SEC ),0) fdia
|
||||||
|
from secciones s, m_TRASPASONOTASEXAM mt
|
||||||
|
Where s.secc_ccod = mt.secc_ccod(+)
|
||||||
|
and s.secc_ccod=$course->idnumber
|
||||||
|
) a left join (select secc_ccod, count(CARG_NNOTA_FINAL) suma from cargas_academicas where secc_ccod = $course->idnumber group by secc_ccod) b
|
||||||
|
on b.secc_ccod = a.secc_ccod
|
||||||
|
order by feval
|
||||||
|
";
|
||||||
|
|
||||||
|
$rs = $authdb->Execute( $sql_auth );
|
||||||
|
// var_dump($rs);
|
||||||
|
if ($rs){
|
||||||
|
foreach ($rs as $r) {
|
||||||
|
$option_b =$r["CASE"];
|
||||||
|
if($r["SUMA"] != '0') {$option_b .= ' (**)';}
|
||||||
|
$data_cal = array($r["CALI_NEVALUACION"],$r["TEVA_TDESC"],$r["CALI_FEVALUACION"],$r["CALI_NPONDERACION"].' %',$option_b);
|
||||||
|
$table_cal->add_data($data_cal);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$row_cal[] = '';
|
||||||
|
$row_cal[] = '';
|
||||||
|
$row_cal[] = '';
|
||||||
|
$row_cal[] = '';
|
||||||
|
$row_cal[] ='';
|
||||||
|
$table_cal->add_data($row_cal);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//$rs->Close();
|
||||||
|
$table_cal->print_html();
|
||||||
|
echo html_writer::end_tag('td');
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo '<td colspan="3">'.format_string('El traspaso de notas Examen a SIGA se realiza por actividad.').'</td>';
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo '<td colspan="3">'.format_string('Seleccione una actividad del LMS Online y una calificación Examen planificada en SIGA para establecer su traspaso.').'</td>';
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
/* echo html_writer::start_tag('tr');
|
||||||
|
echo '<td colspan="3" style="font-weight:bold;">'.format_string('(*) “Sólo se listarán y podrán ser traspasadas las calificaciones dentro de los 15 días siguientes a la fecha de evaluación”').'</td>';
|
||||||
|
echo html_writer::end_tag('tr'); */
|
||||||
|
echo html_writer::start_tag('tr');
|
||||||
|
echo '<td colspan="3" style="font-weight:bold;">'.format_string('(**) “Indica existencia de Calificación Examen en SIGA”').'</td>';
|
||||||
|
echo html_writer::end_tag('tr');
|
||||||
|
echo html_writer::end_tag('table');
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function x_get_user_coursesexa($userid, $onlyactive = false, $fields = NULL, $sort = 'visible DESC,sortorder ASC') {
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
// Guest account does not have any courses
|
||||||
|
if (isguestuser($userid) or empty($userid)) {
|
||||||
|
return(array());
|
||||||
|
}
|
||||||
|
|
||||||
|
$basefields = array('id', 'shortname', 'fullname', 'idnumber');
|
||||||
|
|
||||||
|
if (empty($fields)) {
|
||||||
|
$fields = $basefields;
|
||||||
|
} else if (is_string($fields)) {
|
||||||
|
// turn the fields from a string to an array
|
||||||
|
$fields = explode(',', $fields);
|
||||||
|
$fields = array_map('trim', $fields);
|
||||||
|
$fields = array_unique(array_merge($basefields, $fields));
|
||||||
|
} else if (is_array($fields)) {
|
||||||
|
$fields = array_unique(array_merge($basefields, $fields));
|
||||||
|
} else {
|
||||||
|
throw new coding_exception('Invalid $fileds parameter in enrol_get_my_courses()');
|
||||||
|
}
|
||||||
|
if (in_array('*', $fields)) {
|
||||||
|
$fields = array('*');
|
||||||
|
}
|
||||||
|
|
||||||
|
$orderby = "";
|
||||||
|
$sort = trim($sort);
|
||||||
|
if (!empty($sort)) {
|
||||||
|
$rawsorts = explode(',', $sort);
|
||||||
|
$sorts = array();
|
||||||
|
foreach ($rawsorts as $rawsort) {
|
||||||
|
$rawsort = trim($rawsort);
|
||||||
|
if (strpos($rawsort, 'c.') === 0) {
|
||||||
|
$rawsort = substr($rawsort, 2);
|
||||||
|
}
|
||||||
|
$sorts[] = trim($rawsort);
|
||||||
|
}
|
||||||
|
$sort = 'c.'.implode(',c.', $sorts);
|
||||||
|
$orderby = "ORDER BY $sort";
|
||||||
|
}
|
||||||
|
|
||||||
|
$params = array('siteid'=>SITEID);
|
||||||
|
|
||||||
|
if ($onlyactive) {
|
||||||
|
$subwhere = "WHERE ue.status = :active AND e.status = :enabled AND ue.timestart < :now1 AND (ue.timeend = 0 OR ue.timeend > :now2)";
|
||||||
|
$params['now1'] = round(time(), -2); // improves db caching
|
||||||
|
$params['now2'] = $params['now1'];
|
||||||
|
$params['active'] = ENROL_USER_ACTIVE;
|
||||||
|
$params['enabled'] = ENROL_INSTANCE_ENABLED;
|
||||||
|
|
||||||
|
} else {
|
||||||
|
$subwhere = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
$coursefields = 'c.' .join(',c.', $fields);
|
||||||
|
$ccselect = ', ' . context_helper::get_preload_record_columns_sql('ctx');
|
||||||
|
$ccjoin = "LEFT JOIN {context} ctx ON (ctx.instanceid = c.id AND ctx.contextlevel = :contextlevel) LEFT JOIN {role_assignments} ra ON (ra.contextid = ctx.id and ra.roleid in (1,3,4,9))";
|
||||||
|
$params['contextlevel'] = CONTEXT_COURSE;
|
||||||
|
//note: we can not use DISTINCT + text fields due to Oracle and MS limitations, that is why we have the subselect there
|
||||||
|
$sql = "SELECT distinct $coursefields $ccselect
|
||||||
|
FROM {course} c
|
||||||
|
JOIN (SELECT DISTINCT e.courseid
|
||||||
|
FROM {enrol} e
|
||||||
|
JOIN {user_enrolments} ue ON (ue.enrolid = e.id AND ue.userid = :userid)
|
||||||
|
$subwhere
|
||||||
|
) en ON (en.courseid = c.id)
|
||||||
|
$ccjoin
|
||||||
|
WHERE c.id <> :siteid
|
||||||
|
and userid= :iduser
|
||||||
|
$orderby";
|
||||||
|
$params['userid'] = $userid;
|
||||||
|
$params['iduser']= $userid;;
|
||||||
|
//$params['category'] = '2';
|
||||||
|
// echo '<br>'.$sql.'<br>';
|
||||||
|
//print_r($params);
|
||||||
|
//echo '<br>';
|
||||||
|
$courses = $DB->get_records_sql($sql, $params);
|
||||||
|
|
||||||
|
return $courses;
|
||||||
|
}
|
||||||
|
|
||||||
|
function x_traspasonotasexam_Display_Detalles($submissions, $params){
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
if ($submissions) {
|
||||||
|
|
||||||
|
$table = new flexible_table('view-resumen');
|
||||||
|
$table->define_columns(array('cali_ncorr','calisiga','fcreacion', 'ftraspaso','','idtrapaso'));
|
||||||
|
$table->define_headers(array('Actividad Online', 'Examen SIGA','Fecha Creación Online', 'Fecha Traspaso a SIGA','Detalle','Acción'));
|
||||||
|
$table->define_baseurl(new moodle_url('/report/traspasonotasexam/index.php', $params));
|
||||||
|
$table->collapsible(false);
|
||||||
|
$table->set_attribute('cellspacing', '1');
|
||||||
|
$table->set_attribute('id', 'view-resumen');
|
||||||
|
$table->set_attribute('cellpadding','5');
|
||||||
|
$table->set_attribute('class', 'generaltable generalbox reporttable');
|
||||||
|
$table->set_attribute('style','margin: 0 auto;');
|
||||||
|
|
||||||
|
$table->setup();
|
||||||
|
// echo '<pre>';var_dump($submissions);echo '</pre>';
|
||||||
|
|
||||||
|
foreach($submissions as $submission) {
|
||||||
|
$row = array();
|
||||||
|
$row[] = $submission->itemname;
|
||||||
|
$row[] = $submission->calisiga;
|
||||||
|
$row[] = $submission->fcreacion;
|
||||||
|
|
||||||
|
if($submission->ftraspaso == 0 ){
|
||||||
|
$row[] = '';
|
||||||
|
}else{
|
||||||
|
$row[] = date('d-m-Y', $submission->ftraspaso);
|
||||||
|
}
|
||||||
|
$row[] ='<a data-toggle="modal" href="#myModal" id="'.$submission->idtraspaso.'" class="btn btn-primary btn-large">Detalle</a> ';
|
||||||
|
|
||||||
|
if($submission->ftraspaso == 0){
|
||||||
|
$row[] = ' <input type="button" name="ftraspaso" id="'.$submission->idtraspaso.'" value="Traspasar"/>  <input type="button" name="ftraspasoelim" id="'.$submission->idtraspaso.'" value="Eliminar"/>';
|
||||||
|
}else{
|
||||||
|
$row[] = 'Ejecutado (Ver Detalles)';
|
||||||
|
}
|
||||||
|
|
||||||
|
$table->add_data($row);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
$table->print_html();
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return '<br> <strong> Nada que mostrar </strong>';
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function x_traspasonotasexam_get_list_detalle($id_traspaso) {
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
//$sqlcourses='SELECT id item, itemname, itemtype, grademin, grademax FROM {grade_items} WHERE itemtype <> \'course\' and courseid = :cursos';
|
||||||
|
$sqlusers= "select MU.FIRSTNAME ||', '||MU.lastNAME usuario, tnd.grade puntaje, tnd.nota nota, tnd.OBSERVACION from m_TRASPASONOTASEXAM_DET tnd, m_user mu
|
||||||
|
where TND.USERID=MU.ID
|
||||||
|
and TND.TRASPASOIDEXE = $id_traspaso
|
||||||
|
order by FIRSTNAME, lastNAME ";
|
||||||
|
|
||||||
|
|
||||||
|
$submissions = $DB->get_records_sql($sqlusers);
|
||||||
|
// var_dump($submissions);
|
||||||
|
return $submissions;
|
||||||
|
}
|
||||||
|
|
||||||
|
function x_traspasonotasexam_Display_Detalles_lista($id_traspaso){
|
||||||
|
global $DB;
|
||||||
|
$submissions=traspasonotasexam_get_list_detalle($id_traspaso);
|
||||||
|
if ($submissions) {
|
||||||
|
|
||||||
|
$table = new flexible_table('view-detalles');
|
||||||
|
$table->define_columns(array('usuario','puntaje','nota', 'observacion'));
|
||||||
|
$table->define_headers(array('Usuario', 'Puntaje','Nota SIGA', 'Observación'));
|
||||||
|
$table->define_baseurl(new moodle_url('/report/traspasonotasexam/index.php'));
|
||||||
|
$table->collapsible(false);
|
||||||
|
$table->set_attribute('cellspacing', '1');
|
||||||
|
$table->set_attribute('id', 'view-detalles');
|
||||||
|
$table->set_attribute('cellpadding','5');
|
||||||
|
$table->set_attribute('class', 'generaltable generalbox reporttable');
|
||||||
|
$table->set_attribute('style','margin: 0 auto;');
|
||||||
|
|
||||||
|
$table->setup();
|
||||||
|
// echo '<pre>';var_dump($submissions);echo '</pre>';
|
||||||
|
|
||||||
|
foreach($submissions as $submission) {
|
||||||
|
$row = array();
|
||||||
|
$row[] = $submission->usuario;
|
||||||
|
$row[] = $submission->puntaje;
|
||||||
|
$row[] = $submission->nota;
|
||||||
|
$row[] = $submission->observacion;
|
||||||
|
$table->add_data($row);
|
||||||
|
}
|
||||||
|
|
||||||
|
echo ' <!-- Modal -->
|
||||||
|
<div class="modal" id="myModal" style="display:none">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||||
|
<h4 class="modal-title">Detalle Traspaso Notas</h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">'.
|
||||||
|
$table->print_html()
|
||||||
|
.'</div>
|
||||||
|
<div class="modal-footer">
|
||||||
|
<a href="#" class="btn btn-default" data-dismiss="modal">Cerrar</a>
|
||||||
|
</div>
|
||||||
|
</div><!-- /.modal-content -->
|
||||||
|
</div><!-- /.modal-dialog -->
|
||||||
|
</div><!-- /.modal -->';
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return '<br> <strong> Nada que mostrar </strong>';
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function x_miCursoexa($id){
|
||||||
|
global $DB;
|
||||||
|
|
||||||
|
$sqlcurso= "Select fullname from m_course Where id=".$id;
|
||||||
|
|
||||||
|
$submissions = $DB->get_records_sql($sqlcurso);
|
||||||
|
|
||||||
|
foreach ($submissions as $submission) {
|
||||||
|
return 'Mi Curso: '. $submission->fullname;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
M.report_traspasonotasexam = {};
|
||||||
|
|
||||||
|
M.report_traspasonotasexam.init = function(Y) {
|
||||||
|
|
||||||
|
Y.all('#activcurs input[type=radio]').on('click', function(e) {
|
||||||
|
var valor = Y.one("input[type=radio][name^=activ]").getAttribute('value');
|
||||||
|
alert('listo');
|
||||||
|
});
|
||||||
|
|
||||||
|
Y.on('submit', function(e) {
|
||||||
|
// Y.all('input[type="radio"]').each(function(t) {
|
||||||
|
// var valor = t.one('#activcurs').getAttribute('value');
|
||||||
|
// alert(valor);
|
||||||
|
|
||||||
|
// });
|
||||||
|
|
||||||
|
var valor = Y.one("input[type=radio][name^=activ]").getAttribute('value');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}, '#gradesform');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,38 @@
|
||||||
|
var numAct = 1;
|
||||||
|
$(document).ready(function()
|
||||||
|
{
|
||||||
|
var pager = new Pager("resultados", 10);
|
||||||
|
pager.init();
|
||||||
|
pager.showPageNav("pager", "NavPosicion");
|
||||||
|
pager.showPage(1);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
function mostrarPagina(num){
|
||||||
|
var pager = new Pager("resultados", 10);
|
||||||
|
pager.init();
|
||||||
|
pager.showPageNav("pager", "NavPosicion");
|
||||||
|
pager.showPage(num);
|
||||||
|
numAct = num;
|
||||||
|
}
|
||||||
|
|
||||||
|
function next(){
|
||||||
|
var pager = new Pager("resultados", 10);
|
||||||
|
var rows = document.getElementById("resultados").rows;
|
||||||
|
if (rows.length > 10){
|
||||||
|
pager.init();
|
||||||
|
pager.showPageNav("pager", "NavPosicion");
|
||||||
|
numAct = pager.next(numAct);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function prev(){
|
||||||
|
var pager = new Pager("resultados", 10);
|
||||||
|
pager.init();
|
||||||
|
pager.showPageNav("pager", "NavPosicion");
|
||||||
|
numAct = pager.prev(numAct);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,91 @@
|
||||||
|
function Pager(tableName, itemsPerPage) {
|
||||||
|
this.tableName = tableName;
|
||||||
|
this.itemsPerPage = itemsPerPage;
|
||||||
|
this.currentPage = 1;
|
||||||
|
this.pages = 0;
|
||||||
|
this.inited = false;
|
||||||
|
|
||||||
|
this.showRecords = function(from, to) {
|
||||||
|
var rows = document.getElementById(tableName).rows;
|
||||||
|
$('.emptyrow').remove();
|
||||||
|
// alert('filas>>' + rows);
|
||||||
|
// i starts from 1 to skip table header row
|
||||||
|
for (var i = 1; i < rows.length; i++) {
|
||||||
|
// alert(rows[i].innerHTML);
|
||||||
|
if (i < from || i > to)
|
||||||
|
rows[i].style.display = 'none';
|
||||||
|
else
|
||||||
|
rows[i].style.display = '';
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
this.showPage = function(pageNumber) {
|
||||||
|
$('.emptyrow').remove();
|
||||||
|
if(pageNumber == 1){
|
||||||
|
$("#prev").attr("style","display:none;");
|
||||||
|
}else{
|
||||||
|
var maxPageNumber = $("#maxfield").html();
|
||||||
|
if(pageNumber == maxPageNumber-1){
|
||||||
|
$("#next").attr("style","display:none;");
|
||||||
|
}else{
|
||||||
|
$("#prev").removeAttr("style");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#number"+pageNumber).html(pageNumber);
|
||||||
|
|
||||||
|
if (! this.inited) {
|
||||||
|
alert("Error 1 !");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var oldPageAnchor = document.getElementById('pg'+this.currentPage);
|
||||||
|
oldPageAnchor.className = 'pg-normal';
|
||||||
|
|
||||||
|
this.currentPage = pageNumber;
|
||||||
|
var newPageAnchor = document.getElementById('pg'+this.currentPage);
|
||||||
|
newPageAnchor.className = 'pg-selected';
|
||||||
|
|
||||||
|
var from = (pageNumber - 1) * itemsPerPage + 1;
|
||||||
|
var to = from + itemsPerPage - 1;
|
||||||
|
this.showRecords(from, to);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.prev = function(numAct) {
|
||||||
|
if (numAct > 1)
|
||||||
|
this.showPage(numAct - 1);
|
||||||
|
return numAct - 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.next = function(numAct) {
|
||||||
|
if (numAct < this.pages) {
|
||||||
|
this.showPage(numAct + 1);
|
||||||
|
return numAct + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.init = function() {
|
||||||
|
$('.emptyrow').remove();
|
||||||
|
var rows = document.getElementById(tableName).rows;
|
||||||
|
var records = (rows.length - 1);
|
||||||
|
this.pages = Math.ceil(records / itemsPerPage);
|
||||||
|
this.inited = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.showPageNav = function(pagerName, positionId) {
|
||||||
|
if (! this.inited) {
|
||||||
|
alert("Error 2 !");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
var element = document.getElementById(positionId);
|
||||||
|
|
||||||
|
var pagerHtml = 'Página: <span id="prev" onclick="prev();" class="pg-normal" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"> (<a href="#">Anterior</a>) </span> | ';
|
||||||
|
for (var page = 1; page <= this.pages; page++)
|
||||||
|
pagerHtml += '<span id="pg' + page + '" class="pg-normal" onclick="mostrarPagina(' + page + ')" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"><span id="number'+page+'"><a href="#">' + page + '</a></span></span> | ';
|
||||||
|
pagerHtml += '<span id="next" onclick="next();" class="pg-normal" style="size:12px;" onmouseover="this.style.cursor=\'pointer\'"> (<a href="#">Siguiente</a>)</span><div id="maxfield" style="display:none;">'+page+'</div>';
|
||||||
|
|
||||||
|
element.innerHTML = pagerHtml;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Links and settings
|
||||||
|
*
|
||||||
|
* Contains settings used by assignment files report.
|
||||||
|
* @package report
|
||||||
|
* @subpackage curriculum_files
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('MOODLE_INTERNAL') || die;
|
||||||
|
|
||||||
|
// Just a link to course report.
|
||||||
|
$ADMIN->add('reports', new admin_externalpage('report_traspasonotasexam',
|
||||||
|
get_string('pluginname', 'report_traspasonotasexam'),
|
||||||
|
"$CFG->wwwroot/report/traspasonotasexam",
|
||||||
|
'report/traspasonotasexam:view'));
|
||||||
|
// echo '<pre>';
|
||||||
|
// print_r($ADMIN);
|
||||||
|
// echo '</pre>';
|
||||||
|
// No report settings.
|
||||||
|
$settings = null;
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?php
|
||||||
|
// This file is part of Moodle - http://moodle.org/
|
||||||
|
//
|
||||||
|
// Moodle is free software: you can redistribute it and/or modify
|
||||||
|
// it under the terms of the GNU General Public License as published by
|
||||||
|
// the Free Software Foundation, either version 3 of the License, or
|
||||||
|
// (at your option) any later version.
|
||||||
|
//
|
||||||
|
// Moodle is distributed in the hope that it will be useful,
|
||||||
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
// GNU General Public License for more details.
|
||||||
|
//
|
||||||
|
// You should have received a copy of the GNU General Public License
|
||||||
|
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Version details
|
||||||
|
*
|
||||||
|
* Contains settings used by assignment files report.
|
||||||
|
* @package report
|
||||||
|
* @subpackage assignment_files
|
||||||
|
* @author Russell England <russell.england@gmail.com>
|
||||||
|
* @copyright Russell England <russell.england@gmail.com>
|
||||||
|
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
|
||||||
|
*/
|
||||||
|
|
||||||
|
defined('MOODLE_INTERNAL') || die;
|
||||||
|
|
||||||
|
$plugin->version = 2013091500; // The current plugin version (Date: YYYYMMDDXX).
|
||||||
|
$plugin->requires = 2012112900; // Requires this Moodle version.
|
||||||
|
$plugin->component = 'report_traspasonotasexam'; // Full name of the plugin (used for diagnostics).
|
||||||
Loading…
Reference in New Issue