ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilCourseObjectivesGUI Class Reference

class ilobjcourseobjectivesgui More...

+ Inheritance diagram for ilCourseObjectivesGUI:
+ Collaboration diagram for ilCourseObjectivesGUI:

Public Member Functions

 __construct ($a_course_id)
 Constructor. More...
 
 executeCommand ()
 execute command More...
 
 getSettings ()
 Get settings. More...
 
 askDeleteObjective ()
 
 deleteObjectives ()
 
 __initCourseObject ()
 
 __initObjectivesObject ($a_id=0)
 
 __initLMObject ($a_objective_id=0)
 
 __initQuestionObject ($a_objective_id=0)
 
 setSubTabs ($a_active="")
 set sub tabs More...
 
 create ()
 create objective More...
 

Data Fields

const MODE_UNDEFINED = 0
 
const MODE_CREATE = 1
 
const MODE_UPDATE = 2
 
 $ctrl
 
 $ilias
 
 $ilErr
 
 $lng
 
 $tpl
 
 $course_obj
 
 $course_id
 

Protected Member Functions

 listObjectives ()
 list objectives More...
 
 saveSorting ()
 save position More...
 
 questionOverview ()
 question overiew More...
 
 saveQuestionOverview ()
 update question overview More...
 
 edit ()
 edit objective More...
 
 save ()
 save More...
 
 materialAssignment ()
 material assignment More...
 
 updateMaterialAssignment ()
 update material assignment More...
 
 selfAssessmentAssignment ()
 self assessment assignemnt More...
 
 updateSelfAssessmentAssignment ()
 update self assessment assignment More...
 
 selfAssessmentLimits ()
 self assessment limits More...
 
 updateSelfAssessmentLimits ()
 update self assessment limits More...
 
 finalTestAssignment ()
 final test assignment More...
 
 isRandomTestType ($a_tst_type=0)
 
 showRandomTestAssignment (ilPropertyFormGUI $form=null)
 
 initFormRandom ()
 show random test More...
 
 getRandomTestQplOptions ()
 
 saveRandom ()
 Save random test settings. More...
 
 updateFinalTestAssignment ()
 update self assessment assignment More...
 
 finalSeparatedTestAssignment (ilPropertyFormGUI $form=null)
 Show test assignment form. More...
 
 finalTestLimits ()
 self assessment limits More...
 
 updateFinalTestLimits ()
 update self assessment limits More...
 
 initFormLimits ($a_mode)
 init limit form More...
 
 initFormTitle ($a_mode, $a_step_number)
 init form title More...
 
 initWizard ($a_step_number)
 init wizard More...
 

Protected Attributes

 $settings
 
 $test_type = 0
 

Detailed Description

class ilobjcourseobjectivesgui

Author
Stefan Meyer smeye.nosp@m.r.il.nosp@m.ias@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

Definition at line 36 of file class.ilCourseObjectivesGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilCourseObjectivesGUI::__construct (   $a_course_id)

Constructor.

Parameters
int$a_course_id

Definition at line 61 of file class.ilCourseObjectivesGUI.php.

62 {
63 include_once './Modules/Course/classes/class.ilCourseObjective.php';
64
65 global $ilCtrl,$lng,$ilErr,$ilias,$tpl,$tree,$ilTabs;
66
67 $this->ctrl = $ilCtrl;
68 $this->ctrl->saveParameter($this,array("ref_id"));
69
70 $this->ilErr = $ilErr;
71 $this->lng = $lng;
72 $this->lng->loadLanguageModule('crs');
73 $this->tpl = $tpl;
74 $this->tree = $tree;
75 $this->tabs_gui = $ilTabs;
76
77 $this->course_id = $a_course_id;
78 $this->__initCourseObject();
79
80 // begin-patch lok
81 $this->settings = ilLOSettings::getInstanceByObjId($this->course_obj->getId());
82 // end-patch lok
83
84 }
static getInstanceByObjId($a_obj_id)
get singleton instance
global $ilCtrl
Definition: ilias.php:18
settings()
Definition: settings.php:2

References $ilCtrl, $ilErr, $ilias, $lng, $tpl, __initCourseObject(), ilLOSettings\getInstanceByObjId(), and settings().

+ Here is the call graph for this function:

Member Function Documentation

◆ __initCourseObject()

ilCourseObjectivesGUI::__initCourseObject ( )

Definition at line 383 of file class.ilCourseObjectivesGUI.php.

384 {
385 if(!$this->course_obj =& ilObjectFactory::getInstanceByRefId($this->course_id,false))
386 {
387 $this->ilErr->raiseError("ilCourseObjectivesGUI: cannot create course object",$this->ilErr->MESSAGE);
388 exit;
389 }
390 return true;
391 }
static getInstanceByRefId($a_ref_id, $stop_on_error=true)
get an instance of an Ilias object by reference id

References exit, and ilObjectFactory\getInstanceByRefId().

Referenced by __construct().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ __initLMObject()

ilCourseObjectivesGUI::__initLMObject (   $a_objective_id = 0)

Definition at line 398 of file class.ilCourseObjectivesGUI.php.

399 {
400 include_once './Modules/Course/classes/class.ilCourseObjectiveMaterials.php';
401 $this->objectives_lm_obj = new ilCourseObjectiveMaterials($a_objective_id);
402
403 return true;
404 }
class ilCourseObjectiveMaterials

Referenced by updateMaterialAssignment().

+ Here is the caller graph for this function:

◆ __initObjectivesObject()

ilCourseObjectivesGUI::__initObjectivesObject (   $a_id = 0)

Definition at line 393 of file class.ilCourseObjectivesGUI.php.

394 {
395 return $this->objectives_obj = new ilCourseObjective($this->course_obj,$a_id);
396 }
class ilcourseobjective

Referenced by askDeleteObjective(), and deleteObjectives().

+ Here is the caller graph for this function:

◆ __initQuestionObject()

ilCourseObjectivesGUI::__initQuestionObject (   $a_objective_id = 0)
Parameters
type$a_objective_id
Returns
ilCourseObjectiveQuestion

Definition at line 412 of file class.ilCourseObjectivesGUI.php.

413 {
414 include_once './Modules/Course/classes/class.ilCourseObjectiveQuestion.php';
415 $this->objectives_qst_obj = new ilCourseObjectiveQuestion($a_objective_id);
416
417 return $this->objectives_qst_obj;
418 }
class ilcourseobjectiveQuestion

Referenced by create(), edit(), finalTestAssignment(), finalTestLimits(), materialAssignment(), saveRandom(), selfAssessmentAssignment(), selfAssessmentLimits(), showRandomTestAssignment(), updateFinalTestAssignment(), updateFinalTestLimits(), updateSelfAssessmentAssignment(), and updateSelfAssessmentLimits().

+ Here is the caller graph for this function:

◆ askDeleteObjective()

ilCourseObjectivesGUI::askDeleteObjective ( )

Definition at line 175 of file class.ilCourseObjectivesGUI.php.

176 {
177 global $rbacsystem;
178
179 // MINIMUM ACCESS LEVEL = 'write'
180 if(!$rbacsystem->checkAccess("write", $this->course_obj->getRefId()))
181 {
182 $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilErr->MESSAGE);
183 }
184 if(!count($_POST['objective']))
185 {
186 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'));
187 $this->listObjectives();
188
189 return true;
190 }
191
192 $this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.crs_objectives.html",'Modules/Course');
193
194 ilUtil::sendQuestion($this->lng->txt('crs_delete_objectve_sure'));
195
196 $tpl = new ilTemplate("tpl.table.html", true, true);
197 $tpl->addBlockfile("TBL_CONTENT", "tbl_content", "tpl.crs_objectives_delete_row.html",'Modules/Course');
198
199 $counter = 0;
200 foreach($_POST['objective'] as $objective_id)
201 {
202 $objective_obj = $this->__initObjectivesObject($objective_id);
203
204 $tpl->setCurrentBlock("tbl_content");
205 $tpl->setVariable("ROWCOL",ilUtil::switchColor(++$counter,"tblrow2","tblrow1"));
206 $tpl->setVariable("TITLE",$objective_obj->getTitle());
207 $tpl->setVariable("DESCRIPTION",$objective_obj->getDescription());
208 $tpl->parseCurrentBlock();
209 }
210
211 $tpl->setVariable("FORMACTION",$this->ctrl->getFormAction($this));
212
213 // Show action row
214 $tpl->setCurrentBlock("tbl_action_btn");
215 $tpl->setVariable("BTN_NAME",'deleteObjectives');
216 $tpl->setVariable("BTN_VALUE",$this->lng->txt('delete'));
217 $tpl->parseCurrentBlock();
218
219 $tpl->setCurrentBlock("tbl_action_btn");
220 $tpl->setVariable("BTN_NAME",'listObjectives');
221 $tpl->setVariable("BTN_VALUE",$this->lng->txt('cancel'));
222 $tpl->parseCurrentBlock();
223
224 $tpl->setCurrentBlock("tbl_action_row");
225 $tpl->setVariable("COLUMN_COUNTS",1);
226 $tpl->setVariable("IMG_ARROW",ilUtil::getImagePath('arrow_downright.svg'));
227 $tpl->parseCurrentBlock();
228
229
230 // create table
231 $tbl = new ilTableGUI();
232 $tbl->setStyle('table','std');
233
234 // title & header columns
235 $tbl->setTitle($this->lng->txt("crs_objectives"),"",$this->lng->txt("crs_objectives"));
236
237 $tbl->setHeaderNames(array($this->lng->txt("title")));
238 $tbl->setHeaderVars(array("title"),
239 array("ref_id" => $this->course_obj->getRefId(),
240 "cmdClass" => "ilcourseobjectivesgui",
241 "cmdNode" => $_GET["cmdNode"]));
242 $tbl->setColumnWidth(array("50%"));
243
244 $tbl->setLimit($_GET["limit"]);
245 $tbl->setOffset($_GET["offset"]);
246 $tbl->setMaxCount(count($_POST['objective']));
247
248 // footer
249 $tbl->disable("footer");
250 $tbl->disable('sort');
251
252 // render table
253 $tbl->setTemplate($tpl);
254 $tbl->render();
255
256 $this->tpl->setVariable("OBJECTIVES_TABLE", $tpl->get());
257
258
259 // Save marked objectives
260 $_SESSION['crs_delete_objectives'] = $_POST['objective'];
261
262 return true;
263 }
$_GET["client_id"]
$_POST["username"]
$_SESSION["AccountId"]
Class ilTableGUI.
special template class to simplify handling of ITX/PEAR
static sendQuestion($a_info="", $a_keep=false)
Send Question to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows)
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
$counter
$tbl
Definition: example_048.php:81
redirection script todo: (a better solution should control the processing via a xml file)

