20 require_once
'Services/Object/classes/class.ilObjectGUI.php';
21 require_once
'Modules/IndividualAssessment/classes/class.ilIndividualAssessmentLP.php';
22 require_once
'Services/Tracking/classes/class.ilObjUserTracking.php';
32 public function __construct($a_data, $a_id = 0, $a_call_by_reference =
true, $a_prepare_output =
true) {
37 $this->tpl = $DIC[
'tpl'];
38 $this->ctrl = $DIC[
'ilCtrl'];
39 $this->usr = $DIC[
'ilUser'];
40 $this->
ilias = $DIC[
'ilias'];
41 $this->lng = $DIC[
'lng'];
42 $this->ilAccess = $DIC[
'ilAccess'];
43 $this->lng->loadLanguageModule(
'iass');
44 $this->tpl->getStandardTemplate();
45 $this->locator = $DIC[
'ilLocator'];
46 $this->g_help = $ilHelp;
48 parent::__construct($a_data, $a_id, $a_call_by_reference, $a_prepare_output);
53 if (is_object($this->
object)) {
54 $this->locator->addItem($this->
object->getTitle(), $this->ctrl->getLinkTarget($this,
"view"),
"", $this->
object->getRefId());
59 $next_class = $this->ctrl->getNextClass($this);
60 $cmd = $this->ctrl->getCmd();
64 case 'ilpermissiongui':
65 $this->tabs_gui->setTabActive(self::TAB_PERMISSION);
66 require_once
'Services/AccessControl/classes/class.ilPermissionGUI.php';
68 $this->ctrl->forwardCommand($ilPermissionGUI);
70 case 'ilindividualassessmentsettingsgui':
71 $this->tabs_gui->setTabActive(self::TAB_SETTINGS);
72 require_once
'Modules/IndividualAssessment/classes/class.ilIndividualAssessmentSettingsGUI.php';
74 $this->ctrl->forwardCommand($gui);
76 case 'ilindividualassessmentmembersgui':
79 case 'ilinfoscreengui':
80 $this->tabs_gui->setTabActive(self::TAB_INFO);
81 require_once
'Services/InfoScreen/classes/class.ilInfoScreenGUI.php';
83 $this->ctrl->forwardCommand(
$info);
85 case 'illearningprogressgui':
86 if(!$this->
object->access_handler->checkAccessToObj($this->object,
'read')) {
89 require_once
'Services/Tracking/classes/class.ilLearningProgressGUI.php';
90 $this->tabs_gui->setTabActive(self::TAB_LP);
95 $this->ctrl->forwardCommand($learning_progress);
97 case "ilcommonactiondispatchergui":
98 include_once(
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
100 $this->ctrl->forwardCommand($gui);
103 include_once(
"./Services/Export/classes/class.ilExportGUI.php");
104 $this->tabs_gui->setTabActive(self::TAB_EXPORT);
106 $exp_gui->addFormat(
"xml");
107 $ret = $this->ctrl->forwardCommand($exp_gui);
112 if($this->
object->access_handler->checkAccessToObj($this->object,
'edit_members')) {
113 $this->ctrl->setCmdClass(
'ilIndividualassessmentmembersgui');
128 $this->tabs_gui->setTabActive(self::TAB_INFO);
129 require_once
'Services/InfoScreen/classes/class.ilInfoScreenGUI.php';
130 $this->ctrl->setCmd(
'showSummary');
131 $this->ctrl->setCmdClass(
'ilinfoscreengui');
133 $this->ctrl->forwardCommand(
$info);
137 $this->tabs_gui->setTabActive(self::TAB_MEMBERS);
138 require_once
'Modules/IndividualAssessment/classes/class.ilIndividualAssessmentMembersGUI.php';
140 $this->ctrl->forwardCommand($gui);
147 if($this->
object->loadMembers()->userAllreadyMember($this->usr)) {
156 $member = $this->
object->membersStorage()->loadMember($this->
object,$this->usr);
157 $info->
addSection($this->lng->txt(
'grading_info'));
158 if( $member->finalized()) {
161 if($member->notify() && $member->finalized()) {
162 $info->
addProperty($this->lng->txt(
'grading_record'), nl2br($member->record()));
168 $content = $this->
object->getSettings()->content();
169 if($content !== null && $content !==
'') {
170 $info->
addSection($this->lng->txt(
'general'));
171 $info->
addProperty($this->lng->txt(
'content'),$content);
177 $info_settings = $this->
object->getInfoSettings();
179 $info->
addSection($this->lng->txt(
'iass_contact_info'));
180 $info->
addProperty($this->lng->txt(
'iass_contact'),$info_settings->contact());
181 $info->
addProperty($this->lng->txt(
'iass_responsibility'),$info_settings->responsibility());
182 $info->
addProperty($this->lng->txt(
'iass_phone'),$info_settings->phone());
183 $info->
addProperty($this->lng->txt(
'iass_mails'),$info_settings->mails());
184 $info->
addProperty($this->lng->txt(
'iass_consultation_hours'),$info_settings->consultationHours());
190 $val = $info_settings->
contact();
191 if($val !== null && $val !==
'') {
195 if($val !== null && $val !==
'') {
198 $val = $info_settings->
phone();
199 if($val !== null && $val !==
'') {
202 $val = $info_settings->
mails();
203 if($val !== null && $val !==
'') {
207 if($val !== null && $val !==
'') {
214 $access_handler = $this->
object->accessHandler();
215 if($access_handler->checkAccessToObj($this->object,
'read')) {
216 $this->tabs_gui->addTab( self::TAB_INFO
217 , $this->lng->txt(
'info_short')
221 if($access_handler->checkAccessToObj($this->object,
'write')) {
222 $this->tabs_gui->addTab( self::TAB_SETTINGS
223 , $this->lng->txt(
'settings')
227 if($access_handler->checkAccessToObj($this->object,
'edit_members')
228 || $access_handler->checkAccessToObj($this->
object,
'edit_learning_progress')
229 || $access_handler->checkAccessToObj($this->
object,
'read_learning_progress') ) {
230 $this->tabs_gui->addTab( self::TAB_MEMBERS
231 , $this->lng->txt(
'il_iass_members')
235 if(($access_handler->checkAccessToObj($this->object,
'read_learning_progress')
236 || $access_handler->checkAccessToObj($this->
object,
'edit_learning_progress')
237 || ($this->
object->loadMembers()->userAllreadyMember($this->usr)
238 && $this->
object->isActiveLP()))
240 $this->tabs_gui->addTab(self::TAB_LP
241 , $this->lng->txt(
'learning_progress')
242 , $this->ctrl->getLinkTargetByClass(
'illearningprogressgui')
246 if($access_handler->checkAccessToObj($this->object,
'write'))
248 $this->tabs_gui->addTarget(
250 $this->ctrl->getLinkTargetByClass(
'ilexportgui',
''),
256 if($access_handler->checkAccessToObj($this->object,
'edit_permission')) {
257 $this->tabs_gui->addTarget(self::TAB_PERMISSION
258 , $this->ctrl->getLinkTargetByClass(
'ilpermissiongui',
'perm')
267 if ($a_cmd ==
'settings') {
268 return $this->ctrl->getLinkTargetByClass(
'ilindividualassessmentsettingsgui',
'edit');
270 if ($a_cmd ==
'info') {
271 return $this->ctrl->getLinkTarget($this,
'view');
273 if ($a_cmd ==
'members') {
274 return $this->ctrl->getLinkTargetByClass(
'ilindividualassessmentmembersgui',
'view');
276 return $this->ctrl->getLinkTarget($this, $a_cmd);
285 $DIC[
'ilias']->raiseError($DIC[
'lng']->txt(
"msg_no_perm_read"), $DIC[
'ilias']->error_obj->WARNING);
288 public static function _goto($a_target, $a_add =
'') {
290 if ($DIC[
'ilAccess']->checkAccess(
'read',
'', $a_target)) {
298 return $this->lng->txt(
'iass_status_pending');
301 return $this->lng->txt(
'iass_status_completed');
304 return $this->lng->txt(
'iass_status_failed');
311 $this->ctrl->setParameter($this,
"ref_id", $a_new_object->
getRefId());
312 ilUtil::redirect($this->ctrl->getLinkTargetByClass(
'ilIndividualassessmentsettingsgui',
'edit',
'',
false,
false));
317 $access_handler = $this->
object->accessHandler();
318 if($access_handler->checkAccessToObj($this->object,
'read')) {
319 $link = $this->ctrl->getLinkTargetByClass(
"ilrepositorygui",
"frameset");
327 $this->g_help->setScreenIdComponent($component);
328 $this->g_help->setScreenId($id);
329 $this->g_help->setSubScreenId($sub_id);
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
setScreenId($component, $id, $sub_id)
Class ilObject Basic functions for all objects.
A simple carrier for iass info-settings.
__construct($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
For the purpose of streamlining the grading and learning-process status definition outside of tests...
shouldShowContactInfo(ilIndividualAssessmentInfoSettings $info_settings)
addSection($a_title)
add a new section
addMemberDataToInfo(ilInfoScreenGUI $info)
getEntryForStatus($a_status)
Export User Interface Class.
prepareOutput($a_show_subobjects=true)
prepare output
static _enabledLearningProgress()
check wether learing progress is enabled or not
addContactDataToInfo(ilInfoScreenGUI $info)
addGeneralDataToInfo(ilInfoScreenGUI $info)
static _gotoRepositoryNode($a_ref_id, $a_cmd="frameset")
Goto repository root.
Class ilObjectGUI Basic methods of all Output classes.
redirection script todo: (a better solution should control the processing via a xml file) ...
initEditForm()
Init object edit form.
Navigation History of Repository Items.
Create styles array
The data for the language used.
Create new PHPExcel object
obj_idprivate
addProperty($a_name, $a_value, $a_link="")
add a property to current section
const LP_CONTEXT_REPOSITORY
getCreationMode()
get creation mode
getRefId()
get reference id public
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
For the purpose of streamlining the grading and learning-process status definition outside of tests...
static redirect($a_script)
http redirect to other script
addItem($a_ref_id, $a_link, $a_type, $a_title="", $a_sub_obj_id="", $a_goto_link="")
Add an item to the stack.
Class ilObjUserTrackingGUI.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
static _goto($a_target, $a_add='')
afterSave(ilObject $a_new_object)