forked from albsierra/codetest
-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathcreate-exercise.php
More file actions
48 lines (41 loc) · 1.53 KB
/
create-exercise.php
File metadata and controls
48 lines (41 loc) · 1.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
require_once('initTsugi.php');
include('views/dao/menu.php');
if (!$USER->instructor) {
header('Location: ' . addSession('../student-home.php'));
exit;
}
$main = new \CT\CT_Main($_SESSION["ct_id"]);
$owner = $_SESSION["lti"]["user_displayname"];
$language = array_keys($_GET, 'language') ? $_GET['language'] : "PHP";
$newExercise = new CT\CT_ExerciseCode();
if (isset($_GET['exerciseId'])) {
$newExercise = $newExercise->findExerciseForImportId($_GET['exerciseId']);
if ($newExercise->getCtId() != $_SESSION["ct_id"]) {
$newExercise = new CT\CT_ExerciseCode();
} else {
$libraries = $newExercise->findLibrariesForExerciseId($newExercise->getAkId());
$librariesNames = array();
foreach ($libraries as $key => $value) {
$librariesNames[$key]["pathname"] = $value->pathname;
$librariesNames[$key]["id"] = $value->id;
}
$newExercise->setLibraries($librariesNames);
$newExercise->setExerciseOutputTest((array) $newExercise->getExerciseOutputTest());
$newExercise->setExerciseInputTest((array) $newExercise->getExerciseInputTest());
$newExercise->setVisibleTest((array) $newExercise->getVisibleTest());
}
}
echo $twig->render('pages/exercise-creation.php.twig', array(
'main' => $main,
'checked' => true,
'type' => $language,
'owner' => $owner,
'newExercise' => $newExercise,
'OUTPUT' => $OUTPUT,
'CFG' => $CFG_CT,
'menu' => $menu,
'validatorService' => $validatorService,
'help' => $help()
)
);