References $_GET, $_POST, $_SESSION, $counter, $tbl, $tpl, __initObjectivesObject(), ilUtil\getImagePath(), listObjectives(), ilUtil\sendFailure(), ilUtil\sendQuestion(), and ilUtil\switchColor().

+ Here is the call graph for this function:

◆ create()

ilCourseObjectivesGUI::create ( )

create objective

@access public

Parameters

return

Definition at line 469 of file class.ilCourseObjectivesGUI.php.

470 {
471 global $tpl;
472
473 $this->setSubTabs("create_obj");
474
475 $_SESSION['objective_mode'] = self::MODE_CREATE;
476
477 $this->ctrl->saveParameter($this,'objective_id');
478
479 if(!is_object($this->objective))
480 {
481 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
482 }
483 $this->__initQuestionObject((int) $_GET['objective_id']);
484 $this->initWizard(1);
485
486 $this->initFormTitle('create',1);
487 $GLOBALS['tpl']->setContent($this->form->getHtml());
488 #$w_tpl->setVariable('WIZ_CONTENT',$this->form->getHtml());
489 #$tpl->setContent($w_tpl->get());
490 }
initFormTitle($a_mode, $a_step_number)
init form title
setSubTabs($a_active="")
set sub tabs
initWizard($a_step_number)
init wizard
$GLOBALS['loaded']
Global hash that tracks already loaded includes.

References $_GET, $_SESSION, $GLOBALS, $tpl, __initQuestionObject(), initFormTitle(), initWizard(), MODE_CREATE, and setSubTabs().

+ Here is the call graph for this function:

◆ deleteObjectives()

ilCourseObjectivesGUI::deleteObjectives ( )

Definition at line 265 of file class.ilCourseObjectivesGUI.php.

266 {
267 global $rbacsystem;
268
269 // MINIMUM ACCESS LEVEL = 'write'
270 if(!$rbacsystem->checkAccess("write", $this->course_obj->getRefId()))
271 {
272 $this->ilias->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilErr->MESSAGE);
273 }
274 if(!count($_SESSION['crs_delete_objectives']))
275 {
276 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'));
277 $this->listObjectives();
278
279 return true;
280 }
281
282 foreach($_SESSION['crs_delete_objectives'] as $objective_id)
283 {
284 $objective_obj =& $this->__initObjectivesObject($objective_id);
285 $objective_obj->delete();
286 }
287
288 ilUtil::sendSuccess($this->lng->txt('crs_objectives_deleted'));
289 $this->listObjectives();
290
291 return true;
292 }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.

References $_SESSION, __initObjectivesObject(), listObjectives(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ edit()

ilCourseObjectivesGUI::edit ( )
protected

edit objective

@access protected

Returns

Definition at line 498 of file class.ilCourseObjectivesGUI.php.

499 {
500 global $tpl;
501
502 $_SESSION['objective_mode'] = self::MODE_UPDATE;
503
504 $this->setSubTabs("edit_obj");
505
506 $this->ctrl->setParameter($this,'objective_id',(int) $_REQUEST['objective_id']);
507
508 if(!$_REQUEST['objective_id'])
509 {
510 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
511 $this->ctrl->redirect($this,'listObjectives');
512 }
513
514 if(!is_object($this->objective))
515 {
516 $this->objective = new ilCourseObjective($this->course_obj,(int) $_REQUEST['objective_id']);
517 }
518
519 $this->__initQuestionObject((int) $_REQUEST['objective_id']);
520 $this->initWizard(1);
521 $this->initFormTitle('create',1);
522 $GLOBALS['tpl']->setContent($this->form->getHtml());
523 #$w_tpl->setVariable('WIZ_CONTENT',$this->form->getHtml());
524 #$tpl->setContent($w_tpl->get());
525 }

References $_SESSION, $GLOBALS, $tpl, __initQuestionObject(), initFormTitle(), initWizard(), MODE_UPDATE, ilUtil\sendFailure(), and setSubTabs().

Referenced by save().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ executeCommand()

ilCourseObjectivesGUI::executeCommand ( )

execute command

Definition at line 89 of file class.ilCourseObjectivesGUI.php.

90 {
91 global $ilTabs;
92
93 $ilTabs->setTabActive('crs_objectives');
94
95 $cmd = $this->ctrl->getCmd();
96
97
98 if (!$cmd = $this->ctrl->getCmd())
99 {
100 $cmd = "list";
101 }
102
103 $this->$cmd();
104 }
$cmd
Definition: sahs_server.php:35

References $cmd.

◆ finalSeparatedTestAssignment()

ilCourseObjectivesGUI::finalSeparatedTestAssignment ( ilPropertyFormGUI  $form = null)
protected

Show test assignment form.

Parameters
ilPropertyFormGUI$form

Definition at line 1222 of file class.ilCourseObjectivesGUI.php.

1223 {
1224 global $ilAccess, $ilErr;
1225
1226 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
1227 {
1228 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
1229 }
1230 if(!$_GET['objective_id'])
1231 {
1232 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
1233 $this->ctrl->returnToParent($this);
1234 }
1235 $this->ctrl->saveParameter($this,'objective_id');
1236 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
1237
1238 $this->initWizard(6);
1239 $form = $this->initFormTestAssignment();
1240 $GLOBALS['tpl']->setContent($form->getHtml());
1241 }

References $_GET, $GLOBALS, $ilErr, initWizard(), and ilUtil\sendFailure().

+ Here is the call graph for this function:

◆ finalTestAssignment()

ilCourseObjectivesGUI::finalTestAssignment ( )
protected

final test assignment

@access protected

Parameters

return

Definition at line 908 of file class.ilCourseObjectivesGUI.php.

909 {
910 global $ilAccess,$ilErr,$tpl;
911
912 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
913 {
914 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
915 }
916 if(!$_GET['objective_id'])
917 {
918 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
919 $this->ctrl->redirect($this,'listObjectives');
920 }
921
922 $this->setSubTabs("final_test_assign");
923
924 $this->ctrl->saveParameter($this,'objective_id');
925 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
926
927 // begin-patch lok
928 $this->ctrl->setParameter($this,'tt',ilLOSettings::TYPE_TEST_QUALIFIED);
929 $this->test_type = $_REQUEST['tt'] = ilLOSettings::TYPE_TEST_QUALIFIED;
931 {
932 return $this->showRandomTestAssignment();
933 }
934 // end-patch lok
935
936 include_once('./Modules/Course/classes/class.ilCourseObjectiveQuestionAssignmentTableGUI.php');
938 $this->course_obj,
939 (int) $_GET['objective_id'],
941
942 $table->setTitle($this->lng->txt('crs_objective_wiz_final'),
943 '',$this->lng->txt('crs_objective'));
944 $table->parse(ilCourseObjectiveQuestion::_getAssignableTests($this->course_obj->getRefId()));
945
946 $this->__initQuestionObject((int) $_GET['objective_id']);
947 $this->initWizard(5);
948 $GLOBALS['tpl']->setContent($table->getHTML());
949 #$w_tpl->setVariable('WIZ_CONTENT',$table->getHTML());
950 #$tpl->setContent($w_tpl->get());
951 }
TableGUI for question assignments of course objectives.
static _getAssignableTests($a_container_ref_id)
Get assignable tests.
showRandomTestAssignment(ilPropertyFormGUI $form=null)

References $_GET, $GLOBALS, $ilErr, $tpl, __initQuestionObject(), ilCourseObjectiveQuestion\_getAssignableTests(), initWizard(), isRandomTestType(), ilUtil\sendFailure(), setSubTabs(), showRandomTestAssignment(), ilCourseObjectiveQuestion\TYPE_FINAL_TEST, and ilLOSettings\TYPE_TEST_QUALIFIED.

Referenced by updateMaterialAssignment(), and updateSelfAssessmentAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ finalTestLimits()

ilCourseObjectivesGUI::finalTestLimits ( )
protected

self assessment limits

@access protected

Parameters

return

Definition at line 1250 of file class.ilCourseObjectivesGUI.php.

1251 {
1252 global $ilAccess,$ilErr,$tpl;
1253
1254 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
1255 {
1256 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
1257 }
1258 if(!$_GET['objective_id'])
1259 {
1260 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
1261 $this->ctrl->returnToParent($this);
1262 }
1263
1264 $this->setSubTabs("final_test_limits");
1265
1266 $this->ctrl->saveParameter($this,'objective_id');
1267 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
1268
1269 $this->__initQuestionObject((int) $_GET['objective_id']);
1270 $this->initWizard(6);
1271
1272 $this->initFormLimits('final');
1273 $GLOBALS['tpl']->setContent($this->form->getHtml());
1274
1275 #$w_tpl->setVariable('WIZ_CONTENT',$this->form->getHtml());
1276 #$tpl->setContent($w_tpl->get());
1277 }
initFormLimits($a_mode)
init limit form

References $_GET, $GLOBALS, $ilErr, $tpl, __initQuestionObject(), initFormLimits(), initWizard(), ilUtil\sendFailure(), and setSubTabs().

Referenced by updateFinalTestAssignment(), and updateFinalTestLimits().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getRandomTestQplOptions()

ilCourseObjectivesGUI::getRandomTestQplOptions ( )
protected

Definition at line 1056 of file class.ilCourseObjectivesGUI.php.

1057 {
1058 include_once './Modules/Test/classes/class.ilTestRandomQuestionSetSourcePoolDefinitionFactory.php';
1059 include_once './Modules/Test/classes/class.ilTestRandomQuestionSetSourcePoolDefinitionList.php';
1060
1061 $tst_ref_id = $this->getSettings()->getTestByType($this->test_type);
1062 if($tst_ref_id)
1063 {
1064 $tst = ilObjectFactory::getInstanceByRefId($tst_ref_id,false);
1065 }
1066 if(!$tst instanceof ilObjTest)
1067 {
1068 return array();
1069 }
1071 $GLOBALS['ilDB'],
1072 $tst,
1074 $GLOBALS['ilDB'],
1075 $tst
1076 )
1077 );
1078
1079 $list->loadDefinitions();
1080
1081 include_once './Modules/Test/classes/class.ilTestTaxonomyFilterLabelTranslater.php';
1082 $translater = new ilTestTaxonomyFilterLabelTranslater($GLOBALS['ilDB']);
1083 $translater->loadLabels($list);
1084
1085 $options[0] = $this->lng->txt('select_one');
1086 foreach ($list as $definition)
1087 {
1088 $title = $definition->getPoolTitle();
1089 $tax_id = $definition->getMappedFilterTaxId();
1090 if($tax_id)
1091 {
1092 $title .= (' -> '. $translater->getTaxonomyTreeLabel($tax_id));
1093 }
1094 $tax_node = $definition->getMappedFilterTaxNodeId();
1095 if($tax_node)
1096 {
1097 $title .= (' -> ' .$translater->getTaxonomyNodeLabel($tax_node));
1098 }
1099 $options[$definition->getId()] = $title;
1100 }
1101 return $options;
1102 }
if(!is_array($argv)) $options

