52 $this->lng->loadLanguageModule(
'ecs');
54 $this->tabs_gui = $ilTabs;
68 $next_class = $this->ctrl->getNextClass($this);
69 $cmd = $this->ctrl->getCmd();
93 include_once(
'Services/WebServices/ECS/classes/class.ilECSConnector.php');
94 include_once(
'Services/WebServices/ECS/classes/class.ilECSConnectorException.php');
95 include_once(
'./Services/WebServices/ECS/classes/class.ilECSEventQueueReader.php');
101 include_once(
'./Services/WebServices/ECS/classes/class.ilECSTaskScheduler.php');
132 $this->tabs_gui->setSubTabActive(
'ecs_settings');
134 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.ecs_settings.html',
'Services/WebServices/ECS');
135 $this->tpl->setVariable(
'SETTINGS_TABLE',$this->form->getHTML());
145 if(is_object($this->form))
149 include_once(
'Services/Form/classes/class.ilPropertyFormGUI.php');
152 $this->form->setFormAction($this->ctrl->getFormAction($this,
'settings'));
153 $this->form->setTitle($this->lng->txt(
'ecs_connection_settings'));
158 $this->form->addItem($ena);
160 $ser =
new ilTextInputGUI($this->lng->txt(
'ecs_server_url'),
'server');
162 $ser->setRequired(
true);
163 $this->form->addItem($ser);
167 #$pro->setOptions(array(ilECSSettings::PROTOCOL_HTTP => $this->lng->txt('http'),
168 # ilECSSettings::PROTOCOL_HTTPS => $this->lng->txt('https')));
170 $pro->setValue($this->
settings->getProtocol());
171 $pro->setRequired(
true);
172 $this->form->addItem($pro);
176 $por->setMaxLength(5);
177 $por->setValue($this->
settings->getPort());
178 $por->setRequired(
true);
179 $this->form->addItem($por);
181 $cer =
new ilTextInputGUI($this->lng->txt(
'ecs_client_cert'),
'client_cert');
183 $cer->setValue($this->
settings->getClientCertPath());
184 $cer->setRequired(
true);
185 $this->form->addItem($cer);
187 $cer =
new ilTextInputGUI($this->lng->txt(
'ecs_cert_key'),
'key_path');
189 $cer->setValue($this->
settings->getKeyPath());
190 $cer->setRequired(
true);
191 $this->form->addItem($cer);
193 $cer =
new ilTextInputGUI($this->lng->txt(
'ecs_key_password'),
'key_password');
195 $cer->setValue($this->
settings->getKeyPassword());
196 $cer->setInputType(
'password');
197 $cer->setRequired(
true);
198 $this->form->addItem($cer);
200 $cer =
new ilTextInputGUI($this->lng->txt(
'ecs_ca_cert'),
'ca_cert');
202 $cer->setValue($this->
settings->getCACertPath());
203 $cer->setRequired(
true);
204 $this->form->addItem($cer);
207 $ser->
setValue($this->
settings->getCertSerialNumber() ? $this->
settings->getCertSerialNumber() : $this->lng->txt(
'ecs_no_value'));
208 $this->form->addItem($ser);
211 $loc->setTitle($this->lng->txt(
'ecs_local_settings'));
212 $this->form->addItem($loc);
216 $pol->setShowHours(
false);
217 $pol->setShowMinutes(
true);
218 $pol->setShowSeconds(
true);
219 $pol->setSeconds($this->
settings->getPollingTimeSeconds());
220 $pol->setMinutes($this->
settings->getPollingTimeMinutes());
221 $pol->setRequired(
true);
222 $pol->setInfo($this->lng->txt(
'ecs_polling_info'));
223 $this->form->addItem($pol);
228 $tpl =
new ilTemplate(
'tpl.ecs_import_id_form.html',
true,
true,
'Services/WebServices/ECS');
229 $tpl->setVariable(
'SIZE',5);
230 $tpl->setVariable(
'MAXLENGTH',11);
231 $tpl->setVariable(
'POST_VAR',
'import_id');
232 $tpl->setVariable(
'PROPERTY_VALUE',$this->
settings->getImportId());
239 $imp->setHTML(
$tpl->get());
240 $imp->setInfo($this->lng->txt(
'ecs_import_id_info'));
241 $this->form->addItem($imp);
244 $loc->setTitle($this->lng->txt(
'ecs_remote_user_settings'));
245 $this->form->addItem($loc);
249 $role->setValue($this->
settings->getGlobalRole());
250 $role->setInfo($this->lng->txt(
'ecs_global_role_info'));
251 $role->setRequired(
true);
252 $this->form->addItem($role);
254 $duration =
new ilDurationInputGUI($this->lng->txt(
'ecs_account_duration'),
'duration');
255 $duration->
setInfo($this->lng->txt(
'ecs_account_duration_info'));
256 $duration->setMonths($this->
settings->getDuration());
257 $duration->setShowSeconds(
false);
258 $duration->setShowMinutes(
false);
259 $duration->setShowHours(
false);
260 $duration->setShowDays(
false);
261 $duration->setShowMonths(
true);
262 $duration->setRequired(
true);
263 $this->form->addItem($duration);
267 $loc->setTitle($this->lng->txt(
'ecs_notifications'));
268 $this->form->addItem($loc);
270 $rcp_user =
new ilTextInputGUI($this->lng->txt(
'ecs_user_rcp'),
'user_recipients');
272 $rcp_user->setInfo($this->lng->txt(
'ecs_user_rcp_info'));
273 $this->form->addItem($rcp_user);
275 $rcp_econ =
new ilTextInputGUI($this->lng->txt(
'ecs_econ_rcp'),
'econtent_recipients');
277 $rcp_econ->setInfo($this->lng->txt(
'ecs_econ_rcp_info'));
278 $this->form->addItem($rcp_econ);
280 $rcp_app =
new ilTextInputGUI($this->lng->txt(
'ecs_approval_rcp'),
'approval_recipients');
282 $rcp_app->setInfo($this->lng->txt(
'ecs_approval_rcp_info'));
283 $this->form->addItem($rcp_app);
285 $this->form->addCommandButton(
'saveSettings',$this->lng->txt(
'save'));
286 $this->form->addCommandButton(
'settings',$this->lng->txt(
'cancel'));
305 $this->
settings->setPollingTimeMS((
int) $_POST[
'polling'][
'mm'],(
int) $_POST[
'polling'][
'ss']);
307 $this->
settings->setGlobalRole((
int) $_POST[
'global_role']);
308 $this->
settings->setDuration((
int) $_POST[
'duration'][
'MM']);
337 $this->tabs_gui->setSubTabActive(
'ecs_communities');
339 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.ecs_communities.html',
'Services/WebServices/ECS');
341 $this->tpl->setVariable(
'FORMACTION',$this->ctrl->getFormAction($this,
'updateCommunities'));
343 $this->tpl->setVariable(
'TXT_SAVE',$this->lng->txt(
'ecs_enable_participant'));
345 include_once(
'Services/WebServices/ECS/classes/class.ilECSCommunityReader.php');
346 include_once(
'Services/WebServices/ECS/classes/class.ilECSCommunityTableGUI.php');
352 foreach(
$reader->getCommunities() as $community)
354 $this->tpl->setCurrentBlock(
'table_community');
357 $table_gui->
setTitle($community->getTitle().
' ('.$community->getDescription().
')');
358 #$table_gui->parse($community->getParticipants());
359 $table_gui->parse($community->getParticipants());
361 #$table_gui->setSelectAllCheckbox("mid");
362 $this->tpl->setVariable(
'TABLE_COMM',$table_gui->getHTML());
363 $this->tpl->parseCurrentBlock();
386 include_once(
'./Services/WebServices/ECS/classes/class.ilECSParticipantSettings.php');
389 foreach($part->getEnabledParticipants() as $mid)
391 if(!in_array($mid,$mids))
394 include_once(
'./Modules/RemoteCourse/classes/class.ilObjRemoteCourse.php');
400 $to_delete->delete();
410 include_once(
'./Services/WebServices/ECS/classes/class.ilECSEContentReader.php');
411 include_once(
'./Services/WebServices/ECS/classes/class.ilECSConnector.php');
412 include_once(
'./Services/WebServices/ECS/classes/class.ilECSExport.php');
416 $all_content =
$reader->getEContent();
419 foreach($all_content as $content)
423 $ilLog->write(__METHOD__.
': Ignoring remote EContent: '.$content->getTitle());
427 $members = array_intersect($mids,$content->getEligibleMembers());
430 $ilLog->write(__METHOD__.
': Deleting EContent: '.$content->getTitle());
432 $connector->deleteResource($content->getEContentId());
436 elseif(count($members) != count($content->getEligibleMembers()))
438 $ilLog->write(__METHOD__.
': Update eligible members for EContent: '.$content->getTitle());
439 $content->setEligibleMembers($members);
441 $connector->updateResource($content->getEContentId(),json_encode($content));
458 $part->setEnabledParticipants(
$_POST[
'mid'] ?
$_POST[
'mid'] : array());
473 include_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDFieldDefinition.php');
475 $this->tabs_gui->setSubTabActive(
'ecs_mappings');
485 $this->tpl->setContent($this->form->getHTML());
497 include_once(
'./Services/WebServices/ECS/classes/class.ilECSDataMappingSettings.php');
499 $mapping_settings->setMappings(
$_POST[
'mapping']);
500 $mapping_settings->save();
514 include_once(
'./Services/Form/classes/class.ilPropertyFormGUI.php');
516 if(is_object($this->form))
521 include_once(
'./Services/WebServices/ECS/classes/class.ilECSDataMappingSettings.php');
524 include_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDFieldDefinition.php');
532 $this->form->setTitle($this->lng->txt(
'ecs_mapping_tbl'));
533 $this->form->setFormAction($this->ctrl->getFormAction($this,
'saveMappings'));
534 $this->form->addCommandButton(
'saveMappings',$this->lng->txt(
'save'));
535 $this->form->addCommandButton(
'mappings',$this->lng->txt(
'cancel'));
538 include_once(
'./Services/WebServices/ECS/classes/class.ilECSUtils.php');
541 foreach($optional as $field_name)
543 $select =
new ilSelectInputGUI($this->lng->txt(
'ecs_field_'.$field_name),
'mapping['.$field_name.
']');
544 $select->setValue($mapping_settings->getMappingByECSName($field_name));
545 $select->setOptions($options);
546 $this->form->addItem($select);
556 $this->tabs_gui->setSubTabActive(
'ecs_category_mapping');
557 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.category_mapping.html',
'Services/WebServices/ECS');
563 $this->tpl->setVariable(
'NEW_RULE_TABLE',$this->form->getHTML());
566 $this->tpl->setVariable(
'RULES_TABLE',$html);
579 if($this->form->checkInput())
581 $this->rule->setContainerId($this->form->getInput(
'import_id'));
582 $this->rule->setMappingType($this->form->getInput(
'type'));
583 $this->rule->setMappingValue($this->form->getInput(
'mapping_value'));
584 $this->rule->setFieldName($this->form->getInput(
'field'));
585 $this->rule->setDateRangeStart($this->form->getItemByPostVar(
'dur_begin')->getDate());
586 $this->rule->setDateRangeEnd($this->form->getItemByPostVar(
'dur_end')->getDate());
588 if(
$err = $this->rule->validate())
591 $this->form->setValuesByPost();
602 $this->form->setValuesByPost();
613 if(!$_REQUEST[
'rule_id'])
620 $this->tabs_gui->setSubTabActive(
'ecs_category_mapping');
621 $this->ctrl->saveParameter($this,
'rule_id');
622 $this->
initRule((
int) $_REQUEST[
'rule_id']);
625 $this->tpl->setContent($this->form->getHTML());
635 if(!$_REQUEST[
'rule_id'])
641 $this->ctrl->saveParameter($this,
'rule_id');
642 $this->
initRule((
int) $_REQUEST[
'rule_id']);
644 if($this->form->checkInput())
646 $this->rule->setContainerId($this->form->getInput(
'import_id'));
647 $this->rule->setMappingType($this->form->getInput(
'type'));
648 $this->rule->setMappingValue($this->form->getInput(
'mapping_value'));
649 $this->rule->setFieldName($this->form->getInput(
'field'));
650 $this->rule->setDateRangeStart($this->form->getItemByPostVar(
'dur_begin')->getDate());
651 $this->rule->setDateRangeEnd($this->form->getItemByPostVar(
'dur_end')->getDate());
653 if(
$err = $this->rule->validate())
656 $this->form->setValuesByPost();
660 $this->rule->update();
662 $this->ctrl->redirect($this,
'categoryMapping');
666 $this->form->setValuesByPost();
683 foreach(
$_POST[
'rules'] as $rule_id)
685 include_once
'./Services/WebServices/ECS/classes/class.ilECSCategoryMappingRule.php';
700 include_once
'./Services/WebServices/ECS/classes/class.ilECSCategoryMapping.php';
706 include_once
'./Services/WebServices/ECS/classes/class.ilECSCategoryMappingTableGUI.php';
708 $rule_table->parse($rules);
709 return $rule_table->getHTML();
719 if(is_object($this->rule))
724 include_once
'./Services/WebServices/ECS/classes/class.ilECSCategoryMappingRule.php';
734 if(is_object($this->form))
739 include_once
'./Services/Form/classes/class.ilPropertyFormGUI.php';
740 include_once
'./Services/WebServices/ECS/classes/class.ilECSCategoryMappingRule.php';
746 $this->form->setTitle($this->lng->txt(
'ecs_new_category_mapping'));
747 $this->form->setFormAction($this->ctrl->getFormAction($this,
'categoryMapping'));
748 $this->form->addCommandButton(
'addCategoryMapping',$this->lng->txt(
'save'));
749 $this->form->addCommandButton(
'categoryMapping',$this->lng->txt(
'cancel'));
753 $this->form->setTitle($this->lng->txt(
'ecs_edit_category_mapping'));
754 $this->form->setFormAction($this->ctrl->getFormAction($this,
'editCategoryMapping'));
755 $this->form->addCommandButton(
'updateCategoryMapping',$this->lng->txt(
'save'));
756 $this->form->addCommandButton(
'categoryMapping',$this->lng->txt(
'cancel'));
762 $tpl =
new ilTemplate(
'tpl.ecs_import_id_form.html',
true,
true,
'Services/WebServices/ECS');
763 $tpl->setVariable(
'SIZE',5);
764 $tpl->setVariable(
'MAXLENGTH',11);
765 $tpl->setVariable(
'POST_VAR',
'import_id');
766 $tpl->setVariable(
'PROPERTY_VALUE',$this->rule->getContainerId());
770 $tpl->setVariable(
'COMPLETE_PATH',$this->
buildPath($this->rule->getContainerId()));
773 $imp->setHTML(
$tpl->get());
774 $imp->setInfo($this->lng->txt(
'ecs_import_id_info'));
775 $this->form->addItem($imp);
777 include_once(
'./Services/WebServices/ECS/classes/class.ilECSCategoryMapping.php');
779 foreach($fields as $field)
781 $options[$field] = $this->lng->txt(
'ecs_field_'.$field);
783 $select =
new ilSelectInputGUI($this->lng->txt(
'ecs_attribute_name'),
'field');
784 $select->
setValue($this->rule->getFieldName());
785 $select->setRequired(
true);
786 $select->setOptions($options);
787 $this->form->addItem($select);
791 $value->
setValue($this->rule->getMappingType());
792 $value->setRequired(
true);
795 $fixed->
setInfo($this->lng->txt(
'ecs_cat_mapping_fixed_info'));
797 $fixed_val =
new ilTextInputGUI($this->lng->txt(
'ecs_cat_mapping_values'),
'mapping_value');
798 $fixed_val->
setValue($this->rule->getMappingValue());
799 $fixed_val->setMaxLength(255);
800 $fixed_val->setSize(40);
801 $fixed->addSubItem($fixed_val);
803 $value->addOption($fixed);
806 $duration->
setInfo($this->lng->txt(
'ecs_cat_mapping_duration_info'));
809 $dur_start->
setDate($this->rule->getDateRangeStart());
810 $duration->addSubItem($dur_start);
813 $dur_end->
setDate($this->rule->getDateRangeEnd());
814 $duration->addSubItem($dur_end);
816 $value->addOption($duration);
818 $this->form->addItem($value);
832 $this->tabs_gui->setSubTabActive(
'ecs_import');
836 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.ecs_imported.html',
'Services/WebServices/ECS');
838 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
844 $this->lng->txt(
'csv_export'),
845 $this->ctrl->getLinkTarget($this,
'exportImported')
851 $this->lng->txt(
'ecs_read_remote_links'),
852 $this->ctrl->getLinkTarget($this,
'readAll')
855 $this->tpl->setVariable(
'ACTION_BUTTONS',$tb->getHTML());
857 include_once(
'Services/WebServices/ECS/classes/class.ilECSImportedContentTableGUI.php');
861 $table_gui->setTitle($this->lng->txt(
'ecs_imported_content'));
862 $table_gui->parse($rcourses);
863 $this->tpl->setVariable(
'TBL_IMPORTED',$table_gui->getHTML());
876 global $ilObjDataCache,$ilUser;
881 include_once(
'./Modules/RemoteCourse/classes/class.ilObjRemoteCourse.php');
882 include_once(
'./Services/WebServices/ECS/classes/class.ilECSCommunityReader.php');
893 $ilObjDataCache->preloadReferenceCache($rcourses);
895 foreach($rcourses as $rcrs_ref_id)
897 $obj_id = $ilObjDataCache->lookupObjId($rcrs_ref_id);
898 $obj_ids[$obj_id] = $obj_id;
901 include_once(
'Services/Utilities/classes/class.ilCSVWriter.php');
904 $writer->addColumn($this->lng->txt(
'title'));
905 $writer->addColumn($this->lng->txt(
'description'));
906 $writer->addColumn($this->lng->txt(
'ecs_imported_from'));
907 $writer->addColumn($this->lng->txt(
'ecs_field_courseID'));
908 $writer->addColumn($this->lng->txt(
'ecs_field_term'));
909 $writer->addColumn($this->lng->txt(
'ecs_field_lecturer'));
910 $writer->addColumn($this->lng->txt(
'ecs_field_courseType'));
911 $writer->addColumn($this->lng->txt(
'ecs_field_semester_hours'));
912 $writer->addColumn($this->lng->txt(
'ecs_field_credits'));
913 $writer->addColumn($this->lng->txt(
'ecs_field_room'));
914 $writer->addColumn($this->lng->txt(
'ecs_field_cycle'));
915 $writer->addColumn($this->lng->txt(
'ecs_field_begin'));
916 $writer->addColumn($this->lng->txt(
'ecs_field_end'));
917 $writer->addColumn($this->lng->txt(
'last_update'));
919 include_once(
'./Services/WebServices/ECS/classes/class.ilECSDataMappingSettings.php');
922 foreach($obj_ids as $obj_id)
924 include_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDValues.php');
932 if(
$reader and ($participant =
$reader->getParticipantByMID($mid)))
934 $writer->addColumn($participant->getParticipantName());
936 $field = $settings->getMappingByECSName(
'courseID');
937 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
939 $field = $settings->getMappingByECSName(
'term');
940 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
942 $field = $settings->getMappingByECSName(
'lecturer');
943 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
945 $field = $settings->getMappingByECSName(
'courseType');
946 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
948 $field = $settings->getMappingByECSName(
'semester_hours');
949 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
951 $field = $settings->getMappingByECSName(
'credits');
952 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
954 $field = $settings->getMappingByECSName(
'room');
955 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
957 $field = $settings->getMappingByECSName(
'cycle');
958 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
960 $field = $settings->getMappingByECSName(
'begin');
963 $field = $settings->getMappingByECSName(
'end');
966 $writer->addColumn($ilObjDataCache->lookupLastUpdate($obj_id));
981 $this->tabs_gui->setSubTabActive(
'ecs_released');
983 include_once(
'./Services/WebServices/ECS/classes/class.ilECSExport.php');
986 $this->tpl->addBlockFile(
'ADM_CONTENT',
'adm_content',
'tpl.ecs_released.html',
'Services/WebServices/ECS');
988 include_once
'./Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
994 $this->lng->txt(
'csv_export'),
995 $this->ctrl->getLinkTarget($this,
'exportReleased')
1001 $this->lng->txt(
'ecs_read_remote_links'),
1002 $this->ctrl->getLinkTarget($this,
'readAll')
1005 $this->tpl->setVariable(
'ACTION_BUTTONS',$tb->getHTML());
1007 include_once(
'Services/WebServices/ECS/classes/class.ilECSReleasedContentTableGUI.php');
1010 $table_gui->setTitle($this->lng->txt(
'ecs_released_content'));
1011 $table_gui->parse($exported);
1012 $this->tpl->setVariable(
'TABLE_REL',$table_gui->getHTML());
1026 global $ilObjDataCache;
1028 include_once(
'./Services/WebServices/ECS/classes/class.ilECSExport.php');
1030 $ilObjDataCache->preloadObjectCache($exported);
1032 include_once(
'Services/Utilities/classes/class.ilCSVWriter.php');
1035 $writer->addColumn($this->lng->txt(
'title'));
1036 $writer->addColumn($this->lng->txt(
'description'));
1037 $writer->addColumn($this->lng->txt(
'ecs_field_courseID'));
1038 $writer->addColumn($this->lng->txt(
'ecs_field_term'));
1039 $writer->addColumn($this->lng->txt(
'ecs_field_lecturer'));
1040 $writer->addColumn($this->lng->txt(
'ecs_field_courseType'));
1041 $writer->addColumn($this->lng->txt(
'ecs_field_semester_hours'));
1042 $writer->addColumn($this->lng->txt(
'ecs_field_credits'));
1043 $writer->addColumn($this->lng->txt(
'ecs_field_room'));
1044 $writer->addColumn($this->lng->txt(
'ecs_field_cycle'));
1045 $writer->addColumn($this->lng->txt(
'ecs_field_begin'));
1046 $writer->addColumn($this->lng->txt(
'ecs_field_end'));
1047 $writer->addColumn($this->lng->txt(
'last_update'));
1049 include_once(
'./Services/WebServices/ECS/classes/class.ilECSDataMappingSettings.php');
1052 foreach($exported as $obj_id)
1054 include_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDValues.php');
1061 $field = $settings->getMappingByECSName(
'courseID');
1062 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1064 $field = $settings->getMappingByECSName(
'term');
1065 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1067 $field = $settings->getMappingByECSName(
'lecturer');
1068 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1070 $field = $settings->getMappingByECSName(
'courseType');
1071 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1073 $field = $settings->getMappingByECSName(
'semester_hours');
1074 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1076 $field = $settings->getMappingByECSName(
'credits');
1077 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1079 $field = $settings->getMappingByECSName(
'room');
1080 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1082 $field = $settings->getMappingByECSName(
'cycle');
1083 $writer->addColumn(isset($values[$field]) ? $values[$field] :
'');
1085 $field = $settings->getMappingByECSName(
'begin');
1088 $field = $settings->getMappingByECSName(
'end');
1091 $writer->addColumn($ilObjDataCache->lookupLastUpdate($obj_id));
1094 ilUtil::deliverData($writer->getCSVString(), date(
"Y_m_d").
"_ecs_export.csv",
"text/csv");
1105 include_once(
'./Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php');
1107 $options[0] = $this->lng->txt(
'ecs_ignore_field');
1108 foreach($fields as $field)
1112 $options[$field->getFieldId()] =
$title.
': '.$field->getTitle();
1126 include_once(
'Services/WebServices/ECS/classes/class.ilECSSettings.php');
1137 $this->tabs_gui->clearSubTabs();
1139 $this->tabs_gui->addSubTabTarget(
"ecs_settings",
1140 $this->ctrl->getLinkTarget($this,
'settings'),
1141 "settings",get_class($this));
1149 $this->tabs_gui->addSubTabTarget(
"ecs_communities",
1150 $this->ctrl->getLinkTarget($this,
'communities'),
1151 "communities",get_class($this));
1153 $this->tabs_gui->addSubTabTarget(
'ecs_mappings',
1154 $this->ctrl->getLinkTarget($this,
'mappings'),
1155 'mappings',get_class($this));
1157 $this->tabs_gui->addSubTabTarget(
'ecs_category_mapping',
1158 $this->ctrl->getLinkTarget($this,
'categoryMapping'));
1160 $this->tabs_gui->addSubTabTarget(
'ecs_import',
1161 $this->ctrl->getLinkTarget($this,
'imported'));
1163 $this->tabs_gui->addSubTabTarget(
'ecs_released',
1164 $this->ctrl->getLinkTarget($this,
'released'));
1175 global $rbacreview,$ilObjDataCache;
1182 $select[0] = $this->lng->txt(
'links_select_one');
1183 foreach($global_roles as $role_id)
1193 $loc->setTextOnly(
false);
1194 $loc->addContextItems($a_ref_id);
1196 return $loc->getHTML();