48    public function __construct($a_mode, $a_obj_type = 
'', $a_obj_id = 
'', $a_sub_type = 
'', $a_sub_id = 
'')
 
   53        $this->mode = $a_mode;
 
   54        $this->obj_type = $a_obj_type;
 
   55        $this->obj_id = $a_obj_id;
 
   56        $this->sub_type = $a_sub_type;
 
   57        $this->sub_id = $a_sub_id;
 
   61            $this->ref_id = end($refs);
 
   72        $this->ref_id = $a_ref_id;
 
   95        $this->search_values = $a_values;
 
  120        switch ($this->mode) {
 
  146                die(
'Not implemented yet');
 
  160        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDValues.php');
 
  161        $this->editor_form = array();
 
  171            $record_id = $record_obj->getRecordId();
 
  173            $values = 
new ilAdvancedMDValues($record_id, $this->obj_id, $this->sub_type, $this->sub_id);
 
  175            $defs = $values->getDefinitions();
 
  178            if (!
sizeof($defs)) {
 
  183            $adt_group_form->setForm($this->form);
 
  184            $adt_group_form->setTitle($record_obj->getTitle());
 
  185            $adt_group_form->setInfo($record_obj->getDescription());
 
  187            foreach ($defs as 
$def) {
 
  188                $element = $adt_group_form->getElement(
$def->getFieldId());
 
  189                $element->setTitle(
$def->getTitle());
 
  190                $element->setInfo(
$def->getDescription());
 
  193                $def->prepareElementForEditor($element);
 
  195                if ($values->isDisabled(
$def->getFieldId())) {
 
  196                    $element->setDisabled(
true);
 
  200            $adt_group_form->addToForm();
 
  202            $this->editor_form[$record_id] = array(
"values"=>$values, 
"form"=>$adt_group_form);
 
  214        if (!is_array($this->editor_form)) {
 
  220        foreach ($this->editor_form as $item) {
 
  221            $item[
"form"]->importFromPost();
 
  222            if (!$item[
"form"]->validate()) {
 
  239        if (!
sizeof($this->editor_form)) {
 
  245            $this->obj_id = $a_obj_id;
 
  248            $this->sub_id = $a_sub_id;
 
  251        foreach ($this->editor_form as $item) {
 
  252            if ($a_obj_id || $a_sub_id) {
 
  254                $item[
"values"]->setActiveRecordPrimary($this->obj_id, $this->sub_type, $this->sub_id);
 
  257            $item[
"values"]->write();
 
  278        $this->lng->loadLanguageModule(
'search');
 
  280        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDFieldDefinition.php');
 
  282        $this->search_form = array();
 
  287            if (!
sizeof($fields)) {
 
  292            $section->setTitle($record->getTitle());
 
  293            $section->setInfo($record->getDescription());
 
  296            foreach ($fields as $field) {
 
  297                $field_form = 
ilADTFactory::getInstance()->getSearchBridgeForDefinitionInstance($field->getADTDefinition(), 
true, 
false);
 
  298                $field_form->setForm($this->form);
 
  299                $field_form->setElementId(
"advmd[" . $field->getFieldId() . 
"]");
 
  300                $field_form->setTitle($field->getTitle());
 
  302                if (is_array($this->search_form_values) &&
 
  303                    isset($this->search_form_values[$field->getFieldId()])) {
 
  304                    $field->setSearchValueSerialized($field_form, $this->search_form_values[$field->getFieldId()]);
 
  307                $field->prepareElementForSearch($field_form);
 
  309                $field_form->addToForm();
 
  311                $this->search_form[$field->getFieldId()] = array(
"def"=>$field, 
"value"=>$field_form);
 
  323        if (!
sizeof($this->search_form)) {
 
  330        foreach ($this->search_form as $field_id => $item) {
 
  331            $item[
"value"]->importFromPost();
 
  332            if (!$item[
"value"]->validate()) {
 
  335            $value = $item[
"def"]->getSearchValueSerialized($item[
"value"]);
 
  336            if ($value !== 
null) {
 
  337                $res[$field_id] = $value;
 
  348        $this->search_form_values = $a_values;
 
  357        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDValues.php');
 
  358        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php');
 
  359        include_once(
'Services/ADT/classes/class.ilADTFactory.php');
 
  367            $defs = $a_values->getDefinitions();
 
  368            foreach ($a_values->getADTGroup()->getElements() as $element_id => $element) {
 
  369                if (!$element->isNull()) {
 
  370                    $this->info->addProperty(
 
  371                        $defs[$element_id]->getTitle(),
 
  388        $definitions = $sub->sortDefinitions($definitions);
 
  390        $positions = array();
 
  391        foreach ($definitions as $position => $value) {
 
  392            $positions[$value->getFieldId()] = $position;
 
  395        $array_elements = array();
 
  400            $defs = $a_values->getDefinitions();
 
  401            foreach ($a_values->getADTGroup()->getElements() as $element_id => $element) {
 
  402                if (!$element->isNull()) {
 
  405                    if (get_class($element) == 
'ilADTLocation') {
 
  406                        $presentation_bridge->setSize(
"100%", 
"200px");
 
  408                        $presentation_value = $presentation_bridge->getHTML();
 
  409                        $presentation_value .= 
"<script>ilInitMaps();</script>";
 
  412                        $presentation_value = strip_tags($presentation_bridge->getHTML());
 
  414                    $array_elements[$positions[$element_id]] =
 
  416                            "title" => $defs[$element_id]->getTitle(),
 
  417                            "value" => $presentation_value
 
  423        ksort($array_elements);
 
  424        return $array_elements;
 
  440        include_once(
'./Services/WebServices/ECS/classes/class.ilECSDataMappingSettings.php');
 
  441        include_once(
'./Services/WebServices/ECS/classes/class.ilECSServerSettings.php');
 
  444            ($this->obj_type != 
'crs' and $this->obj_type != 
'rcrs')
 
  461        $this->lng->loadLanguageModule(
'ecs');
 
  463        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDValue.php');
 
  464        $value_start = ilAdvancedMDValue::_getInstance($this->obj_id, 
$def->getFieldId());
 
  466        $unixtime = $value_start->getValue() ? $value_start->getValue() : mktime(8, 0, 0, 
date(
'm'), 
date(
'd'), 
date(
'Y'));
 
  469        $time->setShowTime(
true);
 
  476        $time->setDisabled($value_start->isDisabled());
 
  479        if ($field_id = $mapping->getMappingByECSName(0, 
'end')) {
 
  480            $value_end = ilAdvancedMDValue::_getInstance($this->obj_id, $field_id);
 
  482            list($hours, $minutes) = $this->
parseDuration($value_start->getValue(), $value_end->getValue());
 
  485            $duration->setHours($hours);
 
  486            $duration->setMinutes($minutes);
 
  487            #$duration->setInfo($this->lng->txt('ecs_duration_info')); 
  488            $duration->setShowHours(
true);
 
  489            $duration->setShowMinutes(
true);
 
  490            $time->addSubItem($duration);
 
  493        if ($field_id = $mapping->getMappingByECSName(0, 
'cycle')) {
 
  494            $value = ilAdvancedMDValue::_getInstance($this->obj_id, $field_id);
 
  496            switch ($cycle_def->getFieldType()) {
 
  498                    $text = 
new ilTextInputGUI($cycle_def->getTitle(), 
'md[' . $cycle_def->getFieldId() . 
']');
 
  499                    $text->setValue($value->getValue());
 
  501                    $text->setMaxLength(512);
 
  502                    $text->setDisabled($value->isDisabled());
 
  507                    $select = 
new ilSelectInputGUI($cycle_def->getTitle(), 
'md[' . $cycle_def->getFieldId() . 
']');
 
  508                    $select->setOptions($cycle_def->getFieldValuesForSelect());
 
  509                    $select->setValue($value->getValue());
 
  510                    $select->setDisabled($value->isDisabled());
 
  511                    $time->addSubItem($select);
 
  515        if ($field_id = $mapping->getMappingByECSName(0, 
'room')) {
 
  516            $value = ilAdvancedMDValue::_getInstance($this->obj_id, $field_id);
 
  518            switch ($room_def->getFieldType()) {
 
  521                    $text->setValue($value->getValue());
 
  523                    $text->setMaxLength(512);
 
  524                    $text->setDisabled($value->isDisabled());
 
  529                    $select = 
new ilSelectInputGUI($room_def->getTitle(), 
'md[' . $room_def->getFieldId() . 
']');
 
  530                    $select->setOptions($cycle_def->getFieldValuesForSelect());
 
  531                    $select->setValue($value->getValue());
 
  532                    $select->setDisabled($value->isDisabled());
 
  533                    $time->addSubItem($select);
 
  537        $this->form->addItem(
$time);
 
  549        if ($u_start >= $u_end) {
 
  552        $diff = $u_end - $u_start;
 
  553        $hours = (int) ($diff / (60 * 60));
 
  554        $min = (int) (($diff % 3600) / 60);
 
  555        return array($hours,$min);
 
  573        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php');
 
  580                $sec_tit = ($a_sec_head == 
"")
 
  581                    ? $this->lng->txt(
"meta_adv_records")
 
  589            $cb->setInfo($record_obj->getDescription());
 
  590            $cb->setValue($record_obj->getRecordId());
 
  591            if (in_array($record_obj->getRecordId(), $selected)) {
 
  592                $cb->setChecked(
true);
 
  594            $this->form->addItem($cb);
 
  607        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php');
 
  618        $this->table_gui = $a_val;
 
  628        return $this->table_gui;
 
  638        $this->row_data = $a_val;
 
  648        return $this->row_data;
 
  653        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDRecord.php');
 
  665        $this->adt_search = array();
 
  667        include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDFieldDefinition.php');
 
  669            $record_id = $record_obj->getRecordId();
 
  672            foreach ($defs as 
$def) {
 
  674                if (!
$def->isFilterSupported()) {
 
  686                $this->adt_search[
$def->getFieldId()]->setTableGUI($this->table_gui);
 
  687                $this->adt_search[
$def->getFieldId()]->setTitle(
$def->getTitle());
 
  688                $this->adt_search[
$def->getFieldId()]->setElementId(
'md_' . 
$def->getFieldId());
 
  690                $this->adt_search[
$def->getFieldId()]->loadFilter();
 
  691                $this->adt_search[
$def->getFieldId()]->addToForm();
 
  701        if (!is_array($this->adt_search)) {
 
  705        foreach ($this->adt_search as $element) {
 
  706            $element->importFromPost();
 
  717        if (!is_array($this->adt_search)) {
 
  723        foreach ($this->adt_search as $def_id => $element) {
 
  724            if (!$element->isNull() ||
 
  725                !(
bool) $a_only_non_empty) {
 
  726                $res[$def_id] = $element;
 
  744            include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDFieldDefinition.php');
 
  745            foreach (ilAdvancedMDFieldDefinition::_getDefinitionsByRecordId($record_obj->getRecordId()) as 
$def) {
 
  750                $this->table_gui->addColumn(
$def->getTitle(), 
'md_' . 
$def->getFieldId());
 
  765            include_once(
'Services/AdvancedMetaData/classes/class.ilAdvancedMDFieldDefinition.php');
 
  766            foreach (ilAdvancedMDFieldDefinition::_getDefinitionsByRecordId($record_obj->getRecordId()) as 
$def) {
 
  771                $html.= 
"<td class='std'>" . 
$data[
'md_' . 
$def->getFieldId()] . 
"</td>";
 
date( 'd-M-Y', $objPHPExcel->getProperties() ->getCreated())
An exception for terminatinating execution or to throw for unit testing.
static getInstance()
Get singleton.
static getInstance($a_field_id, $a_type=null)
Get definition instance by type.
static getInstancesByObjType($a_obj_type, $a_active_only=true)
static getInstancesByRecordId($a_record_id, $a_only_searchable=false)
Get definitions by record id.
parseInfoPage()
Presentation for info page.
const MODE_APP_PRESENTATION
parseTableCells()
Parse table cells.
parseRecordSelection($a_sec_head="")
Parse property form in editor mode.
setRowData($a_val)
Set row data.
importEditFormPostValues()
Load edit form values from post.
__construct($a_mode, $a_obj_type='', $a_obj_id='', $a_sub_type='', $a_sub_id='')
Constructor.
writeEditForm($a_obj_id=null, $a_sub_id=null)
Write edit form values to db.
setTableGUI($a_val)
Set table.
showECSStart($def)
Show special form for ecs start.
setInfoObject($info)
get info sections
importFilter()
Import filter (post) values.
parseSearch()
Parse search.
setRefId($a_ref_id)
Set ref_id for context.
setSearchFormValues(array $a_values)
parseFilter()
Parse property for filter (table)
parseTableHead()
Parse property for table head.
parseDuration($u_start, $u_end)
parse hours and minutes from duration
handleECSDefinitions($a_definition)
handle ecs definitions
importSearchForm()
Load edit form values from post.
setPropertyForm($form)
set property form object
setSearchValues($a_values)
Set values for search form.
saveSelection()
Save selection per object.
getRowData()
Get row data.
parseAppointmentPresentation()
Presentation for calendar agenda list.
parseEditor()
Parse property form in editor mode.
getFilterElements($a_only_non_empty=true)
Get SQL conditions for current filter value(s)
static _lookupTitle($a_record_id)
Lookup title.
static _getSelectedRecordsByObject($a_obj_type, $a_ref_id, $a_sub_type="")
Get selected records by object.
static saveObjRecSelection($a_obj_id, $a_sub_type="", array $a_records=null, $a_delete_before=true)
Save repository object record selection.
static getObjRecSelection($a_obj_id, $a_sub_type="")
Get repository object record selection.
static _getActivatedRecordsByObjectType($a_obj_type, $a_sub_type="", $a_only_optional=false)
Get activated records by object type.
static _getInstanceByObjectType($a_type)
Singleton: use this method to get an instance.
static getInstancesForObjectId($a_obj_id, $a_obj_type=null, $a_sub_type="-", $a_sub_id=0)
Get instances for given object id.
@classDescription Date and time handling
static _getInstance()
Get Singleton instance.
static getInstance()
Get singleton instance.
static _getAllReferences($a_id)
get all reference ids of object
This class represents a text property in a property form.
static stripSlashesArray($a_arr, $a_strip_html=true, $a_allow="")
Strip slashes from array.
foreach($_POST as $key=> $value) $res