References $GLOBALS, $options, $title, ilObjectFactory\getInstanceByRefId(), and getSettings().

Referenced by initFormRandom().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSettings()

ilCourseObjectivesGUI::getSettings ( )

Get settings.

Returns
ilLOSettings

Definition at line 111 of file class.ilCourseObjectivesGUI.php.

References $settings.

Referenced by getRandomTestQplOptions(), initWizard(), isRandomTestType(), saveRandom(), and updateMaterialAssignment().

+ Here is the caller graph for this function:

◆ initFormLimits()

ilCourseObjectivesGUI::initFormLimits (   $a_mode)
protected

init limit form

@access protected

Parameters
stringmode selfAssessment or final
Returns

Definition at line 1334 of file class.ilCourseObjectivesGUI.php.

1335 {
1336 if(!is_object($this->form))
1337 {
1338 include_once('./Services/Form/classes/class.ilPropertyFormGUI.php');
1339 $this->form = new ilPropertyFormGUI();
1340 }
1341 $this->form->setFormAction($this->ctrl->getFormAction($this));
1342 $this->form->setTableWidth('100%');
1343 //$this->form->setTitleIcon(ilUtil::getImagePath('icon_lobj.svg'),$this->lng->txt('crs_objective'));
1344
1345 switch($a_mode)
1346 {
1347 case 'selfAssessment':
1348 $this->form->setTitle($this->lng->txt('crs_objective_wiz_self_limit'));
1349 $this->form->addCommandButton('updateSelfAssessmentLimits',$this->lng->txt('crs_wiz_next'));
1350 $this->form->addCommandButton('selfAssessmentAssignment',$this->lng->txt('crs_wiz_back'));
1351
1352 $tests = $this->objectives_qst_obj->getSelfAssessmentTests();
1353 $max_points = $this->objectives_qst_obj->getSelfAssessmentPoints();
1354
1355 break;
1356
1357 case 'final':
1358 $this->form->setTitle($this->lng->txt('crs_objective_wiz_final_limit'));
1359 $this->form->addCommandButton('updateFinalTestLimits',$this->lng->txt('crs_wiz_next'));
1360 $this->form->addCommandButton('finalTestAssignment',$this->lng->txt('crs_wiz_back'));
1361
1362 $tests = $this->objectives_qst_obj->getFinalTests();
1363 $max_points = $this->objectives_qst_obj->getFinalTestPoints();
1364
1365 break;
1366 }
1367
1368 $over = new ilCustomInputGUI($this->lng->txt('crs_objective_qst_summary'),'');
1369
1370 $tpl = new ilTemplate('tpl.crs_objective_qst_summary.html',true,true,'Modules/Course');
1371
1372
1373 $limit = 0;
1374
1375 foreach($tests as $test)
1376 {
1377 $GLOBALS['ilLog']->write(__METHOD__.': '.print_r($test,TRUE));
1378
1379 $limit = $test['limit'];
1380
1381 foreach($this->objectives_qst_obj->getQuestionsOfTest($test['obj_id']) as $question)
1382 {
1383 $tpl->setCurrentBlock('qst');
1384 $tpl->setVariable('QST_TITLE',$question['title']);
1385 if(strlen($question['description']))
1386 {
1387 $tpl->setVariable('QST_DESCRIPTION',$question['description']);
1388 }
1389 $tpl->setVariable('QST_POINTS',$question['points'].' '.
1390 $this->lng->txt('crs_objective_points'));
1391 $tpl->parseCurrentBlock();
1392 }
1393 $tpl->setCurrentBlock('tst');
1394 $tpl->setVariable('TST_TITLE',ilObject::_lookupTitle($test['obj_id']));
1395 if($desc = ilObject::_lookupDescription($test['obj_id']))
1396 {
1397 $tpl->setVariable('TST_DESC',$desc);
1398 }
1399 $tpl->setVariable('TST_TYPE_IMG',ilUtil::getTypeIconPath('tst',$test['obj_id'],'tiny'));
1400 $tpl->setVariable('TST_ALT_IMG',$this->lng->txt('obj_tst'));
1401 $tpl->parseCurrentBlock();
1402 }
1403
1404 $tpl->setVariable('TXT_ALL_POINTS',$this->lng->txt('crs_objective_all_points'));
1405 $tpl->setVariable('TXT_POINTS',$this->lng->txt('crs_objective_points'));
1406 $tpl->setVariable('POINTS',$max_points);
1407
1408 $over->setHtml($tpl->get());
1409 $this->form->addItem($over);
1410
1411 // points
1412 $req = new ilNumberInputGUI($this->lng->txt('crs_loc_perc'),'limit');
1413 $req->setValue($limit);
1414 $req->setSize(3);
1415 $req->setMinValue(1);
1416 $req->setMaxValue(100);
1417 $req->setRequired(true);
1418 switch($a_mode)
1419 {
1420 case 'selfAssessment':
1421 $req->setInfo($this->lng->txt('crs_obj_initial_req_info'));
1422 break;
1423
1424 case 'final':
1425 $req->setInfo($this->lng->txt('crs_obj_final_req_info'));
1426 break;
1427 }
1428 $this->form->addItem($req);
1429 }
$test
Definition: Utf8Test.php:84
This class represents a custom property in a property form.
This class represents a number property in a property form.
static _lookupTitle($a_id)
lookup object title
static _lookupDescription($a_id)
lookup object description
This class represents a property form user interface.
static getTypeIconPath($a_type, $a_obj_id, $a_size='small')
Get type icon path path Return image path for icon_xxx.pngs Or (if enabled) path to custom icon Depre...

