protected function getItems($a_content_obj) { $items = ilObjCourseGrouping::_getVisibleGroupings($a_content_obj->getId()); $data = array(); foreach ($items as $grouping_id) { $tmp_obj = new ilObjCourseGrouping($grouping_id); $data[$grouping_id]['id'] = $grouping_id; $data[$grouping_id]['title'] = $tmp_obj->getTitle(); $data[$grouping_id]['unique'] = $this->lng->txt($tmp_obj->getUniqueField()); // Description if (strlen($tmp_obj->getDescription())) { $data[$grouping_id]['description'] = $tmp_obj->getDescription(); } // Assigned items $assigned_items = $tmp_obj->getAssignedItems(); foreach ($assigned_items as $condition) { $data[$grouping_id]['assigned'][] = ilObject::_lookupTitle($condition['target_obj_id']); } } $this->setData($data); }
function initForm($a_create) { include_once "Services/Form/classes/class.ilPropertyFormGUI.php"; $form = new ilPropertyFormGUI(); $form->setFormAction($this->ctrl->getFormAction($this)); $title = new ilTextInputGUI($this->lng->txt('title'), 'title'); $title->setRequired(true); $form->addItem($title); $desc = new ilTextAreaInputGUI($this->lng->txt('description'), 'description'); $form->addItem($desc); $options = array('login' => 'login', 'email' => 'email', 'matriculation' => 'matriculation'); foreach ($options as $value => $caption) { $options[$value] = $this->lng->txt($caption); } $uniq = new ilSelectInputGUI($this->lng->txt('unambiguousness'), 'unique'); $uniq->setRequired(true); $uniq->setOptions($options); $form->addItem($uniq); if ($a_create) { $form->setTitle($this->lng->txt('crs_add_grouping')); $form->addCommandButton('add', $this->lng->txt('btn_add')); } else { $grouping = new ilObjCourseGrouping($_REQUEST['obj_id']); $title->setValue($grouping->getTitle()); $desc->setValue($grouping->getDescription()); $uniq->setValue($grouping->getUniqueField()); $ass = new ilCustomInputGUI($this->lng->txt('groupings_assigned_obj_' . $this->getContentType())); $form->addItem($ass); // assignments $items = array(); foreach ($grouping->getAssignedItems() as $cond_data) { $items[] = ilObject::_lookupTitle($cond_data['target_obj_id']); } if (count($items)) { $ass->setHtml(implode("<br />", $items)); } else { $ass->setHtml($this->lng->txt('crs_grp_no_courses_assigned')); } $form->setTitle($this->lng->txt('edit_grouping')); $form->addCommandButton('update', $this->lng->txt('save')); $form->addCommandButton('selectCourse', $this->lng->txt('grouping_change_assignment')); } $form->addCommandButton('listGroupings', $this->lng->txt('cancel')); return $form; }