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 =
" INNER 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') .
") ";
72 .=
" INNER 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 AND filter_stloc_{$this->getId()}.value LIKE " 73 .
$ilDB->quote(
"%$filter_value%",
'text') .
") ";
76 .=
" INNER 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 AND filter_stloc_{$this->getId()}.value = " 77 .
$ilDB->quote($filter_value,
'integer') .
") ";
81 $sql_obj->setJoinStatement($join_str);
120 if ($reference_clone) {
Class ilDclBaseFieldModel.
static getCloneOf($id, $type)
const PROP_REFERENCE_LINK
Class ilDclRecordQueryObject.
static getFieldCache($field_id=0)
Class ilDclReferenceFieldModel.
updateProperties()
Update properties of this field in Database.
setProperty($key, $value)
Set a property for a field (does not save)
getRecordQueryFilterObject($filter_value="", ilDclBaseFieldModel $sort_field=null)
Returns a query-object for building the record-loader-sql-query.
hasProperty($key)
Checks if a certain property for a field is set.
getValidFieldProperties()
getRecordQuerySortObject($direction="asc", $sort_by_status=false)
Returns a query-object for building the record-loader-sql-query.
getProperty($key)
Returns a certain property of a field.