ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilDclFileuploadFieldRepresentation Class Reference

Class ilDclFileuploadFieldRepresentaion. More...

+ Inheritance diagram for ilDclFileuploadFieldRepresentation:
+ Collaboration diagram for ilDclFileuploadFieldRepresentation:

Public Member Functions

 getInputField (ilPropertyFormGUI $form, $record_id=0)
 Returns field-input.
Parameters
ilPropertyFormGUI$form
int$record_id
Returns
null
More...
 
 addFilterInputFieldToTable (ilTable2GUI $table)
 Add filter input to TableGUI.
Parameters
ilTable2GUI$table
Returns
null
More...
 
 passThroughFilter (ilDclBaseRecordModel $record, $filter)
 Checks if a filter affects a record.
Parameters
ilDclBaseRecordModel$record
$filter
Returns
bool
More...
 
 buildFieldCreationInput (ilObjDataCollection $dcl, $mode='create')
 @inheritDoc More...
 
- Public Member Functions inherited from ilDclBaseFieldRepresentation
 __construct (ilDclBaseFieldModel $field)
 
 addFilterInputFieldToTable (ilTable2GUI $table)
 Add filter input to TableGUI. More...
 
 passThroughFilter (ilDclBaseRecordModel $record, $filter)
 Checks if a filter affects a record. More...
 
 parseSortingValue ($value, $link=true)
 
 getInputField (ilPropertyFormGUI $form, $record_id=0)
 Returns field-input. More...
 
 addFieldCreationForm ($form, ilObjDataCollection $dcl, $mode="create")
 Adds the options for the field-types to the field-creation form. More...
 
 getPropertyInputFieldId ($property)
 Return post-var for property-fields. More...
 
 getField ()
 Return BaseFieldModel. More...
 

Protected Member Functions

 requiredWorkaroundForInputField ($input, $record_id)
 
- Protected Member Functions inherited from ilDclBaseFieldRepresentation
 setupFilterInputField (ilFormPropertyGUI $input)
 Set basic settings for filter-input-gui. More...
 
 setupInputField (ilFormPropertyGUI $input, ilDclBaseFieldModel $field)
 Sets basic settings on field-input. More...
 
 getFilterInputFieldValue ( $input)
 
 buildFieldCreationInput (ilObjDataCollection $dcl, $mode='create')
 Build the creation-input-field. More...
 

Additional Inherited Members

- Protected Attributes inherited from ilDclBaseFieldRepresentation
 $field
 
 $lng
 
 $ctrl
 

Detailed Description

Class ilDclFileuploadFieldRepresentaion.

Author
Michael Herren mh@st.nosp@m.uder.nosp@m.-raim.nosp@m.ann..nosp@m.ch
Version
1.0.0

Definition at line 10 of file class.ilDclFileuploadFieldRepresentation.php.

Member Function Documentation

◆ addFilterInputFieldToTable()

ilDclFileuploadFieldRepresentation::addFilterInputFieldToTable ( ilTable2GUI  $table)

Add filter input to TableGUI.

Parameters
ilTable2GUI$table
Returns
null

Reimplemented from ilDclBaseFieldRepresentation.

Reimplemented in ilDclMobFieldRepresentation.

Definition at line 50 of file class.ilDclFileuploadFieldRepresentation.php.

50 {
51 $input = $table->addFilterItemByMetaType("filter_" . $this->getField()->getId(), ilTable2GUI::FILTER_TEXT, false, $this->getField()->getId());
52 $input->setSubmitFormOnEnter(true);
53
54 $this->setupFilterInputField($input);
55
56 return $this->getFilterInputFieldValue($input);
57 }
setupFilterInputField(ilFormPropertyGUI $input)
Set basic settings for filter-input-gui.
addFilterItemByMetaType($id, $type=self::FILTER_TEXT, $a_optional=false, $caption=NULL)
Add filter by standard type.

References ilTable2GUI\addFilterItemByMetaType(), ilTable2GUI\FILTER_TEXT, ilDclBaseFieldRepresentation\getField(), ilDclBaseFieldRepresentation\getFilterInputFieldValue(), and ilDclBaseFieldRepresentation\setupFilterInputField().

+ Here is the call graph for this function:

◆ buildFieldCreationInput()

ilDclFileuploadFieldRepresentation::buildFieldCreationInput ( ilObjDataCollection  $dcl,
  $mode = 'create' 
)

@inheritDoc