References $GLOBALS, $test, $tpl, ilObject\_lookupDescription(), ilObject\_lookupTitle(), and ilUtil\getTypeIconPath().

Referenced by finalTestLimits(), and selfAssessmentLimits().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initFormRandom()

ilCourseObjectivesGUI::initFormRandom ( )
protected

show random test

Definition at line 1000 of file class.ilCourseObjectivesGUI.php.

1001 {
1002 include_once './Modules/Course/classes/Objectives/class.ilLORandomTestQuestionPools.php';
1003 $rnd = new ilLORandomTestQuestionPools(
1004 $this->course_obj->getId(),
1005 (int) $_REQUEST['objective_id'],
1006 $this->test_type
1007 );
1008
1009 include_once './Services/Form/classes/class.ilPropertyFormGUI.php';
1010 $form = new ilPropertyFormGUI();
1011 $form->setFormAction($this->ctrl->getFormAction($this));
1012
1013 if($this->test_type == ilLOSettings::TYPE_TEST_INITIAL)
1014 {
1015 $form->setTitle($this->lng->txt('crs_loc_form_random_limits_it'));
1016 }
1017 else
1018 {
1019 $form->setTitle($this->lng->txt('crs_loc_form_random_limits_qt'));
1020 }
1021
1022 $form->addCommandButton('saveRandom', $this->lng->txt('save'));
1023
1024 $options = new ilRadioGroupInputGUI($this->lng->txt('crs_loc_rand_assign_qpl'),'type');
1025 $options->setValue(1);
1026 $options->setRequired(true);
1027
1028 $ass_qpl = new ilRadioOption($this->lng->txt('crs_loc_rand_assign_qpl'),1);
1029 $options->addOption($ass_qpl);
1030
1031 $qpl = new ilSelectInputGUI($this->lng->txt('crs_loc_rand_qpl'),'qpl');
1032 $qpl->setOptions($this->getRandomTestQplOptions());
1033 $qpl->setValue($rnd->getQplSequence());
1034 $ass_qpl->addSubItem($qpl);
1035
1036 #$num = new ilNumberInputGUI($this->lng->txt('crs_loc_num_qst'),'num_qst');
1037 #$num->setSize(3);
1038 #$num->setMinValue(1);
1039 #$num->setRequired(true);
1040 #$ass_qpl->addSubItem($num);
1041
1042 // points
1043 $per = new ilNumberInputGUI($this->lng->txt('crs_loc_perc'),'per');
1044 $per->setValue($rnd->getLimit());
1045 $per->setSize(3);
1046 $per->setMinValue(1);
1047 $per->setMaxValue(100);
1048 $per->setRequired(true);
1049 $ass_qpl->addSubItem($per);
1050
1051 $form->addItem($options);
1052 return $form;
1053 }
This class represents a property in a property form.
This class represents an option in a radio group.
This class represents a selection list property in a property form.

References $options, getRandomTestQplOptions(), and ilLOSettings\TYPE_TEST_INITIAL.

Referenced by saveRandom(), and showRandomTestAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initFormTitle()

ilCourseObjectivesGUI::initFormTitle (   $a_mode,
  $a_step_number 
)
protected

init form title

@access protected

Returns

Definition at line 1438 of file class.ilCourseObjectivesGUI.php.

1439 {
1440 include_once('./Services/Form/classes/class.ilPropertyFormGUI.php');
1441 if($this->form instanceof ilPropertyFormGUI)
1442 {
1443 return;
1444 }
1445
1446 $this->form = new ilPropertyFormGUI();
1447 $this->form->setFormAction($this->ctrl->getFormAction($this));
1448 //$this->form->setTitleIcon(ilUtil::getImagePath('icon_lobj.svg'),$this->lng->txt('crs_objective'));
1449
1450 switch($a_mode)
1451 {
1452 case 'create':
1453 $this->form->setTitle($this->lng->txt('crs_objective_wiz_title'));
1454 $this->form->addCommandButton('save',$this->lng->txt('crs_wiz_next'));
1455 // begin-patch lok
1456 #$this->form->addCommandButton('listObjectives',$this->lng->txt('cancel'));
1457 // end-patch lok
1458 break;
1459
1460 case 'update':
1461 break;
1462 }
1463
1464 $title = new ilTextInputGUI($this->lng->txt('title'),'title');
1465 $title->setValue($this->objective->getTitle());
1466 $title->setRequired(true);
1467 $title->setSize(40);
1468 $title->setMaxLength(70);
1469 $this->form->addItem($title);
1470
1471 $desc = new ilTextAreaInputGUI($this->lng->txt('description'),'description');
1472 $desc->setValue($this->objective->getDescription());
1473 $desc->setCols(40);
1474 $desc->setRows(5);
1475 $this->form->addItem($desc);
1476
1477 }
This class represents a text area property in a property form.
This class represents a text property in a property form.

References $title.

Referenced by create(), edit(), and save().

+ Here is the caller graph for this function:

◆ initWizard()

ilCourseObjectivesGUI::initWizard (   $a_step_number)
protected

init wizard

@access protected

Parameters
stringmode 'create' or 'edit'
Returns

Definition at line 1487 of file class.ilCourseObjectivesGUI.php.

1488 {
1489 $options = array(
1490 1 => $this->lng->txt('crs_objective_wiz_title'),
1491 2 => $this->lng->txt('crs_objective_wiz_materials'),
1492 3 => $this->lng->txt('crs_objective_wiz_self'),
1493 4 => $this->lng->txt('crs_objective_wiz_self_limit'),
1494 5 => $this->lng->txt('crs_objective_wiz_final'),
1495 6 => $this->lng->txt('crs_objective_wiz_final_limit'));
1496
1497 $info = array(
1498 1 => $this->lng->txt('crs_objective_wiz_title_info'),
1499 2 => $this->lng->txt('crs_objective_wiz_materials_info'),
1500 3 => $this->lng->txt('crs_objective_wiz_self_info'),
1501 4 => $this->lng->txt('crs_objective_wiz_self_limit_info'),
1502 5 => $this->lng->txt('crs_objective_wiz_final_info'),
1503 6 => $this->lng->txt('crs_objective_wiz_final_limit_info'));
1504
1505 $links = array(
1506 1 => $this->ctrl->getLinkTarget($this,'edit'),
1507 2 => $this->ctrl->getLinkTarget($this,'materialAssignment'),
1508 3 => $this->ctrl->getLinkTarget($this,'selfAssessmentAssignment'),
1509 4 => $this->ctrl->getLinkTarget($this,'selfAssessmentLimits'),
1510 5 => $this->ctrl->getLinkTarget($this,'finalTestAssignment'),
1511 6 => $this->ctrl->getLinkTarget($this,'finalTestLimits'));
1512
1513
1514
1515
1516 // checklist gui start
1517 include_once("./Services/UIComponent/Checklist/classes/class.ilChecklistGUI.php");
1518 $check_list = new ilChecklistGUI();
1519 // checklist gui end
1520
1521 if($_SESSION['objective_mode'] == self::MODE_CREATE)
1522 {
1523 // checklist gui start
1524 $check_list->setHeading($this->lng->txt('crs_checklist_objective'));
1525 // checklist gui end
1526 }
1527 else
1528 {
1529 // checklist gui start
1530 $check_list->setHeading($this->lng->txt('crs_checklist_objective'));
1531 // checklist gui end
1532 }
1533
1534 // end-patch lok
1535 $num = 0;
1536 foreach($options as $step => $title)
1537 {
1538 // checklist gui start
1539 $item_link = "";
1540 // checklist gui end
1541
1542 // begin-patch lok
1543 if($step == 3 and (!$this->getSettings()->worksWithInitialTest() or $this->getSettings()->hasSeparateInitialTests()))
1544 {
1545 continue;
1546 }
1547 if($step == 4 and (!$this->getSettings()->worksWithInitialTest() or $this->getSettings()->hasSeparateInitialTests()))
1548 {
1549 continue;
1550 }
1551 if($step == 5 and $this->getSettings()->hasSeparateQualifiedTests())
1552 {
1553 continue;
1554 }
1555 if($step == 6 and $this->getSettings()->hasSeparateQualifiedTests())
1556 {
1557 continue;
1558 }
1560 {
1561 continue;
1562 }
1564 {
1565 continue;
1566 }
1567 $num++;
1568 // end-patch lok
1569
1570 if($_SESSION['objective_mode'] == self::MODE_UPDATE)
1571 {
1572 $hide_link = false;
1573 if($step == 4 and !count($this->objectives_qst_obj->getSelfAssessmentQuestions()))
1574 {
1575 $hide_link = true;
1576 }
1577 if($step == 6 and !count($this->objectives_qst_obj->getFinalTestQuestions()))
1578 {
1579 $hide_link = true;
1580 }
1581 // begin-patch lok
1582 if($step == 3 and !$this->getSettings()->worksWithInitialTest())
1583 {
1584 $hide_link = true;
1585 }
1586 if($step == 4 and !$this->getSettings()->worksWithInitialTest())
1587 {
1588 $hide_link = true;
1589 }
1590 if(!$hide_link)
1591 {
1592 // checklist gui start
1593 $item_link = $links[$step];
1594 // checklist gui end
1595 }
1596 }
1597
1598 // checklist gui start
1599 $check_list->addEntry($title, $item_link, ilChecklistGUI::STATUS_NO_STATUS, ($step == $a_step_number));
1600 // checklist gui end
1601 }
1602
1603 // checklist gui start
1604 $GLOBALS["tpl"]->setRightContent($check_list->getHTML());
1605 // checklist gui end
1606
1607 }
foreach($_REQUEST as $var) foreach(array('_POST'=> 'HTTP_POST_VARS', '_GET'=> 'HTTP_GET_VARS', '_COOKIE'=> 'HTTP_COOKIE_VARS', '_SERVER'=> 'HTTP_SERVER_VARS', '_ENV'=> 'HTTP_ENV_VARS', '_FILES'=> 'HTTP_POST_FILES') as $array=> $other) $step
Definition: cssgen.php:155
$info
Definition: example_052.php:80

