ILIAS  release_7 Revision v7.30-3-g800a261c036
ilAdvancedMDFieldDefinitionInternalLink Class Reference

AMD field type date. More...

+ Inheritance diagram for ilAdvancedMDFieldDefinitionInternalLink:
+ Collaboration diagram for ilAdvancedMDFieldDefinitionInternalLink:

Public Member Functions

 getType ()
 Get type. More...
 
 getValueForXML (\ilADT $element)
 Get value for XML. More...
 
 importValueFromXML ($a_cdata)
 Import value from xml. More...
 
 searchObjects (ilADTSearchBridge $a_adt_search, ilQueryParser $a_parser, array $a_object_types, $a_locate, $a_search_type)
 Search. More...
 
 getLuceneSearchString ($a_value)
 translate lucene search string More...
 
- Public Member Functions inherited from ilAdvancedMDFieldDefinition
 __construct ($a_field_id=null, string $language='')
 Constructor. More...
 
 getType ()
 Get type. More...
 
 useDefaultLanguageMode (string $language)
 Check if default language mode has to be used: no language given or language equals default language. More...
 
 getTypeTitle ()
 Get type title (lang id) More...
 
 getADTDefinition ()
 Get ADT definition instance. More...
 
 getADT ()
 Get ADT instance. More...
 
 getFieldId ()
 Get field_id. More...
 
 setRecordId ($a_id)
 Set record id. More...
 
 getRecordId ()
 Get record id. More...
 
 setImportId ($a_id_string)
 Set import id. More...
 
 getImportId ()
 Get import id. More...
 
 setPosition ($a_pos)
 Set position. More...
 
 getPosition ()
 Get position. More...
 
 setTitle ($a_title)
 Get title. More...
 
 getTitle ()
 Get title. More...
 
 setDescription ($a_desc)
 Set description. More...
 
 getDescription ()
 Get description. More...
 
 isSearchSupported ()
 Is search supported at all. More...
 
 isFilterSupported ()
 Is search by filter supported. More...
 
 setSearchable ($a_status)
 Toggle searchable. More...
 
 isSearchable ()
 Is searchable. More...
 
 setRequired ($a_status)
 Toggle required. More...
 
 isRequired ()
 Is required field. More...
 
 getFieldDefinitionForTableGUI (string $content_language)
 Parse properties for table gui. More...
 
 addToFieldDefinitionForm (ilPropertyFormGUI $a_form, ilAdvancedMDPermissionHelper $a_permissions, string $language='')
 Add input elements to definition form. More...
 
 importCustomDefinitionFormPostValues (ilPropertyFormGUI $a_form, string $language='')
 Import custom post values from definition form. More...
 
 importDefinitionFormPostValues (ilPropertyFormGUI $a_form, ilAdvancedMDPermissionHelper $a_permissions, string $active_language)
 Import post values from definition form. More...
 
 importDefinitionFormPostValuesNeedsConfirmation ()
 
 prepareCustomDefinitionFormConfirmation (ilPropertyFormGUI $a_form)
 
 prepareDefinitionFormConfirmation (ilPropertyFormGUI $a_form)
 
 generateImportId ($a_field_id)
 Generate unique record id. More...
 
 save ($a_keep_pos=false)
 Create new field entry. More...
 
 update ()
 Update field entry. More...
 
 delete ()
 Delete field entry. More...
 
 toXML (ilXmlWriter $a_writer)
 To Xml. More...
 
 importXMLProperty ($a_key, $a_value)
 Import property from XML. More...
 
 getValueForXML (ilADT $element)
 Parse ADT value for xml (export) More...
 
 importValueFromXML ($a_cdata)
 Import value from xml. More...
 
 importFromECS ($a_ecs_type, $a_value, $a_sub_id)
 Import meta data from ECS. More...
 
 prepareElementForEditor (ilADTFormBridge $a_bridge)
 Prepare editor form elements. More...
 
 getSearchQueryParserValue (ilADTSearchBridge $a_adt_search)
 Get value for search query parser. More...
 
 getSearchValueSerialized (ilADTSearchBridge $a_adt_search)
 Get value for search persistence. More...
 
 setSearchValueSerialized (ilADTSearchBridge $a_adt_search, $a_value)
 Set value from search persistence. More...
 
 searchSubObjects (ilADTSearchBridge $a_adt_search, $a_obj_id, $sub_obj_type)
 
 searchObjects (ilADTSearchBridge $a_adt_search, ilQueryParser $a_parser, array $a_object_types, $a_locate, $a_search_type)
 Search objects. More...
 
 getLuceneSearchString ($a_value)
 Get search string in lucene syntax. More...
 
 prepareElementForSearch (ilADTSearchBridge $a_bridge)
 Prepare search form elements. More...
 
 _clone ($a_new_record_id)
 Clone field definition. More...
 
 hasComplexOptions ()
 
 getComplexOptionsOverview ($a_parent_gui, string $parent_cmd)
 