Reimplemented from ilDclBaseFieldRepresentation.

Reimplemented in ilDclMobFieldRepresentation.

Definition at line 82 of file class.ilDclFileuploadFieldRepresentation.php.

82 {
83 $opt = parent::buildFieldCreationInput($dcl, $mode);
84
85 $prop_filetype = new ilTextInputGUI($this->lng->txt('dcl_supported_filetypes'), 'prop_'.ilDclBaseFieldModel::PROP_SUPPORTED_FILE_TYPES);
86 $prop_filetype->setInfo($this->lng->txt('dcl_supported_filetypes_desc'));
87
88 $opt->addSubItem($prop_filetype);
89
90 return $opt;
91 }
This class represents a text property in a property form.

◆ getInputField()

ilDclFileuploadFieldRepresentation::getInputField ( ilPropertyFormGUI  $form,
  $record_id = 0 
)

Returns field-input.

Parameters
ilPropertyFormGUI$form
int$record_id
Returns
null

Reimplemented from ilDclBaseFieldRepresentation.

Reimplemented in ilDclMobFieldRepresentation.

Definition at line 15 of file class.ilDclFileuploadFieldRepresentation.php.

15 {
16 $input = new ilFileInputGUI($this->getField()->getTitle(), 'field_' . $this->getField()->getId());
17 $input->setSuffixes($this->getField()->getSupportedExtensions());
18 $input->setAllowDeletion(true);
19
20 $this->requiredWorkaroundForInputField($input, $record_id);
21
22 return $input;
23 }
This class represents a file property in a property form.

References ilDclBaseFieldRepresentation\getField(), and requiredWorkaroundForInputField().

+ Here is the call graph for this function:

◆ passThroughFilter()

ilDclFileuploadFieldRepresentation::passThroughFilter ( ilDclBaseRecordModel  $record,
  $filter 
)

Checks if a filter affects a record.

Parameters
ilDclBaseRecordModel$record
$filter
Returns
bool

Reimplemented from ilDclBaseFieldRepresentation.

Reimplemented in ilDclMobFieldRepresentation.

Definition at line 63 of file class.ilDclFileuploadFieldRepresentation.php.

63 {
64 $value = $record->getRecordFieldValue($this->getField()->getId());
65 $pass = false;
66 if (!ilObject2::_exists($value) || ilObject2::_lookupType($value, false) != "file") {
67 $pass = true;
68 }
69
70 $file_obj = new ilObjFile($value, false);
71 $file_name = $file_obj->getTitle();
72 if (!$filter || strpos(strtolower($file_name), strtolower($filter)) !== false) {
73 $pass = true;
74 }
75
76 return $pass;
77 }
getRecordFieldValue($field_id)
Get Field Value.
Class ilObjFile.
static _lookupType($a_id, $a_reference=false)
lookup object type
static _exists($a_id, $a_reference=false, $a_type=null)
checks if an object exists in object_data@access public

References $pass, ilObject2\_exists(), ilObject2\_lookupType(), ilDclBaseFieldRepresentation\getField(), and ilDclBaseRecordModel\getRecordFieldValue().

+ Here is the call graph for this function:

◆ requiredWorkaroundForInputField()

ilDclFileuploadFieldRepresentation::requiredWorkaroundForInputField (   $input,
  $record_id 
)
protected

Definition at line 25 of file class.ilDclFileuploadFieldRepresentation.php.

25 {
26 if ($record_id) {
27 $record = ilDclCache::getRecordCache($record_id);
28 }
29
30 $this->setupInputField($input, $this->getField());
31
32 //WORKAROUND
33 // If field is from type file: if it's required but already has a value it is no longer required as the old value is taken as default without the form knowing about it.
34 if ($record_id && $record->getId()) {
35 $field_value = $record->getRecordFieldValue($this->getField()->getId());
36 if ($field_value) {
37 $input->setRequired(false);
38 }
39 }
40 // If this is an ajax request to return the form, input files are currently not supported
41 if ($this->ctrl->isAsynch()) {
42 $input->setDisabled(true);
43 }
44 }
setupInputField(ilFormPropertyGUI $input, ilDclBaseFieldModel $field)
Sets basic settings on field-input.
static getRecordCache($record_id=0)

References ilDclBaseFieldRepresentation\getField(), ilDclCache\getRecordCache(), and ilDclBaseFieldRepresentation\setupInputField().

Referenced by getInputField(), and ilDclMobFieldRepresentation\getInputField().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

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