121 {
123
124
125 include_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
127 $form->setFormAction(
$DIC->ctrl()->getFormAction($this));
128
130 $ne->setValue(
$DIC->language()->txt(
'type_' . $this->object->getContentType()));
131 $form->addItem($ne);
132
134 $ne->setValue($this->object->getLrsType()->getTitle());
135 $form->addItem($ne);
136
138 $item->setSize(40);
139 $item->setMaxLength(128);
140 $item->setRequired(true);
141 $item->setInfo(
$DIC->language()->txt(
'title_info'));
142 $item->setValue($this->object->getTitle());
143 $form->addItem($item);
144
146 $item->setInfo(
$DIC->language()->txt(
'description_info'));
147 $item->setRows(2);
148 $item->setCols(80);
149 $item->setValue($this->object->getDescription());
150 $form->addItem($item);
151
153 $item->setRequired(true);
154 $item->setSize(40);
155 $item->setMaxLength(128);
156
157 $item->setInfo(
$DIC->language()->txt(
'activity_id_info'));
158 $item->setValue($this->object->getActivityId());
159 $form->addItem($item);
160
162 $item->setInfo(
$DIC->language()->txt(
"online_info"));
163 $item->setValue("1");
164 if (!$this->object->getOfflineStatus()) {
165 $item->setChecked(true);
166 }
167 $form->addItem($item);
168
169 if (!$this->object->isSourceTypeExternal()) {
171 $item->setTitle(
$DIC->language()->txt(
"launch_options"));
172 $form->addItem($item);
173
174 if ($this->object->isSourceTypeRemote()) {
176 $item->setSize(40);
177 $item->setMaxLength(128);
178 $item->setRequired(true);
179 $item->setInfo(
$DIC->language()->txt(
'launch_url_info'));
180 $item->setValue($this->object->getLaunchUrl());
181 $form->addItem($item);
182 }
183
186 $item->setInfo(
$DIC->language()->txt(
"use_fetch_info"));
187 $item->setValue("1");
188
189 if ($this->object->isAuthFetchUrlEnabled()) {
190 $item->setChecked(true);
191 }
192 $form->addItem($item);
193 }
194
196 $display->setRequired(true);
197 $display->setValue($this->object->getLaunchMethod());
199 $optOwnWindow->setInfo(
$DIC->language()->txt(
'conf_own_window_info'));
200 $display->addOption($optOwnWindow);
202 $optAnyWindow->setInfo(
$DIC->language()->txt(
'conf_new_window_info'));
203 $display->addOption($optAnyWindow);
204 $form->addItem($display);
205
207 $launchMode->setRequired(true);
208 $launchMode->setValue($this->object->getLaunchMode());
210 $optNormal->setInfo(
$DIC->language()->txt(
'conf_launch_mode_normal_info'));
211 $launchMode->addOption($optNormal);
213 $optBrowse->setInfo(
$DIC->language()->txt(
'conf_launch_mode_browse_info'));
214 $launchMode->addOption($optBrowse);
216 $optReview->setInfo(
$DIC->language()->txt(
'conf_launch_mode_review_info'));
217 $launchMode->addOption($optReview);
218 $form->addItem($launchMode);
219 }
220
221 $lpDeterioration =
new ilCheckboxInputGUI(
$DIC->language()->txt(
'conf_keep_lp'),
'avoid_lp_deterioration');
222 $lpDeterioration->setInfo(
$DIC->language()->txt(
'conf_keep_lp_info'));
223 if ($this->object->isKeepLpStatusEnabled()) {
224 $lpDeterioration->setChecked(true);
225 }
226 if (!$this->object->isSourceTypeExternal()) {
227 $optNormal->addSubItem($lpDeterioration);
228 } else {
229 $form->addItem($lpDeterioration);
230 }
231
234 $switchMode->setInfo(
$DIC->language()->txt(
"conf_switch_to_review_info"));
235 if ($this->object->isSwitchToReviewEnabled()) {
236 $switchMode->setChecked(true);
237 }
238 $optNormal->addSubItem($switchMode);
239
240 $masteryScore =
new ilNumberInputGUI(
$DIC->language()->txt(
'conf_mastery_score'),
'mastery_score');
241 $masteryScore->setInfo(
$DIC->language()->txt(
'conf_mastery_score_info'));
242 $masteryScore->setSuffix('%');
243 $masteryScore->allowDecimals(true);
244 $masteryScore->setDecimals(2);
245 $masteryScore->setMinvalueShouldBeGreater(false);
246 $masteryScore->setMinValue(0);
247 $masteryScore->setMaxvalueShouldBeLess(false);
248 $masteryScore->setMaxValue(100);
249 $masteryScore->setSize(4);
250 if (empty($this->object->getMasteryScore())) {
252 }
253 $masteryScore->setValue($this->object->getMasteryScorePercent());
254 $optNormal->addSubItem($masteryScore);
255 }
256
257 if (!$this->object->isSourceTypeExternal()) {
260 $sectionHeader->setTitle(
$DIC->language()->txt(
'sect_learning_progress_options'));
261 $form->addItem($sectionHeader);
263 $bypassProxy->setInfo(
$DIC->language()->txt(
'conf_bypass_proxy_info'));
264 $bypassProxy->setValue($this->object->isBypassProxyEnabled());
265 $opt1 =
new ilRadioOption(
$DIC->language()->txt(
'conf_bypass_proxy_disabled'), 0);
266 $bypassProxy->addOption($opt1);
267 $opt2 =
new ilRadioOption(
$DIC->language()->txt(
'conf_bypass_proxy_enabled'), 1);
268 $bypassProxy->addOption($opt2);
269 $form->addItem($bypassProxy);
270 if ($this->object->getLrsType()->isBypassProxyEnabled()) {
271 $bypassProxy->setDisabled(true);
272 }
273 }
274
276 $item->setTitle(
$DIC->language()->txt(
"privacy_options"));
277 $form->addItem($item);
278
281 $DIC->language()->txt(
'conf_privacy_ident_il_uuid_user_id'),
283 );
284 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_il_uuid_user_id_info'));
285 $userIdent->addOption($op);
287 $DIC->language()->txt(
'conf_privacy_ident_il_uuid_login'),
289 );
290 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_il_uuid_login_info'));
291 $userIdent->addOption($op);
293 $DIC->language()->txt(
'conf_privacy_ident_il_uuid_ext_account'),
295 );
296 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_il_uuid_ext_account_info'));
297 $userIdent->addOption($op);
299 $DIC->language()->txt(
'conf_privacy_ident_il_uuid_sha256'),
301 );
302 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_il_uuid_sha256_info'));
303 $userIdent->addOption($op);
305 $DIC->language()->txt(
'conf_privacy_ident_il_uuid_sha256url'),
307 );
308 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_il_uuid_sha256url_info'));
309 $userIdent->addOption($op);
311 $DIC->language()->txt(
'conf_privacy_ident_il_uuid_random'),
313 );
314 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_il_uuid_random_info'));
315 $userIdent->addOption($op);
317 $DIC->language()->txt(
'conf_privacy_ident_real_email'),
319 );
320 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_ident_real_email_info'));
321 $userIdent->addOption($op);
322 $userIdent->setValue($this->object->getPrivacyIdent());
323 $userIdent->setInfo(
325 );
326 $userIdent->setRequired(false);
327 $form->addItem($userIdent);
328
331 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_name_none_info'));
332 $userName->addOption($op);
334 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_name_firstname_info'));
335 $userName->addOption($op);
337 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_name_lastname_info'));
338 $userName->addOption($op);
340 $op->setInfo(
$DIC->language()->txt(
'conf_privacy_name_fullname_info'));
341 $userName->addOption($op);
342 $userName->setValue($this->object->getPrivacyName());
343 $userName->setInfo(
$DIC->language()->txt(
'conf_privacy_name_info'));
344 $userName->setRequired(false);
345 $form->addItem($userName);
346
347 if ($this->object->getLrsType()->getForcePrivacySettings()) {
348 $userIdent->setDisabled(true);
349 $userName->setDisabled(true);
350 }
351
353 $item->setInfo(
$DIC->language()->txt(
'only_moveon_info'));
354 $item->setChecked($this->object->getOnlyMoveon());
355
357 $subitem->setInfo(
$DIC->language()->txt(
'achieved_info'));
358 $subitem->setChecked($this->object->getAchieved());
359 if ($this->object->getLrsType()->getForcePrivacySettings()) {
360 $subitem->setDisabled(true);
361 }
362 $item->addSubItem($subitem);
363
365 $subitem->setInfo(
$DIC->language()->txt(
'answered_info'));
366 $subitem->setChecked($this->object->getAnswered());
367 if ($this->object->getLrsType()->getForcePrivacySettings()) {
368 $subitem->setDisabled(true);
369 }
370 $item->addSubItem($subitem);
371
373 $subitem->setInfo(
$DIC->language()->txt(
'completed_info'));
374 $subitem->setChecked($this->object->getCompleted());
375 if ($this->object->getLrsType()->getForcePrivacySettings()) {
376 $subitem->setDisabled(true);
377 }
378 $item->addSubItem($subitem);
379
381 $subitem->setInfo(
$DIC->language()->txt(
'failed_info'));
382 $subitem->setChecked($this->object->getFailed());
383 if ($this->object->getLrsType()->getForcePrivacySettings()) {
384 $subitem->setDisabled(true);
385 }
386 $item->addSubItem($subitem);
387
389 $subitem->setInfo(
$DIC->language()->txt(
'initialized_info'));
390 $subitem->setChecked($this->object->getInitialized());
391 if ($this->object->getLrsType()->getForcePrivacySettings()) {
392 $subitem->setDisabled(true);
393 }
394 $item->addSubItem($subitem);
395
397 $subitem->setInfo(
$DIC->language()->txt(
'passed_info'));
398 $subitem->setChecked($this->object->getPassed());
399 if ($this->object->getLrsType()->getForcePrivacySettings()) {
400 $subitem->setDisabled(true);
401 }
402 $item->addSubItem($subitem);
403
405 $subitem->setInfo(
$DIC->language()->txt(
'progressed_info'));
406 $subitem->setChecked($this->object->getProgressed());
407 if ($this->object->getLrsType()->getForcePrivacySettings()) {
408 $subitem->setDisabled(true);
409 }
410 $item->addSubItem($subitem);
413 $subitem->setInfo(
$DIC->language()->txt(
'satisfied_info'));
414 $subitem->setChecked($this->object->getSatisfied());
415 if ($this->object->getLrsType()->getForcePrivacySettings()) {
416 $subitem->setDisabled(true);
417 }
418 $item->addSubItem($subitem);
419
421 $subitem->setInfo(
$DIC->language()->txt(
'terminated_info'));
422 $subitem->setChecked($this->object->getTerminated());
423 if ($this->object->getLrsType()->getForcePrivacySettings()) {
424 $subitem->setDisabled(true);
425 }
426 $item->addSubItem($subitem);
427 }
428 if ($this->object->getLrsType()->getForcePrivacySettings()) {
429 $item->setDisabled(true);
430 }
431 $form->addItem($item);
432
434 $item->setInfo(
$DIC->language()->txt(
'hide_data_info'));
435 $item->setChecked($this->object->getHideData());
436
438 $subitem->setInfo(
$DIC->language()->txt(
'timestamp_info'));
439 $subitem->setChecked($this->object->getTimestamp());
440 if ($this->object->getLrsType()->getForcePrivacySettings()) {
441 $subitem->setDisabled(true);
442 }
443 $item->addSubItem($subitem);
444
446 $subitem->setInfo(
$DIC->language()->txt(
'duration_info'));
447 $subitem->setChecked($this->object->getDuration());
448 if ($this->object->getLrsType()->getForcePrivacySettings()) {
449 $subitem->setDisabled(true);
450 }
451 $item->addSubItem($subitem);
452
453 if ($this->object->getLrsType()->getForcePrivacySettings()) {
454 $item->setDisabled(true);
455 }
456 $form->addItem($item);
457
459 $item->setInfo(
$DIC->language()->txt(
'no_substatements_info'));
460 $item->setChecked($this->object->getNoSubstatements());
461 if ($this->object->getLrsType()->getForcePrivacySettings()) {
462 $item->setDisabled(true);
463 }
464 $form->addItem($item);
465 }
466
468 $item->setTitle(
$DIC->language()->txt(
"log_options"));
469 $form->addItem($item);
470
472 $item->setInfo(
$DIC->language()->txt(
"show_debug_info"));
473 $item->setValue("1");
474 if ($this->object->isStatementsReportEnabled()) {
475 $item->setChecked(true);
476 }
477 $form->addItem($item);
478
480 $highscore->setValue(1);
481 $highscore->setChecked($this->object->getHighscoreEnabled());
482 $highscore->setInfo(
$DIC->language()->txt(
"highscore_description"));
483 $form->addItem($highscore);
485 $highscore_tables->setRequired(true);
486 $highscore_tables->setValue($this->object->getHighscoreMode());
488 $highscore_table_own->setInfo(
$DIC->language()->txt(
'highscore_own_table_description'));
489 $highscore_tables->addOption($highscore_table_own);
491 $highscore_table_other->setInfo(
$DIC->language()->txt(
'highscore_top_table_description'));
492 $highscore_tables->addOption($highscore_table_other);
494 $highscore_table_other->setInfo(
$DIC->language()->txt(
'highscore_all_tables_description'));
495 $highscore_tables->addOption($highscore_table_other);
496 $highscore->addSubItem($highscore_tables);
497 $highscore_top_num =
new ilNumberInputGUI(
$DIC->language()->txt(
"highscore_top_num"),
"highscore_top_num");
498 $highscore_top_num->setSize(4);
499 $highscore_top_num->setRequired(true);
500 $highscore_top_num->setMinValue(1);
501 $highscore_top_num->setSuffix(
$DIC->language()->txt(
"highscore_top_num_unit"));
502 $highscore_top_num->setValue($this->object->getHighscoreTopNum(null));
503 $highscore_top_num->setInfo(
$DIC->language()->txt(
"highscore_top_num_description"));
504 $highscore->addSubItem($highscore_top_num);
505 $highscore_achieved_ts =
new ilCheckboxInputGUI(
$DIC->language()->txt(
"highscore_achieved_ts"),
"highscore_achieved_ts");
506 $highscore_achieved_ts->setValue(1);
507 $highscore_achieved_ts->setChecked($this->object->getHighscoreAchievedTS());
508 $highscore_achieved_ts->setInfo(
$DIC->language()->txt(
"highscore_achieved_ts_description"));
509 $highscore->addSubItem($highscore_achieved_ts);
510 $highscore_percentage =
new ilCheckboxInputGUI(
$DIC->language()->txt(
"highscore_percentage"),
"highscore_percentage");
511 $highscore_percentage->setValue(1);
512 $highscore_percentage->setChecked($this->object->getHighscorePercentage());
513 $highscore_percentage->setInfo(
$DIC->language()->txt(
"highscore_percentage_description"));
514 $highscore->addSubItem($highscore_percentage);
516 $highscore_wtime->setValue(1);
517 $highscore_wtime->setChecked($this->object->getHighscoreWTime());
518 $highscore_wtime->setInfo(
$DIC->language()->txt(
"highscore_wtime_description"));
519 $highscore->addSubItem($highscore_wtime);
520
521
522 $form->setTitle(
$DIC->language()->txt(
'settings'));
523 $form->addCommandButton(self::CMD_SAVE,
$DIC->language()->txt(
"save"));
524 $form->addCommandButton(self::CMD_SHOW,
$DIC->language()->txt(
"cancel"));
525
526 return $form;
527 }
const PRIVACY_NAME_FULLNAME
const PRIVACY_IDENT_IL_UUID_SHA256
const PRIVACY_NAME_FIRSTNAME
const PRIVACY_IDENT_IL_UUID_LOGIN
const PRIVACY_IDENT_IL_UUID_USER_ID
const PRIVACY_NAME_LASTNAME
const PRIVACY_IDENT_REAL_EMAIL
const PRIVACY_IDENT_IL_UUID_SHA256URL
const PRIVACY_IDENT_IL_UUID_EXT_ACCOUNT
const PRIVACY_IDENT_IL_UUID_RANDOM
This class represents a non editable value in a property form.
const LAUNCH_METHOD_NEW_WIN
const HIGHSCORE_SHOW_ALL_TABLES
const HIGHSCORE_SHOW_TOP_TABLE
const HIGHSCORE_SHOW_OWN_TABLE
const LAUNCH_METHOD_OWN_WIN
This class represents an option in a radio group.
This class represents a text area property in a property form.
This class represents a text property in a property form.