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']);
 
  314                 if(!$error = $this->
settings->validate())
 
  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();
 
  620                 $this->tabs_gui->setSubTabActive(
'ecs_category_mapping');
 
  621                 $this->ctrl->saveParameter($this,
'rule_id');
 
  625                 $this->tpl->setContent($this->form->getHTML());
 
  641                 $this->ctrl->saveParameter($this,
'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();