diff --git a/server/moodle/blocks/homework/classes/external/filter_homework.php b/server/moodle/blocks/homework/classes/external/filter_homework.php
index 2492696e..22935880 100644
--- a/server/moodle/blocks/homework/classes/external/filter_homework.php
+++ b/server/moodle/blocks/homework/classes/external/filter_homework.php
@@ -26,21 +26,20 @@
namespace block_homework\external;
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
-require_once("$CFG->libdir/externallib.php");
-use coding_exception;
+use core_external\external_api;
+use core_external\external_function_parameters;
+use core_external\external_value;
+use core_external\external_single_structure;
+
use dml_exception;
-use external_function_parameters;
-use external_value;
-use external_single_structure;
use JsonException;
/**
* Class used to filter homework on block plugin.
*/
-class filter_homework extends \external_api {
+class filter_homework extends external_api {
/**
*
* @return external_function_parameters Is a definition of the functions parameter type and a description of it.
diff --git a/server/moodle/blocks/homework/classes/external/get_courses.php b/server/moodle/blocks/homework/classes/external/get_courses.php
index 5f96fde0..9a00c9f6 100644
--- a/server/moodle/blocks/homework/classes/external/get_courses.php
+++ b/server/moodle/blocks/homework/classes/external/get_courses.php
@@ -26,22 +26,19 @@
namespace block_homework\external;
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
-require_once("$CFG->libdir/externallib.php");
-use coding_exception;
use core_external\external_api;
-use dml_exception;
-use external_function_parameters;
-use external_value;
-use external_single_structure;
+use core_external\external_function_parameters;
+use core_external\external_value;
+use core_external\external_single_structure;
+
use JsonException;
/**
*
*/
-class get_courses extends \external_api {
+class get_courses extends external_api {
/**
*
* @return external_function_parameters
diff --git a/server/moodle/blocks/homework/classes/external/get_homework.php b/server/moodle/blocks/homework/classes/external/get_homework.php
index e65ee47f..1da2174b 100644
--- a/server/moodle/blocks/homework/classes/external/get_homework.php
+++ b/server/moodle/blocks/homework/classes/external/get_homework.php
@@ -26,18 +26,16 @@
namespace block_homework\external;
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
-use coding_exception;
-use dml_exception;
-use JsonException;
-
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_value;
use core_external\external_single_structure;
+use dml_exception;
+use JsonException;
+
/**
*
*/
@@ -60,10 +58,13 @@ public static function execute_parameters() {
*/
public static function execute($sort) {
global $DB, $USER;
+
$usercourses = enrol_get_users_courses($USER->id, true);
$homeworkarray = [];
+
foreach ($usercourses as $course) {
$homeworkrecords = $DB->get_records('homework', ['course_id' => $course->id]);
+
foreach ($homeworkrecords as $homework) {
$homeworkarray[] = [
'id' => $homework->id,
@@ -75,6 +76,7 @@ public static function execute($sort) {
];
}
}
+
if ($sort === 'due') {
$homeworkarray = self::sortDueDate($homeworkarray);
}
diff --git a/server/moodle/blocks/homework/classes/external/get_infohomework_modal.php b/server/moodle/blocks/homework/classes/external/get_infohomework_modal.php
index 11164505..fb9c0d82 100644
--- a/server/moodle/blocks/homework/classes/external/get_infohomework_modal.php
+++ b/server/moodle/blocks/homework/classes/external/get_infohomework_modal.php
@@ -15,17 +15,16 @@
// along with Moodle. If not, see .
namespace block_homework\external;
-
defined('MOODLE_INTERNAL') || die();
global $CFG;
-use coding_exception;
use core_external\external_api;
-use dml_exception;
use core_external\external_function_parameters;
use core_external\external_value;
use core_external\external_single_structure;
-use JsonException;
+
+use coding_exception;
+use dml_exception;
use Mustache_Engine;
/**
@@ -56,24 +55,30 @@ public static function execute_parameters(): external_function_parameters {
*/
public static function execute(int $homeworkid, float $readingspeed): array {
global $DB, $USER;
+
$homework = $DB->get_record('homework', ['id' => $homeworkid], '*', MUST_EXIST);
$course = $DB->get_record('course', ['id' => $homework->course_id]);
$materials = $DB->get_records('homework_materials', ['homework_id' => $homework->id]);
$completedmaterials = $DB->get_records('completions', ['usermodified' => $USER->id]);
+
$literaturearray = [];
$linksarray = [];
$videosarray = [];
+
foreach ($materials as $material) {
$completed = false;
+
foreach ($completedmaterials as $completedmaterial) {
if ($completedmaterial->material_id === $material->id) {
$completed = true;
break;
}
}
+
if ($completed) {
continue;
}
+
if ($material->startpage !== null && $material->endpage !== null) {
if ($material->file_id !== null) {
$material->fileurl = self::get_file_link_by_id($material->file_id);
@@ -88,6 +93,7 @@ public static function execute(int $homeworkid, float $readingspeed): array {
}
$videosarray[] = $material;
}
+
if ($material->starttime != null && $material->endtime != null) {
$material->expectedTime = ceil(($material->endtime - $material->starttime)/60);
}
diff --git a/server/moodle/blocks/homework/classes/external/get_stats_modal.php b/server/moodle/blocks/homework/classes/external/get_stats_modal.php
index 7a4b5b1c..cc01440f 100644
--- a/server/moodle/blocks/homework/classes/external/get_stats_modal.php
+++ b/server/moodle/blocks/homework/classes/external/get_stats_modal.php
@@ -15,18 +15,16 @@
// along with Moodle. If not, see .
namespace block_homework\external;
-
defined('MOODLE_INTERNAL') || die();
global $CFG;
-use coding_exception;
-use core\router\schema\objects\array_of_things;
use core_external\external_api;
-use dml_exception;
use core_external\external_function_parameters;
use core_external\external_value;
use core_external\external_single_structure;
-use core_external\external_multiple_structure;
+
+use coding_exception;
+use dml_exception;
use JsonException;
use Mustache_Engine;
@@ -54,7 +52,7 @@ public static function execute_parameters(): external_function_parameters {
/**
* Generates the custom HTML for the stats modal.
*
- * @param array_of_things $stats The stats array
+ * @param string[] $stats The stats array
* @return string[] - The HTML to be shown client-side
* @throws dml_exception|JsonException
*/
diff --git a/server/moodle/blocks/homework/classes/external/save_homeworktime.php b/server/moodle/blocks/homework/classes/external/save_homeworktime.php
index b7175121..fe1a9472 100644
--- a/server/moodle/blocks/homework/classes/external/save_homeworktime.php
+++ b/server/moodle/blocks/homework/classes/external/save_homeworktime.php
@@ -15,10 +15,8 @@
// along with Moodle. If not, see .
namespace block_homework\external;
-
defined('MOODLE_INTERNAL') || die();
global $CFG;
-// Comment out line below for test if phpunit does not respond to putting run in separate process.
use core_external\external_api;
use core_external\external_multiple_structure;
diff --git a/server/moodle/mod/homework/classes/external/delete_file.php b/server/moodle/mod/homework/classes/external/delete_file.php
index aca1cfe3..074fe2bc 100644
--- a/server/moodle/mod/homework/classes/external/delete_file.php
+++ b/server/moodle/mod/homework/classes/external/delete_file.php
@@ -24,13 +24,14 @@
namespace mod_homework\external;
+use core_external\external_api;
+use core_external\external_function_parameters;
+use core_external\external_value;
+
use core\exception\coding_exception;
use core\exception\invalid_parameter_exception;
use core\exception\moodle_exception;
use core\exception\require_login_exception;
-use core_external\external_api;
-use core_external\external_function_parameters;
-use core_external\external_value;
use context_system;
/**
diff --git a/server/moodle/mod/homework/classes/external/delete_homework_material.php b/server/moodle/mod/homework/classes/external/delete_homework_material.php
index a3adcdcc..7a38ed81 100644
--- a/server/moodle/mod/homework/classes/external/delete_homework_material.php
+++ b/server/moodle/mod/homework/classes/external/delete_homework_material.php
@@ -23,20 +23,13 @@
*/
namespace mod_homework\external;
-
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
-use core\exception\coding_exception;
-use core\exception\invalid_parameter_exception;
-use core\exception\moodle_exception;
-use core\exception\require_login_exception;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_value;
use core_external\external_single_structure;
-use Matrix\Exception;
/**
* Class for editing homework materials.
diff --git a/server/moodle/mod/homework/classes/external/edit_homework_material.php b/server/moodle/mod/homework/classes/external/edit_homework_material.php
index 347544f2..87d8d938 100644
--- a/server/moodle/mod/homework/classes/external/edit_homework_material.php
+++ b/server/moodle/mod/homework/classes/external/edit_homework_material.php
@@ -23,9 +23,7 @@
*/
namespace mod_homework\external;
-
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
use core_external\external_api;
diff --git a/server/moodle/mod/homework/classes/external/get_events_for_homework.php b/server/moodle/mod/homework/classes/external/get_events_for_homework.php
index 257f827b..39509ffa 100644
--- a/server/moodle/mod/homework/classes/external/get_events_for_homework.php
+++ b/server/moodle/mod/homework/classes/external/get_events_for_homework.php
@@ -22,12 +22,14 @@
* @author group 11
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
+
namespace mod_homework\external;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
+
use dml_exception;
/**
diff --git a/server/moodle/mod/homework/classes/external/get_homework_chooser.php b/server/moodle/mod/homework/classes/external/get_homework_chooser.php
index 65f5b0a5..f4c54d6d 100644
--- a/server/moodle/mod/homework/classes/external/get_homework_chooser.php
+++ b/server/moodle/mod/homework/classes/external/get_homework_chooser.php
@@ -26,14 +26,14 @@
namespace mod_homework\external;
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
-use core\exception\coding_exception;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_value;
use core_external\external_single_structure;
+
+use core\exception\coding_exception;
use core\output\mustache_engine;
/**
diff --git a/server/moodle/mod/homework/classes/external/homework_event_link.php b/server/moodle/mod/homework/classes/external/homework_event_link.php
index cdebc7e5..6e5cb4de 100644
--- a/server/moodle/mod/homework/classes/external/homework_event_link.php
+++ b/server/moodle/mod/homework/classes/external/homework_event_link.php
@@ -22,16 +22,17 @@
* @author group 11
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
+
namespace mod_homework\external;
use core_external\external_api;
use core_external\external_function_parameters;
use core_external\external_single_structure;
use core_external\external_value;
+
use dml_exception;
use invalid_parameter_exception;
-
/**
* Class for linking homework and events.
*/
diff --git a/server/moodle/mod/homework/classes/external/save_homework_material.php b/server/moodle/mod/homework/classes/external/save_homework_material.php
index f60da47b..d758828a 100644
--- a/server/moodle/mod/homework/classes/external/save_homework_material.php
+++ b/server/moodle/mod/homework/classes/external/save_homework_material.php
@@ -23,9 +23,7 @@
*/
namespace mod_homework\external;
-
defined('MOODLE_INTERNAL') || die();
-
global $CFG;
use core_external\external_api;