References $_SESSION, $GLOBALS, $info, $options, $step, $title, getSettings(), isRandomTestType(), ilChecklistGUI\STATUS_NO_STATUS, ilLOSettings\TYPE_TEST_INITIAL, and ilLOSettings\TYPE_TEST_QUALIFIED.

Referenced by create(), edit(), finalSeparatedTestAssignment(), finalTestAssignment(), finalTestLimits(), materialAssignment(), selfAssessmentAssignment(), selfAssessmentLimits(), and showRandomTestAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isRandomTestType()

ilCourseObjectivesGUI::isRandomTestType (   $a_tst_type = 0)
protected

Definition at line 954 of file class.ilCourseObjectivesGUI.php.

955 {
956 if(!$a_tst_type)
957 {
958 $a_tst_type = $this->test_type;
959 }
960
961 $tst_ref_id = $this->getSettings()->getTestByType($a_tst_type);
962 if(!$tst_ref_id)
963 {
964 return false;
965 }
966 include_once './Modules/Test/classes/class.ilObjTest.php';
968 }
static _lookupRandomTest($a_obj_id)
Returns the fact wether the test with passed obj id is a random questions test or not.
static _lookupObjId($a_id)

References $test_type, ilObject\_lookupObjId(), ilObjTest\_lookupRandomTest(), and getSettings().

Referenced by finalTestAssignment(), initWizard(), and selfAssessmentAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ listObjectives()

ilCourseObjectivesGUI::listObjectives ( )
protected

list objectives

@access protected

Parameters

return

Definition at line 125 of file class.ilCourseObjectivesGUI.php.

126 {
127 global $ilAccess,$ilErr,$ilObjDataCache,$ilToolbar;
128
129 $_SESSION['objective_mode'] = self::MODE_UNDEFINED;
130 if(!$ilAccess->checkAccess("write",'',$this->course_obj->getRefId()))
131 {
132 $this->ilErr->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilErr->MESSAGE);
133 }
134
135 $this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.crs_objectives.html','Modules/Course');
136
137 $ilToolbar->addButton($this->lng->txt('crs_add_objective'),
138 $this->ctrl->getLinkTarget($this, "'create"));
139
140 include_once('./Modules/Course/classes/class.ilCourseObjectivesTableGUI.php');
141 $table = new ilCourseObjectivesTableGUI($this,$this->course_obj);
142 $table->setTitle($this->lng->txt('crs_objectives'),'',$this->lng->txt('crs_objectives'));
143 $table->parse(ilCourseObjective::_getObjectiveIds($this->course_obj->getId(),false));
144
145 $this->tpl->setVariable('OBJECTIVES_TABLE',$table->getHTML());
146 }
static _getObjectiveIds($course_id, $a_activated_only=false)

References $_SESSION, $ilErr, ilCourseObjective\_getObjectiveIds(), and MODE_UNDEFINED.

Referenced by askDeleteObjective(), deleteObjectives(), and saveSorting().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ materialAssignment()

ilCourseObjectivesGUI::materialAssignment ( )
protected

material assignment

@access protected

Returns

Definition at line 586 of file class.ilCourseObjectivesGUI.php.

587 {
588 global $ilAccess,$ilErr,$tpl;
589
590 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
591 {
592 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
593 }
594 if(!$_GET['objective_id'])
595 {
596 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
597 $this->ctrl->redirect($this,'listObjectives');
598 }
599
600 $this->setSubTabs("materials");
601
602 $this->ctrl->saveParameter($this,'objective_id');
603
604 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
605
606 include_once('./Modules/Course/classes/class.ilCourseObjectiveMaterialAssignmentTableGUI.php');
607 $table = new ilCourseObjectiveMaterialAssignmentTableGUI($this,$this->course_obj,(int) $_GET['objective_id']);
608 $table->setTitle($this->lng->txt('crs_objective_wiz_materials'),
609 '',$this->lng->txt('crs_objectives'));
610
611 include_once('Modules/Course/classes/class.ilCourseObjectiveMaterials.php');
612 $table->parse(ilCourseObjectiveMaterials::_getAssignableMaterials($this->course_obj->getRefId()));
613
614 $this->__initQuestionObject((int) $_GET['objective_id']);
615 $this->initWizard(2);
616 #$w_tpl->setVariable('WIZ_CONTENT',$table->getHTML());
617 $GLOBALS['tpl']->setContent($table->getHTML());
618 #$tpl->setContent($w_tpl->get());
619 }
TableGUI for material assignments of course objectives.
static _getAssignableMaterials($a_container_id)
Get an array of course material ids that can be assigned to learning objectives No tst,...

References $_GET, $GLOBALS, $ilErr, $tpl, __initQuestionObject(), ilCourseObjectiveMaterials\_getAssignableMaterials(), initWizard(), ilUtil\sendFailure(), and setSubTabs().

+ Here is the call graph for this function:

◆ questionOverview()

ilCourseObjectivesGUI::questionOverview ( )
protected

question overiew

@access protected

Returns

Definition at line 300 of file class.ilCourseObjectivesGUI.php.

301 {
302 global $ilAccess,$ilErr,$ilTabs;
303
304 $ilTabs->setSubTabActive('crs_objective_overview_question_assignment');
305
306 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
307 {
308 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
309 }
310
311 include_once('./Modules/Course/classes/class.ilCourseObjectiveQuestionsTableGUI.php');
312 $table = new ilCourseObjectiveQuestionsTableGUI($this,$this->course_obj);
313 $table->setTitle($this->lng->txt('crs_objectives_edit_question_assignments'),'',$this->lng->txt('crs_objectives'));
314 // begin-patch lok
315 $table->parse(ilCourseObjective::_getObjectiveIds($this->course_obj->getId(),false));
316 // end-patch lok
317
318 $this->tpl->setContent($table->getHTML());
319 }

References $ilErr, and ilCourseObjective\_getObjectiveIds().

Referenced by saveQuestionOverview().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ save()

ilCourseObjectivesGUI::save ( )
protected

save

@access protected

Returns

Definition at line 533 of file class.ilCourseObjectivesGUI.php.

534 {
535 global $ilAccess,$ilErr;
536
537 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
538 {
539 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
540 }
541
542 $this->ctrl->saveParameter($this,'objective_id');
543
544 $this->objective = new ilCourseObjective($this->course_obj,(int) $_REQUEST['objective_id']);
545 $this->initFormTitle('create', 1);
546 if($this->form->checkInput())
547 {
548 $this->objective->setTitle($this->form->getInput('title'));
549 $this->objective->setDescription($this->form->getInput('description'));
550 $this->objective->setPasses(0);
551
552 if(!$_GET['objective_id'])
553 {
554 $objective_id = $this->objective->add();
555 ilUtil::sendSuccess($this->lng->txt('crs_added_objective'),true);
556 }
557 else
558 {
559 $this->objective->update();
560 ilUtil::sendSuccess($this->lng->txt('crs_objective_modified'),true);
561 $objective_id = $_GET['objective_id'];
562 }
563 }
564 else
565 {
566 $this->form->setValuesByPost();
567 return $this->edit();
568 }
569
570 if($_SESSION['objective_mode'] != self::MODE_CREATE)
571 {
572 $this->ctrl->returnToParent($this);
573 }
574
575 $this->ctrl->setParameter($this,'objective_id',$objective_id);
576 $this->ctrl->redirect($this,'materialAssignment');
577 return true;
578 }

