/**
  * Existing object insert in a DB 
  */
 public function test_insert_fail_2()
 {
     $objectnew = new evalcomix_tool('120', '1', 'titulo de la escala2', 'scale');
     $id = $objectnew->insert();
     $this->assertFalse($id);
     unset($objectnew);
 }
    /**
	* Update object in the DB. Return false because the object is not in the DB
	*/
    public function testUpdateFail()
    {
        $objectnew = new evalcomix_tool('', '1', 'titulo de la escala2', 'list');
        $id = $objectnew->update();
        $this->assertTrue($id);
    /**
	* Non-existing object insert in a DB 
	*/
    public function testInsertOk()
    {
        $objectnew = new evalcomix_tool('', '1', 'titulo de la escala2', 'scale');
        $id = $objectnew->insert();
        $this->AssertEquals($id, $objectnew->id);
    /**
	* Update object in the DB
	*/
    public function testUpdate()
    {
        $objectnew = new evalcomix_tool('169', '1', 'titulo de la escala2', 'list');
        $id = $objectnew->update();
        //Timemodified to 0 in the DB... why??
        $this->assertTrue($id);
示例#5
0
function get_datas_profile_attribute($idCurso, $id_tarea, $id_modality, $id_students)
{
    global $CFG;
    include_once $CFG->dirroot . '/blocks/evalcomix/configeval.php';
    include_once $CFG->dirroot . '/blocks/evalcomix/classes/webservice_evalcomix_client.php';
    include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tasks.php';
    include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tool.php';
    $task = evalcomix_tasks::fetch(array('id' => $id_tarea));
    $module = evalcomix_tasks::get_type_task($task->instanceid);
    $modality = null;
    switch ($id_modality) {
        case 1:
            $modality = 'teacher';
            break;
        case 2:
            $modality = 'self';
            break;
        case 3:
            $modality = 'peer';
            break;
    }
    $xml = webservice_evalcomix_client::get_ws_tool_assessed($idCurso, $module, $task->instanceid, $id_students, $modality, MOODLE_NAME);
    $attributes_grade = evalcomix_tool::get_attributes_grade($xml);
    return $attributes_grade;
}
    /**
	* Fetch all objects. Return an array with the required params
	*/
    public function testFetchAllOK()
    {
        $params = array('title' => 'hola');
        $result = evalcomix_tool::fetch_all($params);
        //This assert fail... why?? Dont' recognize type 'array'...
        $this->assertType('array', $result);
        //	}
        //$this->assertTrue($var);
        //unset($objectnew2);
    }
    /**
	* Object construction without the required param 'type'. It should print error:'The type assessment tool is wrong'
	*/
    public function testParamMissingOne()
    {
示例#8
0
 /**
  * @return array of course tools by [taskid][modality]
  */
 function load_tools()
 {
     $result = array();
     if ($evalcomix = evalcomix::fetch(array('courseid' => $this->courseid))) {
         if ($tools = evalcomix_tool::fetch_all(array('evxid' => $evalcomix->id))) {
             foreach ($tools as $tool) {
                 if ($modes = evalcomix_modes::fetch_all(array('toolid' => $tool->id))) {
                     foreach ($modes as $mode) {
                         $taskid = $mode->taskid;
                         $modality = $mode->modality;
                         $result[$taskid][$modality] = $tool;
                     }
                 }
             }
         }
     }
     return $result;
 }
    }
    /**
	* Update a recently insert object in the DB. Param 'timemodified' change
	*/
    public function test_update_ok()
    {
        $objectnew = new evalcomix_assessments('', 5, 4, 5, 60);
        $objectnew->insert();
        $id = $objectnew->update();
        $this->assertTrue($id);
        $objectnew->delete();
        unset($objectnew, $id);
*/
require_once '../../../config.php';
require_once 'lib.php';
include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tasks.php';
include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tool.php';
$courseid = required_param('id', PARAM_INT);
// course id
$id = required_param('a', PARAM_INT);
require_login($courseid);
if ($id) {
    $cm = get_coursemodule_from_id('', $id, 0, false, MUST_EXIST);
    if (!($course = $DB->get_record('course', array('id' => $courseid)))) {
        print_error('nocourseid');
    }
}
$tools = evalcomix_tool::get_tools($courseid);
$activity = get_activity_data($cm);
$datas = get_evalcomix_activity_data($courseid, $cm);
$toolEP = 0;
if (isset($datas['toolEP'])) {
    $toolEP = $datas['toolEP'];
}
$weighingEP = 70;
if (isset($datas['weighingEP'])) {
    $weighingEP = $datas['weighingEP'];
}
$disabledEP = '';
$toolAE = 0;
if (isset($datas['toolAE'])) {
    $toolAE = $datas['toolAE'];
}
<?php

include_once '../../../config.php';
include_once '../classes/evalcomix_tool.php';
$params = array('title' => 'hola');
$object = new evalcomix_tool('27', '1', 'titulo de la escala2', 'scale');
$id = $object->insert();
echo $id;
/*
	evalcomix_tool::set_properties($object, $params);
	print_r($object);
	if($object->update())
		echo "actualizado";
	else
		echo "no actualizado";
	*/
/*
	//$result = evalcomix_tool::fetch_all($params);
	//print_r($result);
	*/
if ($object->delete()) {
    echo "borrado";
} else {
    echo "no borrado";
}
        $response = $curl->get($serverurl);
        if ($response && $curl->getHttpCode() >= 200 && $curl->getHttpCode() < 400) {
            if ($xml = simplexml_load_string($response)) {
                if ((string) $xml->status == 'success') {
                    return (string) $xml->description;
                } else {
                    return 0;
                }
            } else {
                return 0;
            }
        } else {
            throw new Exception('SG: Bad Response');
        }
    }
    public static function generate_token()
    {
        return md5(uniqid());
    }
    /**
	* @param string $params['courseid']
	* @param array $params['module'] module names
	* @param array $params['activity'] activity IDs
	* @param array $params['student'] student IDs
	* @param array $params['assessor'] assessor IDs
	* @param array $params['mode'] [teacher | self | peer]
	* @param string $params['lms'] lms name
	 * @return xml document with data assessments
	 */
    public static function get_ws_xml_tools($params = array())
    {
        defined('GET_TOOLS') || die('EvalCOMIX is not configured');
示例#13
0
        return evalcomix_object::fetch_all_helper('block_evalcomix_tools', 'evalcomix_tool', $params);
    }
    /**
     * Finds and returns a evalcomix_tool instance based on params.
     * @static
     *
     * @param array $params associative arrays varname=>value
     * @return object grade_item instance or false if none found.
     */
    public static function fetch($params)
    {
        return evalcomix_object::fetch_helper('block_evalcomix_tools', 'evalcomix_tool', $params);
    }
    /**
     * Called immediately after the object data has been inserted, updated, or
     * deleted in the database. Default does nothing, can be overridden to
     * hook in special behaviour.
     *
     * @param bool $deleted
     */
    function notify_changed($deleted)
    {
    }
    /**
	* @param int $courseid
	* @return array of tools. Key of array is 'id' and value of array is 'title' tool
	*/
    static function get_tools($courseid)
    {
        global $CFG;
        include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tool.php';
        include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix.php';
        $result = array();
        $params = array('courseid' => $courseid);
        if (!($environment = evalcomix::fetch($params))) {
            return $result;
        }
        $evxid = $environment->id;
        $params = array('evxid' => $evxid);
        $tools = evalcomix_tool::fetch_all($params);
        if (!is_array($tools)) {
            $tools = array();
include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tool.php';
include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_modes.php';
$courseid = required_param('id', PARAM_INT);
// course id
$toolid = required_param('t', PARAM_ALPHANUM);
//toolid
$perspective = required_param('mode', PARAM_ALPHA);
$viewtemplate = optional_param('vt', '0', PARAM_INT);
//It indicates what will be showed: ['1'] only the template tool or ['0'] tool filled with assessment
require_login($courseid);
$context = context_course::instance($courseid);
$url = new moodle_url('/blocks/evalcomix/assessment/assessment_form.php', array('courseid' => $courseid, 't' => $toolid));
$PAGE->set_url($url);
$PAGE->set_pagelayout('popup');
//echo $OUTPUT->header();
if (!($tool = evalcomix_tool::fetch(array('idtool' => $toolid)))) {
    print_error('EvalCOMIX: No tool enabled');
}
if ($perspective != 'assess' && $perspective != 'view') {
    print_error('EvalCOMIX: the mode param is wrong');
}
global $USER, $DB;
$lang = current_language();
//To show tool used in a assessment
if ($viewtemplate == '0') {
    $cmid = required_param('a', PARAM_INT);
    $studentid = required_param('s', PARAM_INT);
    require_capability('block/evalcomix:assessed', $context, $studentid);
    $lms = MOODLE_NAME;
    $module = evalcomix_tasks::get_type_task($cmid);
    //echo "$courseid - $module - $cmid - $studentid, - $assessor - $mode - $lms ";
 public function after_restore()
 {
     global $DB, $COURSE, $CFG;
     include_once $CFG->dirroot . '/blocks/evalcomix/configeval.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tasks.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_modes.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_modes_time.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_modes_extra.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_assessments.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/webservice_evalcomix_client.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_grades.php';
     include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_allowedusers.php';
     $settings = $this->task->get_info()->root_settings;
     //$this->oldcontextid; busco en tabla mdl_context->instanceid es el courseid; con el courseid obtengo todos los cms antiguos y nuevos y voy copiando uno a uno
     //$this->basepath   = $CFG->dataroot . '/temp/backup/' . $controller->get_tempdir();
     //$blockid = $this->get_old_blockid();
     //$xml = simplexml_load_file($this->get_basepath() . '/course/blocks/evalcomix_'. $blockid .'/evalcomix.xml');
     $fullpath = $this->task->get_taskbasepath();
     // We MUST have one fullpath here, else, error
     if (empty($fullpath)) {
         throw new restore_step_exception('restore_structure_step_undefined_fullpath');
     }
     // Append the filename to the fullpath
     $fullpath = rtrim($fullpath, '/') . '/' . $this->filename;
     // And it MUST exist
     if (!file_exists($fullpath)) {
         // Shouldn't happen ever, but...
         throw new restore_step_exception('missing_moodle_backup_xml_file', $fullpath);
     }
     $xml = simplexml_load_file($fullpath);
     //echo $this->task->get_taskbasepath() . '/course/blocks/evalcomix_'. $blockid .'/evalcomix.xml';
     $evxid_old = (int) $xml->evalcomix['id'];
     $viewmode_old = (string) $xml->evalcomix->viewmode;
     if (isset($xml->evalcomix->environment->courseid)) {
         $courseid_old = $xml->evalcomix->environment->courseid;
     }
     if (isset($xml->evalcomix->environment->moodlename)) {
         $moodlename_old = $xml->evalcomix->environment->moodlename;
     }
     include_once $CFG->dirroot . '/blocks/evalcomix/configeval.php';
     //include_once($CFG->dirroot . '/backup/lib.php');
     //$courseid_new = $this->plan->get_courseid();
     $courseid_new = $this->get_courseid();
     $moodlename_new = MOODLE_NAME;
     $block_evalcomix = $DB->get_record('block_evalcomix', array('courseid' => $courseid_new));
     //$coursecontext = get_context_instance(CONTEXT_COURSE, $courseid_new);
     $coursecontext = context_course::instance($courseid_new);
     $tasksid = '';
     if (isset($xml->evalcomix->tasks[0])) {
         $assessmentids = array();
         foreach ($xml->evalcomix->tasks[0] as $task) {
             $task_id_old = (int) $task['id'];
             $task_instanceid_old = (int) $task->instanceid;
             $task_maxgrade_old = (string) $task->maxgrade;
             $task_weighing_old = (string) $task->weighing;
             $cm = $DB->get_record('block_evalcomix', array('courseid' => $courseid_new));
             $cm_mapping = $this->get_mapping('course_module', $task_instanceid_old);
             $newcmid = $cm_mapping->newitemid;
             $visibletask = '1';
             if (isset($task->visible)) {
                 $visibletask = (string) $task->visible;
             }
             if (!($task_fetch = evalcomix_tasks::fetch(array('instanceid' => $newcmid)))) {
                 $task_object = new evalcomix_tasks('', $newcmid, $task_maxgrade_old, $task_weighing_old, '', $visibletask);
                 $newtaskid = $task_object->insert();
                 $tasksid .= $task_instanceid_old . '-' . $newcmid . ',';
                 foreach ($task->modes[0] as $mode) {
                     $mode_id_old = (int) $mode['id'];
                     $mode_toolid_old = (string) $mode->toolid;
                     $mode_modality_old = (string) $mode->modality;
                     $mode_weighing_old = (string) $mode->weighing;
                     $tool_mapping = $this->get_mapping('evalcomix_tool', $mode_toolid_old);
                     if (!empty($tool_mapping) && ($newtoolid = $tool_mapping->newitemid)) {
                         if (!($mode_object = evalcomix_modes::fetch(array('taskid' => $newtaskid, 'toolid' => $newtoolid, 'modality' => $mode_modality_old)))) {
                             $mode_object = new evalcomix_modes('', $newtaskid, $newtoolid, $mode_modality_old, $mode_weighing_old);
                             $newmodeid = $mode_object->insert();
                             if (isset($mode->mode_time['id'])) {
                                 $mode_time_id_old = (string) $mode->mode_time['id'];
                                 $mode_time_timeavailable_old = (string) $mode->mode_time->timeavailable;
                                 $mode_time_timedue_old = (string) $mode->mode_time->timedue;
                                 if (!evalcomix_modes_time::fetch(array('modeid' => $newmodeid))) {
                                     $mode_time_object = new evalcomix_modes_time('', $newmodeid, $mode_time_timeavailable_old, $mode_time_timedue_old);
                                     $mode_time_object->insert();
                                 }
                             }
                             if (isset($mode->mode_extra)) {
                                 $mode_extra_id_old = (string) $mode->mode_extra['id'];
                                 $mode_extra_timeavailable_old = (string) $mode->mode_extra->anonymous;
                                 $mode_extra_visible = $mode->mode_extra->visible;
                                 $mode_extra_whoassesses = $mode->mode_extra->whoassesses;
                                 if (!($mode_extra_object = evalcomix_modes_extra::fetch(array('modeid' => $newmodeid)))) {
                                     $mode_extra_object = new evalcomix_modes_extra('', $newmodeid, $mode_extra_timeavailable_old, $mode_extra_visible, $mode_extra_whoassesses);
                                     $mode_extra_object->insert();
                                 }
                             }
                         }
                     }
                 }
             }
             if ($settings['users'] == 1) {
                 foreach ($task->assessments[0] as $assessment) {
                     $assessment_id_old = (string) $assessment['id'];
                     $assessment_assessorid_old = (string) $assessment->assessorid;
                     $assessment_studentid_old = (string) $assessment->studentid;
                     $assessment_grade_old = (string) $assessment->grade;
                     $assessor_user = $this->get_mapping('user', $assessment_assessorid_old);
                     $student_user = $this->get_mapping('user', $assessment_studentid_old);
                     if (!isset($assessor_user->newitemid) || !isset($student_user->newitemid)) {
                         continue;
                     }
                     if (!($assessment_object = evalcomix_assessments::fetch(array('taskid' => $newtaskid, 'assessorid' => $assessor_user->newitemid, 'studentid' => $student_user->newitemid)))) {
                         $assessment_object = new evalcomix_assessments('', $newtaskid, $assessor_user->newitemid, $student_user->newitemid, $assessment_grade_old);
                         $assessment_object->insert();
                     }
                     //$modulename = get_module_type ($courseid_new, $newcmid);
                     $modulename = evalcomix_tasks::get_type_task($newcmid);
                     $mode = '';
                     if ($student_user->newitemid == $assessor_user->newitemid) {
                         $mode = 'self';
                     } elseif (has_capability('moodle/grade:viewhidden', $coursecontext, $assessor_user->newitemid)) {
                         $mode = 'teacher';
                     } else {
                         $mode = 'peer';
                     }
                     //$courseid_old, $modulename, $task_instanceid_old, $assessment_studentid_old, $assessment_assessorid_old, $mode, $moodlename_old
                     $str = $courseid_old . '_' . $modulename . '_' . $task_instanceid_old . '_' . $assessment_studentid_old . '_' . $assessment_assessorid_old . '_' . $mode . '_' . $moodlename_old;
                     $assessmentid_old = md5($str);
                     $str = $courseid_new . '_' . $modulename . '_' . $newcmid . '_' . $student_user->newitemid . '_' . $assessor_user->newitemid . '_' . $mode . '_' . $moodlename_new;
                     //echo $str . ' -- ';
                     $assessmentid_new = md5($str);
                     $object = new stdClass();
                     $object->oldid = $assessmentid_old;
                     $object->newid = $assessmentid_new;
                     $assessmentids[] = $object;
                 }
             }
         }
     }
     if ($tasksid != '') {
         $tasksid = substr($tasksid, 0, -1);
     }
     if ($settings['users'] == 1) {
         if (isset($xml->evalcomix->grades[0])) {
             foreach ($xml->evalcomix->grades[0] as $grade) {
                 $cm_mapping = $this->get_mapping('course_module', $grade->cmid);
                 $newcmid = $cm_mapping->newitemid;
                 $student = $this->get_mapping('user', (int) $grade->userid);
                 if (!isset($student->newitemid)) {
                     continue;
                 }
                 $params = array('finalgrade' => (double) $grade->finalgrade, 'courseid' => $courseid_new, 'cmid' => $newcmid, 'userid' => $student->newitemid);
                 if (!($grade_object = evalcomix_grades::fetch(array('courseid' => $courseid_new, 'cmid' => $newcmid, 'userid' => $student->newitemid)))) {
                     $grade_object = new evalcomix_grades($params);
                     $newgradeid = $grade_object->insert();
                 }
             }
         }
         if (isset($xml->evalcomix->allowedusers[0])) {
             foreach ($xml->evalcomix->allowedusers[0] as $users) {
                 $cm_mapping = $this->get_mapping('course_module', $users->cmid);
                 $newcmid = $cm_mapping->newitemid;
                 $assessor = $this->get_mapping('user', (int) $users->assessorid);
                 $student = $this->get_mapping('user', (int) $users->studentid);
                 if (!isset($student->newitemid) || !isset($assessor->newitemid)) {
                     continue;
                 }
                 $params = array('assessorid' => (int) $assessor->newitemid, 'studentid' => $student->newitemid, 'cmid' => $newcmid);
                 if (!($allowedusers_object = evalcomix_allowedusers::fetch($params))) {
                     $allowedusers_object = new evalcomix_allowedusers($params);
                     $newid = $allowedusers_object->insert();
                 }
             }
         }
     }
     if (isset($xml->evalcomix->tools[0])) {
         $hashtools = array();
         foreach ($xml->evalcomix->tools[0] as $tool) {
             if ((string) $tool->type == 'tmp') {
                 continue;
             }
             $idtoolold = (string) $tool->idtool;
             $tool_mapping = $this->get_mapping('evalcomix_tool', (string) $tool['id']);
             $toolnew = evalcomix_tool::fetch(array('id' => $tool_mapping->newitemid));
             $idtoolnew = $toolnew->idtool;
             $object = new stdClass();
             $object->oldid = $idtoolold;
             $object->newid = $idtoolnew;
             $hashtools[] = $object;
         }
     }
     if (isset($hashtools) && isset($assessmentids)) {
         $result = webservice_evalcomix_client::duplicate_course($assessmentids, $hashtools);
     }
     //$newtools = webservice_evalcomix_client::get_ws_list_tool($courseid_new, $moodlename_new);
 }
     global $DB;
     $objectnew = new evalcomix_tool($this->evalcomix_tool[0]->id, $this->evalcomix_tool[0]->evxid, $this->evalcomix_tool[0]->title, $this->evalcomix_tool[0]->type, $this->evalcomix_tool[0]->idtool);
     $this->assertTrue(method_exists($objectnew, 'update'));
     $params = array('title' => 'helloeveryone', 'type' => 'rubric', 'idtool' => '12_plaSIMPLETEST');
     evalcomix_tool::set_properties($objectnew, $params);
     $this->assertTrue($objectnew->update());
 }
 /**
  * Finds and returns all evalcomix_tool instances.
  * @static abstract
  *
  * @return array array of evalcomix_tool instances or false if none found.
  */
 public static function fetch_all($params)
 {
     return evalcomix_tool::fetch_all_helper('block_evalcomix_modes_time', 'evalcomix_modes_time', $params);
 }
示例#18
0
	<script type="text/javascript">
		function urledit(u, nombre, edit){
			win2 = window.open(u, nombre, "menubar=0,location=0,scrollbars,resizable,width=780,height=500");
			checkChildedit(edit);
		}
		function checkChildedit(edit) {
			if (win2.closed) {
			 window.location.replace("' . $CFG->wwwroot . '/blocks/evalcomix/tool/index.php?id=' . $courseid . '&edit=" + edit);
		
				/*window.location.href = "' . $CFG->wwwroot . '/blocks/evalcomix/tool/index.php?id=' . $courseid . '&edit=" + edit;*/
		}
		else setTimeout("checkChildedit(\'"+edit+"\')",1);
		}
	</script>
';
include_once $CFG->dirroot . '/blocks/evalcomix/javascript/popup.php';
include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_tool.php';
include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix.php';
include_once $CFG->dirroot . '/blocks/evalcomix/classes/webservice_evalcomix_client.php';
if ($tid) {
    $tooldelete = evalcomix_tool::fetch(array('id' => $tid));
    if ($tooldelete) {
        $response = webservice_evalcomix_client::get_ws_deletetool($tooldelete->idtool);
        $tooldelete->delete();
    }
}
if (isset($edit) && $edit != '' && $edit != 'undefined') {
    $tool = evalcomix_tool::fetch(array('idtool' => $edit));
    //llamada para obtener datos y actualizar. Por lo general
    $response = webservice_evalcomix_client::get_ws_list_tool($course->id, $tool->idtool);
    if ($response != false) {
示例#19
0
/*if(is_siteadmin($USER) || has_capability('block/evalcomix:edit',$context)){
		echo '		
			<form name="formulario" method="get" action="'. $CFG->wwwroot.'/blocks/evalcomix/assessment/index.php">
				<input type=hidden name=id value=' . $COURSE->id .'>
				<SELECT NAME=select onchange="submit()">		
						<option value="0">Notas de EvalCOMIX con notas de Moodle
						<option value="1">Sólo notas de EvalCOMIX
				</SELECT>
			</form>
			<script language=javascript>document.formulario.select.options['.$selection.'].selected = true;</script>				
		';
	}*/
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// Comprobamos si existen instrumentos modificados con evaluaciones asociadas /////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if ($toollist = evalcomix_tool::fetch_all(array('evxid' => $environment->id))) {
    $newgrades = webservice_evalcomix_client::get_assessments_modified(array('tools' => $toollist));
    if (!empty($newgrades)) {
        include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_assessments.php';
        include_once $CFG->dirroot . '/blocks/evalcomix/classes/evalcomix_grades.php';
        $toolids = array();
        foreach ($tasks as $task) {
            if ($assessments = evalcomix_assessments::fetch_all(array('taskid' => $task->id))) {
                foreach ($assessments as $assessment) {
                    $activity = $task->instanceid;
                    $module = evalcomix_tasks::get_type_task($activity);
                    $mode = grade_report_evalcomix::get_type_evaluation($assessment->studentid, $courseid, $assessment->assessorid);
                    $str = $courseid . '_' . $module . '_' . $activity . '_' . $assessment->studentid . '_' . $assessment->assessorid . '_' . $mode . '_' . MOODLE_NAME;
                    $assessmentid = md5($str);
                    if (isset($newgrades[$assessmentid])) {
                        $grade = $newgrades[$assessmentid]->grade;
 /**
  * Fetch all objects. Return an array with the required params
  */
 public function test_fetchall_ok()
 {
     $params = array('title' => 'hola');
     $result = evalcomix_tool::fetch_all($params);
     $this->assertIsA($result, 'array');
 }