function geogebra_set_mainfile($data)
{
    $cmid = $data->coursemodule;
    $draftitemid = $data->url;
    $context = context_module::instance($cmid);
    if ($draftitemid) {
        file_save_draft_area_files($draftitemid, $context->id, 'mod_geogebra', 'content', 0, geogebra_get_filemanager_options());
    }
    $filename = geogebra_extract_package($cmid);
    /* Codi antic
           $fs = get_file_storage();
           $files = $fs->get_area_files($context->id, 'mod_geogebra', 'content', 0, 'sortorder', false);
           if (count($files) == 1) {
               // only one file attached, set it as main file automatically
               $file = reset($files);
               file_set_sortorder($context->id, 'mod_geogebra', 'content', 0, $file->get_filepath(), $file->get_filename(), 1);
               $filename = $file->get_filename();
           }
       */
    return $filename;
}
 function data_preprocessing(&$values)
 {
     if ($this->current->instance) {
         $draftitemid = file_get_submitted_draft_itemid('geogebrafile');
         file_prepare_draft_area($draftitemid, $this->context->id, 'mod_geogebra', 'content', 0, geogebra_get_filemanager_options());
         $values['geogebrafile'] = $draftitemid;
     }
 }