References $_GET, $_SESSION, $ilErr, edit(), initFormTitle(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ saveQuestionOverview()

ilCourseObjectivesGUI::saveQuestionOverview ( )
protected

update question overview

@access protected

Returns

Definition at line 327 of file class.ilCourseObjectivesGUI.php.

328 {
329 include_once('./Modules/Course/classes/class.ilCourseObjectiveQuestion.php');
330
331 global $ilAccess,$ilErr;
332
333 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
334 {
335 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
336 }
337 $error = false;
338
339 $_POST['self'] = $_POST['self'] ? $_POST['self'] : array();
340 $_POST['final'] = $_POST['final'] ? $_POST['final'] : array();
341
342 foreach($_POST['self'] as $objective_id => $limit)
343 {
344 $qst = new ilCourseObjectiveQuestion($objective_id);
345 $max_points = $qst->getSelfAssessmentPoints();
346
347 if($limit < 0 or $limit > $max_points)
348 {
349 ilUtil::sendFailure($this->lng->txt('crs_objective_limit_err'));
350 $this->questionOverview();
351 return false;
352 }
353 }
354 foreach($_POST['final'] as $objective_id => $limit)
355 {
356 $qst = new ilCourseObjectiveQuestion($objective_id);
357 $max_points = $qst->getFinalTestPoints();
358
359 if($limit < 0 or $limit > $max_points)
360 {
361 ilUtil::sendFailure($this->lng->txt('crs_objective_limit_err'));
362 $this->questionOverview();
363 return false;
364 }
365 }
366
367 foreach($_POST['self'] as $objective_id => $limit)
368 {
370 }
371
372 foreach($_POST['final'] as $objective_id => $limit)
373 {
375 }
376
377 ilUtil::sendSuccess($this->lng->txt('settings_saved'));
378 $this->questionOverview();
379 return true;
380 }
$error
Definition: Error.php:17
static _updateTestLimits($a_objective_id, $a_status, $a_limit)
update test limits

References $_POST, $error, $ilErr, ilCourseObjectiveQuestion\_updateTestLimits(), questionOverview(), ilUtil\sendFailure(), ilUtil\sendSuccess(), ilCourseObjectiveQuestion\TYPE_FINAL_TEST, and ilCourseObjectiveQuestion\TYPE_SELF_ASSESSMENT.

+ Here is the call graph for this function:

◆ saveRandom()

ilCourseObjectivesGUI::saveRandom ( )
protected

Save random test settings.

Definition at line 1107 of file class.ilCourseObjectivesGUI.php.

1108 {
1109 $this->ctrl->saveParameter($this,'objective_id');
1110 $this->ctrl->setParameter($this,'tt',(int) $_REQUEST['tt']);
1111 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
1112 $this->test_type = (int) $_REQUEST['tt'];
1113
1114 $form = $this->initFormRandom();
1115 if($form->checkInput())
1116 {
1117 $qst = $this->__initQuestionObject((int) $_GET['objective_id']);
1118 $qst->deleteByTestType(
1119 ($this->test_type == ilLOSettings::TYPE_TEST_INITIAL) ?
1122 );
1123 $ref_id = $this->getSettings()->getTestByType($this->test_type);
1124
1125 include_once './Modules/Course/classes/Objectives/class.ilLORandomTestQuestionPools.php';
1126 $rnd = new ilLORandomTestQuestionPools(
1127 $this->course_obj->getId(),
1128 (int) $_REQUEST['objective_id'],
1129 $this->test_type
1130 );
1131 $rnd->delete();
1132 $rnd->setLimit($form->getInput('per'));
1133 $rnd->setQplSequence($form->getInput('qpl'));
1134 $rnd->setTestId(ilObject::_lookupObjId($ref_id));
1135 $rnd->create();
1136 }
1137 else
1138 {
1139 $form->setValuesByPost();
1140 ilUtil::sendFailure($this->lng->txt('err_check_input'));
1141 return $this->showRandomTestAssignment();
1142 }
1143
1144 ilUtil::sendSuccess($this->lng->txt('settings_saved'),true);
1145 if($this->test_type == ilLOSettings::TYPE_TEST_QUALIFIED)
1146 {
1147 $this->ctrl->returnToParent($this);
1148 }
1149 else
1150 {
1151 $this->ctrl->redirect($this,'finalTestAssignment');
1152 }
1153 }
$ref_id
Definition: sahs_server.php:39

References $_GET, $ref_id, __initQuestionObject(), ilObject\_lookupObjId(), getSettings(), initFormRandom(), ilUtil\sendFailure(), ilUtil\sendSuccess(), showRandomTestAssignment(), ilCourseObjectiveQuestion\TYPE_FINAL_TEST, ilCourseObjectiveQuestion\TYPE_SELF_ASSESSMENT, ilLOSettings\TYPE_TEST_INITIAL, and ilLOSettings\TYPE_TEST_QUALIFIED.

+ Here is the call graph for this function:

◆ saveSorting()

ilCourseObjectivesGUI::saveSorting ( )
protected

save position

@access protected

Returns

Definition at line 154 of file class.ilCourseObjectivesGUI.php.

155 {
156 global $ilAccess,$ilErr,$ilObjDataCache;
157
158 if(!$ilAccess->checkAccess("write",'',$this->course_obj->getRefId()))
159 {
160 $this->ilErr->raiseError($this->lng->txt("msg_no_perm_write"),$this->ilErr->MESSAGE);
161 }
162
163 asort($_POST['position'],SORT_NUMERIC);
164
165 $counter = 1;
166 foreach($_POST['position'] as $objective_id => $position)
167 {
168 $objective = new ilCourseObjective($this->course_obj,$objective_id);
169 $objective->writePosition($counter++);
170 }
171 ilUtil::sendSuccess($this->lng->txt('crs_objective_saved_sorting'));
172 $this->listObjectives();
173 }

References $_POST, $counter, $ilErr, listObjectives(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ selfAssessmentAssignment()

ilCourseObjectivesGUI::selfAssessmentAssignment ( )
protected

self assessment assignemnt

@access protected

Returns

Definition at line 699 of file class.ilCourseObjectivesGUI.php.

700 {
701 global $ilAccess,$ilErr,$tpl;
702
703 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
704 {
705 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
706 }
707 if(!$_GET['objective_id'])
708 {
709 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
710 $this->ctrl->redirect($this,'listObjectives');
711 }
712
713 $this->setSubTabs("self_ass_assign");
714
715 $this->ctrl->saveParameter($this,'objective_id');
716
717 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
718
719 // begin-patch lok
720 $this->ctrl->setParameter($this,'tt',ilLOSettings::TYPE_TEST_INITIAL);
721 $this->test_type = $_REQUEST['tt'] = ilLOSettings::TYPE_TEST_INITIAL;
723 {
724 return $this->showRandomTestAssignment();
725 }
726 // end-patch lok
727
728 include_once('./Modules/Course/classes/class.ilCourseObjectiveQuestionAssignmentTableGUI.php');
730 $this->course_obj,
731 (int) $_GET['objective_id'],
733 $table->setTitle($this->lng->txt('crs_objective_wiz_self'),
734 '',$this->lng->txt('crs_objective'));
735 $table->parse(ilCourseObjectiveQuestion::_getAssignableTests($this->course_obj->getRefId()));
736
737 $this->__initQuestionObject((int) $_GET['objective_id']);
738 $this->initWizard(3);
739 $GLOBALS['tpl']->setContent($table->getHTML());
740 #$w_tpl->setVariable('WIZ_CONTENT',$table->getHTML());
741 #$tpl->setContent($w_tpl->get());
742 }

References $_GET, $GLOBALS, $ilErr, $tpl, __initQuestionObject(), ilCourseObjectiveQuestion\_getAssignableTests(), initWizard(), isRandomTestType(), ilUtil\sendFailure(), setSubTabs(), showRandomTestAssignment(), ilCourseObjectiveQuestion\TYPE_SELF_ASSESSMENT, and ilLOSettings\TYPE_TEST_INITIAL.

Referenced by updateMaterialAssignment(), and updateSelfAssessmentAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ selfAssessmentLimits()

ilCourseObjectivesGUI::selfAssessmentLimits ( )
protected

self assessment limits

@access protected

Parameters

return

Definition at line 831 of file class.ilCourseObjectivesGUI.php.

832 {
833 global $ilAccess,$ilErr,$tpl;
834
835 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
836 {
837 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
838 }
839 if(!$_GET['objective_id'])
840 {
841 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
842 $this->ctrl->redirect($this,'listObjectives');
843 }
844
845 $this->setSubTabs("self_ass_limits");
846
847 $this->ctrl->saveParameter($this,'objective_id');
848 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
849
850 $this->__initQuestionObject((int) $_GET['objective_id']);
851 $this->initWizard(4);
852
853 $this->initFormLimits('selfAssessment');
854 $GLOBALS['tpl']->setContent($this->form->getHtml());
855 #$w_tpl->setVariable('WIZ_CONTENT',$this->form->getHtml());
856 #$tpl->setContent($w_tpl->get());
857 }

References $_GET, $GLOBALS, $ilErr, $tpl, __initQuestionObject(), initFormLimits(), initWizard(), ilUtil\sendFailure(), and setSubTabs().

Referenced by updateSelfAssessmentAssignment(), and updateSelfAssessmentLimits().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setSubTabs()

ilCourseObjectivesGUI::setSubTabs (   $a_active = "")

set sub tabs

Definition at line 424 of file class.ilCourseObjectivesGUI.php.

425 {
426 global $ilTabs, $ilHelp;
427
428 if ($a_active != "")
429 {
430 $ilHelp->setScreenIdComponent("crs");
431 $ilHelp->setScreenId("crs_objective");
432 $ilHelp->setSubScreenId($a_active);
433 }
434
435
436 // begin-patch lok
437 // no subtabs here
438 return true;
439 // end-patch lok
440
441
442 $ilTabs->addSubTabTarget("crs_objective_overview_objectives",
443 $this->ctrl->getLinkTarget($this, "listObjectives"),
444 array("listObjectives", "moveObjectiveUp", "moveObjectiveDown", "listAssignedLM"),
445 array(),
446 '',
447 true);
448 include_once('./Modules/Course/classes/class.ilCourseObjectiveQuestion.php');
449
450 if(ilCourseObjectiveQuestion::_hasTests($this->course_obj->getId()))
451 {
452 $ilTabs->addSubTabTarget("crs_objective_overview_question_assignment",
453 $this->ctrl->getLinkTarget($this, "questionOverview"),
454 "editQuestionAssignment",
455 array(),
456 '',
457 false);
458 }
459 }
static _hasTests($a_course_id)
@access public

References ilCourseObjectiveQuestion\_hasTests().

Referenced by create(), edit(), finalTestAssignment(), finalTestLimits(), materialAssignment(), selfAssessmentAssignment(), selfAssessmentLimits(), and showRandomTestAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ showRandomTestAssignment()

ilCourseObjectivesGUI::showRandomTestAssignment ( ilPropertyFormGUI  $form = null)
protected
Parameters
ilPropertyFormGUI$form

Definition at line 974 of file class.ilCourseObjectivesGUI.php.

975 {
976 $this->ctrl->saveParameter($this,'objective_id');
977 $this->ctrl->setParameter($this,'tt', (int) $_REQUEST['tt']);
978 $this->objective = new ilCourseObjective($this->course_obj,(int) $_GET['objective_id']);
979 $this->test_type = (int) $_REQUEST['tt'];
980
981
982 $this->setSubTabs("rand_test_assign");
983
984 if(!$form instanceof ilPropertyFormGUI)
985 {
986 $form = $this->initFormRandom();
987 }
988
989 $this->__initQuestionObject((int) $_GET['objective_id']);
990 $this->initWizard(5);
991 $GLOBALS['tpl']->setContent($form->getHTML());
992 #$w_tpl->setVariable('WIZ_CONTENT',$form->getHTML());
993
994 #$GLOBALS['tpl']->setContent($w_tpl->get());
995 }

References $_GET, $GLOBALS, __initQuestionObject(), initFormRandom(), initWizard(), and setSubTabs().

Referenced by finalTestAssignment(), saveRandom(), and selfAssessmentAssignment().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateFinalTestAssignment()

ilCourseObjectivesGUI::updateFinalTestAssignment ( )
protected

update self assessment assignment

@access protected

Parameters

return

Definition at line 1162 of file class.ilCourseObjectivesGUI.php.

1163 {
1164 global $ilAccess,$ilErr,$ilObjDataCache;
1165
1166 $checked_questions = $_POST['questions'] ? $_POST['questions'] : array();
1167
1168
1169 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
1170 {
1171 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
1172 }
1173 if(!$_GET['objective_id'])
1174 {
1175 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
1176 $this->ctrl->redirect($this,'listObjectives');
1177 }
1178
1179 $this->__initQuestionObject((int) $_GET['objective_id']);
1180
1181 // Delete unchecked
1182 foreach($this->objectives_qst_obj->getFinalTestQuestions() as $question)
1183 {
1184 $id = $question['ref_id'].'_'.$question['question_id'];
1185 if(!in_array($id,$checked_questions))
1186 {
1187 $this->objectives_qst_obj->delete($question['qst_ass_id']);
1188 }
1189 }
1190 // Add checked
1191 foreach($checked_questions as $question_id)
1192 {
1193 list($test_ref_id,$qst_id) = explode('_',$question_id);
1194 $test_obj_id = $ilObjDataCache->lookupObjId($test_ref_id);
1195
1196 if($this->objectives_qst_obj->isFinalTestQuestion($qst_id))
1197 {
1198 continue;
1199 }
1200
1201 $this->objectives_qst_obj->setTestStatus(ilCourseObjectiveQuestion::TYPE_FINAL_TEST);
1202 $this->objectives_qst_obj->setTestRefId($test_ref_id);
1203 $this->objectives_qst_obj->setTestObjId($test_obj_id);
1204 $this->objectives_qst_obj->setQuestionId($qst_id);
1205 $this->objectives_qst_obj->add();
1206 }
1207
1208 // TODO: not nice
1209 include_once './Modules/Course/classes/class.ilCourseObjectiveQuestion.php';
1210 $this->questions = new ilCourseObjectiveQuestion((int) $_GET['objective_id']);
1211 // not required due to percentages
1212 //$this->questions->updateLimits();
1213
1214 ilUtil::sendSuccess($this->lng->txt('crs_objectives_assigned_lm'));
1215 $this->finalTestLimits();
1216 }
finalTestLimits()
self assessment limits

References $_GET, $_POST, $ilErr, __initQuestionObject(), finalTestLimits(), ilUtil\sendFailure(), ilUtil\sendSuccess(), and ilCourseObjectiveQuestion\TYPE_FINAL_TEST.

+ Here is the call graph for this function:

◆ updateFinalTestLimits()

ilCourseObjectivesGUI::updateFinalTestLimits ( )
protected

update self assessment limits

@access protected

Parameters

return

Definition at line 1286 of file class.ilCourseObjectivesGUI.php.

1287 {
1288 global $ilAccess,$ilErr,$ilObjDataCache;
1289
1290 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
1291 {
1292 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
1293 }
1294 if(!$_GET['objective_id'])
1295 {
1296 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
1297 $this->ctrl->redirect($this,'listObjectives');
1298 }
1299
1300 $this->__initQuestionObject((int) $_GET['objective_id']);
1301
1302 if((int) $_POST['limit'] < 1 or (int) $_POST['limit'] > 100)
1303 {
1304 ilUtil::sendFailure($this->lng->txt('crs_objective_err_limit'));
1305 $this->finalTestLimits();
1306 return false;
1307 }
1308
1309 foreach($this->objectives_qst_obj->getFinalTests() as $test)
1310 {
1311 $this->objectives_qst_obj->setTestStatus(ilCourseObjectiveQuestion::TYPE_FINAL_TEST);
1312 $this->objectives_qst_obj->setTestSuggestedLimit((int) $_POST['limit']);
1313 $this->objectives_qst_obj->updateTest($test['test_objective_id']);
1314 }
1315
1316 if($_SESSION['objective_mode'] != self::MODE_CREATE)
1317 {
1318 ilUtil::sendSuccess($this->lng->txt('settings_saved'), TRUE);
1319 }
1320 else
1321 {
1322 ilUtil::sendSuccess($this->lng->txt('crs_added_objective'),TRUE);
1323 }
1324 $this->ctrl->returnToParent($this);
1325 }

References $_GET, $_POST, $_SESSION, $ilErr, $test, __initQuestionObject(), finalTestLimits(), ilUtil\sendFailure(), ilUtil\sendSuccess(), and ilCourseObjectiveQuestion\TYPE_FINAL_TEST.

+ Here is the call graph for this function:

◆ updateMaterialAssignment()

ilCourseObjectivesGUI::updateMaterialAssignment ( )
protected

update material assignment

@access protected

Parameters

return

Definition at line 628 of file class.ilCourseObjectivesGUI.php.

629 {
630 global $ilAccess,$ilErr,$ilObjDataCache;
631
632 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
633 {
634 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
635 }
636 if(!$_GET['objective_id'])
637 {
638 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
639 $this->ctrl->redirect($this,'listObjectives');
640 }
641
642 $this->__initLMObject((int) $_GET['objective_id']);
643 $this->objectives_lm_obj->deleteAll();
644
645 if(is_array($_POST['materials']))
646 {
647 foreach($_POST['materials'] as $node_id)
648 {
649 $obj_id = $ilObjDataCache->lookupObjId($node_id);
650 $type = $ilObjDataCache->lookupType($obj_id);
651
652 $this->objectives_lm_obj->setLMRefId($node_id);
653 $this->objectives_lm_obj->setLMObjId($obj_id);
654 $this->objectives_lm_obj->setType($type);
655 $this->objectives_lm_obj->add();
656 }
657 }
658 if(is_array($_POST['chapters']))
659 {
660 foreach($_POST['chapters'] as $chapter)
661 {
662 include_once('./Modules/LearningModule/classes/class.ilLMObject.php');
663
664 list($ref_id,$chapter_id) = explode('_',$chapter);
665
666 $this->objectives_lm_obj->setLMRefId($ref_id);
667 $this->objectives_lm_obj->setLMObjId($chapter_id);
668 $this->objectives_lm_obj->setType(ilLMObject::_lookupType($chapter_id));
669 $this->objectives_lm_obj->add();
670 }
671 }
672 ilUtil::sendSuccess($this->lng->txt('crs_objectives_assigned_lm'));
673
674
675 if($_SESSION['objective_mode'] != self::MODE_CREATE)
676 {
677 ilUtil::sendSuccess($this->lng->txt('crs_objectives_assigned_lm'),true);
678 $this->ctrl->returnToParent($this);
679 }
680
681 // begin-patch lok
682 if($this->getSettings()->worksWithInitialTest())
683 {
685 }
686 else
687 {
688 $this->finalTestAssignment();
689 }
690 // end-patch lok
691 }
finalTestAssignment()
final test assignment
selfAssessmentAssignment()
self assessment assignemnt
static _lookupType($a_obj_id, $a_lm_id=0)
Lookup type.

References $_GET, $_POST, $_SESSION, $ilErr, $ref_id, __initLMObject(), ilLMObject\_lookupType(), finalTestAssignment(), getSettings(), selfAssessmentAssignment(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

+ Here is the call graph for this function:

◆ updateSelfAssessmentAssignment()

ilCourseObjectivesGUI::updateSelfAssessmentAssignment ( )
protected

update self assessment assignment

@access protected

Parameters

return

Definition at line 751 of file class.ilCourseObjectivesGUI.php.

752 {
753 global $ilAccess,$ilErr,$ilObjDataCache;
754
755 $checked_questions = $_POST['questions'] ? $_POST['questions'] : array();
756
757
758 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
759 {
760 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
761 }
762 if(!$_GET['objective_id'])
763 {
764 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
765 $this->ctrl->redirect($this,'listObjectives');
766 }
767
768 $this->__initQuestionObject((int) $_GET['objective_id']);
769
770 // Delete unchecked
771 foreach($this->objectives_qst_obj->getSelfAssessmentQuestions() as $question)
772 {
773 $id = $question['ref_id'].'_'.$question['question_id'];
774 if(!in_array($id,$checked_questions))
775 {
776 $this->objectives_qst_obj->delete($question['qst_ass_id']);
777 }
778 }
779 // Add checked
780 foreach($checked_questions as $question_id)
781 {
782 list($test_ref_id,$qst_id) = explode('_',$question_id);
783 $test_obj_id = $ilObjDataCache->lookupObjId($test_ref_id);
784
785 if($this->objectives_qst_obj->isSelfAssessmentQuestion($qst_id))
786 {
787 continue;
788 }
789 $this->objectives_qst_obj->setTestStatus(ilCourseObjectiveQuestion::TYPE_SELF_ASSESSMENT);
790 $this->objectives_qst_obj->setTestRefId($test_ref_id);
791 $this->objectives_qst_obj->setTestObjId($test_obj_id);
792 $this->objectives_qst_obj->setQuestionId($qst_id);
793 $this->objectives_qst_obj->add();
794 }
795
796 // TODO: not nice
797 include_once './Modules/Course/classes/class.ilCourseObjectiveQuestion.php';
798 $this->questions = new ilCourseObjectiveQuestion((int) $_GET['objective_id']);
799 // not required due to percentages
800 //$this->questions->updateLimits();
801
802 if($checked_questions)
803 {
804 ilUtil::sendSuccess($this->lng->txt('crs_objectives_assigned_lm'));
805 $this->selfAssessmentLimits();
806 return true;
807 }
808 else
809 {
810 switch($_SESSION['objective_mode'])
811 {
813 $this->finalTestAssignment();
814 return true;
815
818 ilUtil::sendSuccess($this->lng->txt('crs_objectives_assigned_lm'));
819 return true;
820 }
821 }
822 }
selfAssessmentLimits()
self assessment limits

References $_GET, $_POST, $_SESSION, $ilErr, __initQuestionObject(), finalTestAssignment(), MODE_CREATE, MODE_UPDATE, selfAssessmentAssignment(), selfAssessmentLimits(), ilUtil\sendFailure(), ilUtil\sendSuccess(), and ilCourseObjectiveQuestion\TYPE_SELF_ASSESSMENT.

+ Here is the call graph for this function:

◆ updateSelfAssessmentLimits()

ilCourseObjectivesGUI::updateSelfAssessmentLimits ( )
protected

update self assessment limits

@access protected

Parameters

return

Definition at line 866 of file class.ilCourseObjectivesGUI.php.

867 {
868 global $ilAccess,$ilErr,$ilObjDataCache;
869
870 if(!$ilAccess->checkAccess('write','',$this->course_obj->getRefId()))
871 {
872 $ilErr->raiseError($this->lng->txt('permission_denied'),$ilErr->WARNING);
873 }
874 if(!$_GET['objective_id'])
875 {
876 ilUtil::sendFailure($this->lng->txt('crs_no_objective_selected'),true);
877 $this->ctrl->redirect($this,'listObjectives');
878 }
879
880 $this->__initQuestionObject((int) $_GET['objective_id']);
881
882 if((int) $_POST['limit'] < 1 or (int) $_POST['limit'] > 100)
883 {
884 ilUtil::sendFailure($this->lng->txt('crs_objective_err_limit'));
885 $this->selfAssessmentLimits();
886 return false;
887 }
888
889 foreach($this->objectives_qst_obj->getSelfAssessmentTests() as $test)
890 {
891 $this->objectives_qst_obj->setTestStatus(ilCourseObjectiveQuestion::TYPE_SELF_ASSESSMENT);
892 $this->objectives_qst_obj->setTestSuggestedLimit((int) $_POST['limit']);
893 $this->objectives_qst_obj->updateTest($test['test_objective_id']);
894 }
895
896 ilUtil::sendSuccess($this->lng->txt('settings_saved'),true);
897 $this->ctrl->returnToParent($this);
898 }

References $_GET, $_POST, $ilErr, $test, __initQuestionObject(), selfAssessmentLimits(), ilUtil\sendFailure(), ilUtil\sendSuccess(), and ilCourseObjectiveQuestion\TYPE_SELF_ASSESSMENT.

+ Here is the call graph for this function:

Field Documentation

◆ $course_id

ilCourseObjectivesGUI::$course_id

Definition at line 50 of file class.ilCourseObjectivesGUI.php.

◆ $course_obj

ilCourseObjectivesGUI::$course_obj

Definition at line 49 of file class.ilCourseObjectivesGUI.php.

◆ $ctrl

ilCourseObjectivesGUI::$ctrl

Definition at line 43 of file class.ilCourseObjectivesGUI.php.

◆ $ilErr

◆ $ilias

ilCourseObjectivesGUI::$ilias

Definition at line 44 of file class.ilCourseObjectivesGUI.php.

Referenced by __construct().

◆ $lng

ilCourseObjectivesGUI::$lng

Definition at line 46 of file class.ilCourseObjectivesGUI.php.

Referenced by __construct().

◆ $settings

ilCourseObjectivesGUI::$settings
protected

Definition at line 53 of file class.ilCourseObjectivesGUI.php.

Referenced by getSettings().

◆ $test_type

ilCourseObjectivesGUI::$test_type = 0
protected

Definition at line 54 of file class.ilCourseObjectivesGUI.php.

Referenced by isRandomTestType().

◆ $tpl

◆ MODE_CREATE

const ilCourseObjectivesGUI::MODE_CREATE = 1

Definition at line 39 of file class.ilCourseObjectivesGUI.php.

Referenced by create(), and updateSelfAssessmentAssignment().

◆ MODE_UNDEFINED

const ilCourseObjectivesGUI::MODE_UNDEFINED = 0

◆ MODE_UPDATE

const ilCourseObjectivesGUI::MODE_UPDATE = 2

Definition at line 40 of file class.ilCourseObjectivesGUI.php.

Referenced by edit(), and updateSelfAssessmentAssignment().


The documentation for this class was generated from the following file: