34        $select_str = 
"stloc_{$this->getId()}_joined.value AS field_{$this->getId()},";
 
   35        $join_str = 
"LEFT JOIN il_dcl_record_field AS record_field_{$this->getId()} ON (record_field_{$this->getId()}.record_id = record.id AND record_field_{$this->getId()}.field_id = " 
   36            . 
$ilDB->quote($this->
getId(), 
'integer') . 
") ";
 
   37        $join_str .= 
"LEFT JOIN il_dcl_stloc{$this->getStorageLocation()}_value AS stloc_{$this->getId()} ON (stloc_{$this->getId()}.record_field_id = record_field_{$this->getId()}.id) ";
 
   38        $join_str .= 
"LEFT JOIN il_dcl_record_field AS record_field_{$this->getId()}_joined ON (record_field_{$this->getId()}_joined.record_id = stloc_{$this->getId()}.value AND record_field_{$this->getId()}_joined.field_id = " 
   39            . 
$ilDB->quote($ref_field->getId(), 
'integer') . 
") ";
 
   40        $join_str .= 
"LEFT JOIN il_dcl_stloc{$ref_field->getStorageLocation()}_value AS stloc_{$this->getId()}_joined ON (stloc_{$this->getId()}_joined.record_field_id = record_field_{$this->getId()}_joined.id) ";
 
   43        $sql_obj->setSelectStatement($select_str);
 
   44        $sql_obj->setJoinStatement($join_str);
 
   45        $sql_obj->setOrderStatement(
"field_{$this->getId()} " . $direction);
 
   67            = 
" LEFT JOIN il_dcl_record_field AS filter_record_field_{$this->getId()} ON (filter_record_field_{$this->getId()}.record_id = record.id AND filter_record_field_{$this->getId()}.field_id = " 
   68            . 
$ilDB->quote($this->
getId(), 
'integer') . 
") ";
 
   69        $join_str .= 
" LEFT JOIN il_dcl_stloc{$this->getStorageLocation()}_value AS filter_stloc_{$this->getId()} ON (filter_stloc_{$this->getId()}.record_field_id = filter_record_field_{$this->getId()}.id) ";
 
   73        if ($filter_value == 
'none') {
 
   75                . 
"filter_stloc_{$this->getId()}.value IS NULL " 
   76                . 
" OR filter_stloc_{$this->getId()}.value = " . 
$ilDB->quote(
"", 
'text')
 
   77                . 
" OR filter_stloc_{$this->getId()}.value = " . 
$ilDB->quote(
"[]", 
'text')
 
   82                    .= 
" filter_stloc_{$this->getId()}.value LIKE " 
   83                    . 
$ilDB->quote(
"%$filter_value%", 
'text');
 
   86                    .= 
" filter_stloc_{$this->getId()}.value = " 
   87                    . 
$ilDB->quote($filter_value, 
'integer');
 
   92        $sql_obj->setJoinStatement($join_str);
 
   93        $sql_obj->setWhereStatement($where_str);
 
  132        if ($reference_clone) {
 
  136        parent::afterClone($records);
 
An exception for terminatinating execution or to throw for unit testing.
Class ilDclBaseFieldModel.
updateProperties()
Update properties of this field in Database.
setProperty($key, $value)
Set a property for a field (does not save)
hasProperty($key)
Checks if a certain property for a field is set.
const PROP_REFERENCE_LINK
getProperty($key)
Returns a certain property of a field.
static getCloneOf($id, $type)
static getFieldCache($field_id=0)
Class ilDclRecordQueryObject.
Class ilDclReferenceFieldModel.
getValidFieldProperties()
@inheritDoc
getRecordQueryFilterObject($filter_value="", ilDclBaseFieldModel $sort_field=null)
Returns a query-object for building the record-loader-sql-query.
getRecordQuerySortObject($direction="asc", $sort_by_status=false)
Returns a query-object for building the record-loader-sql-query.