Protected Member Functions

 initADTDefinition ()
 Init ADT definition. More...
 
- Protected Member Functions inherited from ilAdvancedMDFieldDefinition
 init ()
 Init properties. More...
 
 initADTDefinition ()
 Init adt instance. More...
 
 setADT (ilADT $a_adt)
 Set ADT instance. More...
 
 setFieldId ($a_id)
 Set field_id. More...
 
 importFieldDefinition (array $a_def)
 Import (type-specific) field definition from DB. More...
 
 getFieldDefinition ()
 Get (type-specific) field definition. More...
 
 addCustomFieldToDefinitionForm (ilPropertyFormGUI $a_form, $a_disabled=false, string $language='')
 Add custom input elements to definition form. More...
 
 getLastPosition ()
 Get last position of record. More...
 
 getDBProperties ()
 Get all definition properties for DB. More...
 
 import (array $a_data)
 Import from DB. More...
 
 read ($a_field_id)
 Read field definition. More...
 
 addPropertiesToXML (ilXmlWriter $a_writer)
 Add (type-specific) properties to xml export. More...
 
 parseSearchObjects (array $a_records, array $a_object_types)
 Add object-data needed for global search to AMD search results. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ilAdvancedMDFieldDefinition
static getInstance ($a_field_id, $a_type=null, string $language='')
 Get definition instance by type. More...
 
static exists ($a_field_id)
 Check if field exists. More...
 
static getInstanceByTypeString ($a_type)
 Get instance by type string (used by import) More...
 
static getInstancesByRecordId ($a_record_id, $a_only_searchable=false, string $language='')
 Get definitions by record id. More...
 
static getInstancesByObjType ($a_obj_type, $a_active_only=true)
 
static getInstanceByImportId ($a_import_id)
 Get definition instance by import id. More...
 
static getSearchableDefinitionIds ()
 Get searchable definition ids (performance is key) More...
 
static getADTGroupForDefinitions (array $a_defs)
 Init ADTGroup for definitions. More...
 
static getValidTypes ()
 Get all valid types. More...
 
static isValidType ($a_type)
 Is given type valid. More...
 
- Data Fields inherited from ilAdvancedMDFieldDefinition
const TYPE_SELECT = 1
 
const TYPE_TEXT = 2
 
const TYPE_DATE = 3
 
const TYPE_DATETIME = 4
 
const TYPE_INTEGER = 5
 
const TYPE_FLOAT = 6
 
const TYPE_LOCATION = 7
 
const TYPE_SELECT_MULTI = 8
 
const TYPE_ADDRESS = 99
 
const TYPE_EXTERNAL_LINK = 9
 
const TYPE_INTERNAL_LINK = 10
 
- Static Protected Member Functions inherited from ilAdvancedMDFieldDefinition
static getTypeString ($a_type)
 Get type string. More...
 
- Protected Attributes inherited from ilAdvancedMDFieldDefinition
 $field_id
 
 $record_id
 
 $import_id
 
 $position
 
 $title
 
 $description
 
 $searchable
 
 $required
 
 $adt_def
 
 $adt
 
 $language = ''
 
 $logger
 

Detailed Description

Member Function Documentation

◆ getLuceneSearchString()

ilAdvancedMDFieldDefinitionInternalLink::getLuceneSearchString (   $a_value)

translate lucene search string

Parameters
type$a_value

Reimplemented from ilAdvancedMDFieldDefinition.

Definition at line 88 of file class.ilAdvancedMDFieldDefinitionInternalLink.php.

89 {
90 $db = $GLOBALS['DIC']->database();
91
92 $query = 'select ref_id from object_reference obr join object_data obd on obr.obj_id = obd.obj_id ' .
93 'where ' . $db->like('title', 'text', $a_value . '%');
94 $res = $db->query($query);
95 $ref_ids = [];
96 while ($row = $res->fetchRow(ilDBConstants::FETCHMODE_OBJECT)) {
97 $ref_ids[] = $row->ref_id;
98 }
99 return $ref_ids;
100 }
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
$query
foreach($_POST as $key=> $value) $res

References $GLOBALS, $query, $res, and ilDBConstants\FETCHMODE_OBJECT.

◆ getType()

ilAdvancedMDFieldDefinitionInternalLink::getType ( )

