22        string $direction = 
"asc",
 
   23        bool $sort_by_status = 
false 
   28            = 
"LEFT JOIN il_dcl_record_field AS sort_record_field_{$this->getId()} ON (sort_record_field_{$this->getId()}.record_id = record.id AND sort_record_field_{$this->getId()}.field_id = " 
   29            . 
$ilDB->quote($this->
getId(), 
'integer') . 
") ";
 
   30        $join_str .= 
"LEFT JOIN il_dcl_stloc{$this->getStorageLocation()}_value AS sort_stloc_{$this->getId()} ON (sort_stloc_{$this->getId()}.record_field_id = sort_record_field_{$this->getId()}.id) ";
 
   31        $join_str .= 
"LEFT JOIN object_data AS sort_object_data_{$this->getId()} ON (sort_object_data_{$this->getId()}.obj_id = sort_stloc_{$this->getId()}.value) ";
 
   32        $select_str = 
" sort_object_data_{$this->getId()}.title AS field_{$this->getId()},";
 
   35        $sql_obj->setSelectStatement($select_str);
 
   36        $sql_obj->setJoinStatement($join_str);
 
   37        $sql_obj->setOrderStatement(
"field_{$this->getId()} " . $direction);
 
   53            = 
"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 = " 
   54            . 
$ilDB->quote($this->
getId(), 
'integer') . 
") ";
 
   55        $join_str .= 
"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) ";
 
   56        $join_str .= 
"INNER JOIN object_data AS filter_object_data_{$this->getId()} ON (filter_object_data_{$this->getId()}.obj_id = filter_stloc_{$this->getId()}.value AND filter_object_data_{$this->getId()}.title LIKE " 
   57            . 
$ilDB->quote(
"%$filter_value%", 
'text') . 
") ";
 
   60        $sql_obj->setJoinStatement($join_str);
 
   73        return $this->parseSupportedExtensions($file_types);
 
   78        $supported_extensions = explode(
",", $input_value);
 
   80        $trim_function = 
function ($value) {
 
   81            return trim(trim(strtolower($value)), 
".");
 
   84        return array_map($trim_function, $supported_extensions);
 
   94        if ($value == 
null || $value[
'size'] == 0) {
 
   98        if ($this->isUnique()) {
 
   99            $title = $value[
'name'];
 
  101            foreach ($table->getRecords() as $record) {
 
  102                if ($this->normalizeValue($record->getRecordFieldExportValue($this->getId())) == $this->normalizeValue($title) && ($record->getId() != $record_id || $record_id == 0)) {
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
const PROP_SUPPORTED_FILE_TYPES
 
static getTableCache(int $table_id=null)
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
getRecordQuerySortObject(string $direction="asc", bool $sort_by_status=false)
Returns a query-object for building the record-loader-sql-query.
 
getValidFieldProperties()
Returns all valid properties for a field-type.
 
parseSupportedExtensions(string $input_value)
 
checkValidity($value, ?int $record_id=null)
 
getRecordQueryFilterObject( $filter_value="", ?ilDclBaseFieldModel $sort_field=null)
Returns a query-object for building the record-loader-sql-query.
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...