Get type.

Returns
int

Reimplemented from ilAdvancedMDFieldDefinition.

Definition at line 16 of file class.ilAdvancedMDFieldDefinitionInternalLink.php.

References ilAdvancedMDFieldDefinition\TYPE_INTERNAL_LINK.

Referenced by searchObjects().

+ Here is the caller graph for this function:

◆ getValueForXML()

ilAdvancedMDFieldDefinitionInternalLink::getValueForXML ( \ilADT  $element)

Get value for XML.

Parameters
\ilADT$element

Definition at line 35 of file class.ilAdvancedMDFieldDefinitionInternalLink.php.

36 {
37 $type = ilObject::_lookupType($element->getTargetRefId(), true);
38
39 if ($element->getTargetRefId() && strlen($type)) {
40 return 'il_' . IL_INST_ID . '_' . $type . '_' . $element->getTargetRefId();
41 }
42 return '';
43 }
static _lookupType($a_id, $a_reference=false)
lookup object type
const IL_INST_ID
Definition: constants.php:38
$type

References $type, ilObject\_lookupType(), and IL_INST_ID.

+ Here is the call graph for this function:

◆ importValueFromXML()

ilAdvancedMDFieldDefinitionInternalLink::importValueFromXML (   $a_cdata)

Import value from xml.

Parameters
string$a_cdata

Reimplemented from ilAdvancedMDFieldDefinition.

Definition at line 49 of file class.ilAdvancedMDFieldDefinitionInternalLink.php.

50 {
51 $parsed_import_id = ilUtil::parseImportId($a_cdata);
52
53 if (
54 (strcmp($parsed_import_id['inst_id'], IL_INST_ID) == 0) &&
55 ilObject::_exists($parsed_import_id['id'], true, $parsed_import_id['type'])
56 ) {
57 $this->getADT()->setTargetRefId($parsed_import_id['id']);
58 }
59 }
static _exists($a_id, $a_reference=false, $a_type=null)
checks if an object exists in object_data@access public
static parseImportId($a_import_id)
Parse an ilias import id Typically of type il_[IL_INST_ID]_[OBJ_TYPE]_[OBJ_ID] returns array( 'orig' ...

References ilObject\_exists(), ilAdvancedMDFieldDefinition\getADT(), IL_INST_ID, and ilUtil\parseImportId().

+ Here is the call graph for this function:

◆ initADTDefinition()

ilAdvancedMDFieldDefinitionInternalLink::initADTDefinition ( )
protected

Init ADT definition.

Returns
ilADTDefinition

Reimplemented from ilAdvancedMDFieldDefinition.

Definition at line 26 of file class.ilAdvancedMDFieldDefinitionInternalLink.php.

27 {
28 return ilADTFactory::getInstance()->getDefinitionInstanceByType("InternalLink");
29 }
static getInstance()
Get singleton.

References ilADTFactory\getInstance().

+ Here is the call graph for this function:

◆ searchObjects()

ilAdvancedMDFieldDefinitionInternalLink::searchObjects ( ilADTSearchBridge  $a_adt_search,
ilQueryParser  $a_parser,
array  $a_object_types,
  $a_locate,
  $a_search_type 
)

Search.

Parameters
ilADTSearchBridge$a_adt_search
ilQueryParser$a_parser
array$a_object_types
string$a_locate
string$a_search_type
Returns
array

Reimplemented from ilAdvancedMDFieldDefinition.

Definition at line 72 of file class.ilAdvancedMDFieldDefinitionInternalLink.php.

73 {
75 if ($condition) {
76 $objects = ilADTActiveRecordByType::find("adv_md_values", $this->getADT()->getType(), $this->getFieldId(), $condition, $a_locate);
77 if (sizeof($objects)) {
78 return $this->parseSearchObjects($objects, $a_object_types);
79 }
80 return array();
81 }
82 }
static find($a_table, $a_type, $a_field_id, $a_condition, $a_additional_fields=null)
Find entries.
getSQLCondition($a_element_id)
Get SQL condition for current value(s)
parseSearchObjects(array $a_records, array $a_object_types)
Add object-data needed for global search to AMD search results.

References ilADTActiveRecordByType\find(), ilAdvancedMDFieldDefinition\getADT(), ilAdvancedMDFieldDefinition\getFieldId(), ilADTSearchBridge\getSQLCondition(), getType(), ilAdvancedMDFieldDefinition\parseSearchObjects(), and ilADTActiveRecordByType\SINGLE_COLUMN_NAME.

+ Here is the call graph for this function:

The documentation for this class was generated from the following file: