ILIAS  release_5-1 Revision 5.0.0-5477-g43f3e3fab5f
ilObjFileListGUI Class Reference

Class ilObjFileListGUI. More...

+ Inheritance diagram for ilObjFileListGUI:
+ Collaboration diagram for ilObjFileListGUI:

Public Member Functions

 ilObjFileListGUI ()
 constructor More...
 
 init ()
 initialisation More...
 
 getCommandFrame ($a_cmd)
 Get command target frame. More...
 
 getIconImageType ()
 Returns the icon image type. More...
 
 getTitle ()
 getTitle overwritten in class.ilObjLinkResourceList.php More...
 
 getProperties ()
 Get item properties. More...
 
 getCommandImage ($a_cmd)
 Get command link url. More...
 
 getCommandLink ($a_cmd)
 Get command link url. More...
 
- Public Member Functions inherited from ilObjectListGUI
 ilObjectListGUI ()
 constructor More...
 
 setContainerObject ($container_obj)
 set the container object (e.g categorygui) Used for link, delete ... commands More...
 
 getContainerObject ()
 get container object More...
 
 init ()
 initialisation More...
 
 enableProperties ($a_status)
 En/disable properties. More...
 
 getPropertiesStatus ()
 
 enablePreconditions ($a_status)
 En/disable preconditions. More...
 
 getNoticePropertiesStatus ()
 
 enableNoticeProperties ($a_status)
 En/disable notices. More...
 
 getPreconditionsStatus ()
 
 enableDescription ($a_status)
 En/disable description. More...
 
 getDescriptionStatus ()
 
 getSearchFragmentStatus ()
 Show hide search result fragments. More...
 
 enableSearchFragments ($a_status)
 En/disable description. More...
 
 enableLinkedPath ($a_status)
 Enable linked path. More...
 
 enabledRelevance ()
 enabled relevance More...
 
 enableRelevance ($a_status)
 enable relevance More...
 
 setRelevance ($a_rel)
 set relevance More...
 
 getRelevance ()
 get relevance More...
 
 enableIcon ($a_status)
 En/Dis-able icons. More...
 
 getIconStatus ()
 Are icons enabled? More...
 
 enableCheckbox ($a_status)
 En/Dis-able checkboxes. More...
 
 getCheckboxStatus ()
 Are checkboxes enabled? More...
 
 enableExpand ($a_status)
 En/Dis-able expand/collapse link. More...
 
 getExpandStatus ()
 Is expand/collapse enabled. More...
 
 setExpanded ($a_status)
 
 isExpanded ()
 
 setPositionInputField ($a_field_index, $a_position_value)
 Set position input field. More...
 
 enableDelete ($a_status)
 En/disable delete. More...
 
 getDeleteStatus ()
 
 enableCut ($a_status)
 En/disable cut. More...
 
 getCutStatus ()
 
 enableCopy ($a_status)
 En/disable copy. More...
 
 getCopyStatus ()
 
 enableSubscribe ($a_status)
 En/disable subscribe. More...
 
 getSubscribeStatus ()
 
 enablePayment ($a_status)
 En/disable payment. More...
 
 getPaymentStatus ()
 
 enableLink ($a_status)
 En/disable link. More...
 
 getLinkStatus ()
 
 enablePath ($a_path, $a_start_node=null)
 En/disable path. More...
 
 getPathStatus ()
 
 enableCommands ($a_status, $a_std_only=false)
 En/disable commands. More...
 
 getCommandsStatus ()
 
 enableInfoScreen ($a_info_screen)
 En/disable path. More...
 
 addSubItemHTML ($a_html)
 Add HTML for subitem (used for sessions) More...
 
 getInfoScreenStatus ()
 
 enableProgressInfo ($a_status)
 enable progress info More...
 
 getProgressInfoStatus ()
 get progress info status More...
 
 enableSubstitutions ($a_status)
 Enable substitutions. More...
 
 getSubstitutionStatus ()
 Get substitution status. More...
 
 enableItemDetailLinks ($a_status)
 enable item detail links E.g Direct links to chapters or pages More...
 
 getItemDetailLinkStatus ()
 get item detail link status More...
 
 setItemDetailLinks ($a_detail_links, $a_intro_txt='')
 set items detail links More...
 
 insertItemDetailLinks ()
 insert item detail links More...
 
 setTitle ($a_title)
 
 getTitle ()
 getTitle overwritten in class.ilObjLinkResourceList.php More...
 
 setDescription ($a_description)
 
 getDescription ()
 getDescription overwritten in class.ilObjLinkResourceList.php More...
 
 setSearchFragment ($a_text)
 set search fragment More...
 
 getSearchFragment ()
 get search fragment More...
 
 setSeparateCommands ($a_val)
 Set separate commands. More...
 
 getSeparateCommands ()
 Get separate commands. More...
 
 getCommandId ()
 get command id Normally the ref id. More...
 
 setAdditionalInformation ($a_val)
 Set additional information. More...
 
 getAdditionalInformation ()
 Get additional information. More...
 
 setDetailsLevel ($a_level)
 Details level Currently used in Search which shows only limited properties of forums Currently used for Sessions (switch between minimal and extended view for each session) More...
 
 getDetailsLevel ()
 Get current details level. More...
 
 enableRepositoryTransfer ($a_value)
 Enable copy/move to repository (from personal workspace) More...
 
 restrictToGoto ($a_value)
 Restrict all actions/links to goto. More...
 
 checkCommandAccess ($a_permission, $a_cmd, $a_ref_id, $a_type, $a_obj_id="")
 
 initItem ($a_ref_id, $a_obj_id, $a_title="", $a_description="", $a_context=self::CONTEXT_REPOSITORY)
 inititialize new item (is called by getItemHTML()) More...
 
 setConditionTarget ($a_ref_id, $a_obj_id, $a_target_type)
 
 resetConditionTarget ()
 
 disableTitleLink ($a_status)
 
 setDefaultCommandParameters (array $a_params)
 
 createDefaultCommand ($command)
 Get default command link Overwritten for e.g categories,courses => they return a goto link If search engine visibility is enabled these object type return a goto_CLIENT_ID_cat_99.html link. More...
 
 getCommandLink ($a_cmd)
 Get command link url. More...
 
 getCommandFrame ($a_cmd)
 Get command target frame. More...
 
 getCommandImage ($a_cmd)
 Get command icon image. More...
 
 getProperties ($a_item='')
 Get item properties. More...
 
 addCustomProperty ($a_property="", $a_value="", $a_alert=false, $a_newline=false)
 add custom property More...
 
 getCustomProperties ($a_prop)
 get custom properties More...
 
 getAlertProperties ()
 get all alert properties More...
 
 getNoticeProperties ()
 get notice properties More...
 
 addCustomCommand ($a_link, $a_lang_var, $a_frame="", $onclick="")
 add a custom command More...
 
 forceVisibleOnly ($a_stat)
 Force visible access only. More...
 
 isVisibleOnlyForced ()
 Force unreadable. More...
 
 getCommands ()
 get all current commands for a specific ref id (in the permission context of the current user) More...
 
 getIconImageType ()
 Returns the icon image type. More...
 
 insertTitle ()
 insert item title More...
 
 insertSubstitutions ()
 Insert substitutions. More...
 
 insertDescription ()
 insert item description More...
 
 insertSearchFragment ()
 Insert highlighted search fragment. More...
 
 insertRelevance ()
 insert relevance More...
 
 setMode ($a_mode)
 set output mode More...
 
 getMode ()
 get output mode More...
 
 setConditionDepth ($a_depth)
 set depth for precondition output (stops at level 5) More...
 
 isMode ($a_mode)
 check current output mode More...
 
 insertProperties ($a_item='')
 insert properties More...
 
 insertNoticeProperties ()
 
 insertPayment ()
 insert payment information More...
 
 insertPreconditions ()
 insert all missing preconditions More...
 
 insertCommand ($a_href, $a_text, $a_frame="", $a_img="", $a_cmd="", $a_onclick="")
 insert command button More...
 
 insertDeleteCommand ()
 insert cut command More...
 
 insertLinkCommand ()
 insert link command More...
 
 insertCutCommand ($a_to_repository=false)
 insert cut command More...
 
 insertCopyCommand ($a_to_repository=false)
 Insert copy command. More...
 
 insertPasteCommand ()
 Insert paste command. More...
 
 insertSubscribeCommand ()
 insert subscribe command More...
 
 insertInfoScreenCommand ()
 insert info screen command More...
 
 insertCommonSocialCommands ($a_header_actions=false)
 Insert common social commands (comments, notes, tagging) More...
 
 insertTimingsCommand ()
 insert edit timings command More...
 
 insertCommands ($a_use_asynch=false, $a_get_asynch_commands=false, $a_asynch_url="", $a_header_actions=false)
 insert all commands into html code More...
 
 enableComments ($a_value, $a_enable_comments_settings=true)
 Toogle comments action status. More...
 
 enableNotes ($a_value)
 Toogle notes action status. More...
 
 enableTags ($a_value)
 Toogle tags action status. More...
 
 enableRating ($a_value, $a_text=null, $a_categories=false, array $a_ctrl_path=null)
 Toogle rating action status. More...
 
 enableMultiDownload ($a_value)
 Toggles whether multiple objects can be downloaded at once or not. More...
 
 insertMultiDownloadCommand ()
 
 enableDownloadCheckbox ($a_ref_id, $a_value)
 
 getDownloadCheckboxState ()
 
 setHeaderSubObject ($a_type, $a_id)
 Set sub object identifier. More...
 
 addHeaderIcon ($a_id, $a_img, $a_tooltip=null, $a_onclick=null, $a_status_text=null, $a_href=null)
 
 addHeaderIconHTML ($a_id, $a_html)
 
 setAjaxHash ($a_hash)
 
 getHeaderAction ()
 Get header action. More...
 
 appendRepositoryFrameParameter ($a_link)
 workaround: all links into the repository (from outside) must tell repository to setup the frameset More...
 
 modifySAHSlaunch ($a_link, $wtarget)
 workaround: SAHS in new javavasript-created window or iframe More...
 
 insertPath ()
 insert path More...
 
 insertProgressInfo ()
 insert progress info More...
 
 insertIconsAndCheckboxes ()
 Insert icons and checkboxes. More...
 
 insertSubItems ()
 Insert subitems. More...
 
 insertPositionField ()
 Insert field for positioning. More...
 
 adminCommandsIncluded ()
 returns whether any admin commands (link, delete, cut) are included in the output More...
 
 storeAccessCache ()
 Store access cache. More...
 
 getListItemHTML ($a_ref_id, $a_obj_id, $a_title, $a_description, $a_use_asynch=false, $a_get_asynch_commands=false, $a_asynch_url="", $a_context=self::CONTEXT_REPOSITORY)
 Get all item information (title, commands, description) in HTML. More...
 
 setParentRefId ($a_ref_id)
 Set current parent ref id to enable unique js-ids (sessions, etc.) More...
 
 getCommandsHTML ()
 Get commands HTML (must be called after get list item html) More...
 
 isSideBlock ()
 Returns whether current item is a block in a side column or not. More...
 
 setBoldTitle ($a_bold_title)
 @access public @params boolean $a_bold_title set the item title bold More...
 
 isTitleBold ()
 @access public More...
 
 enableTimings ($a_status)
 enable timings link More...
 
 isFileUploadAllowed ()
 Gets a value indicating whether file uploads to this object are allowed or not. More...
 
 insertFileUpload ()
 Inserts a file upload component. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ilObjectListGUI
static prepareJsLinks ($a_redraw_url, $a_notes_url, $a_tags_url, $a_tpl=null)
 Insert js/ajax links into template
More...
 
static preloadCommonProperties ($a_obj_ids, $a_context)
 Preload common properties. More...
 
- Data Fields inherited from ilObjectListGUI
const DETAILS_MINIMAL = 10
 
const DETAILS_SEARCH = 20
 
const DETAILS_ALL = 30
 
const CONTEXT_REPOSITORY = 1
 
const CONTEXT_WORKSPACE = 2
 
const CONTEXT_SHOP = 3
 
const CONTEXT_WORKSPACE_SHARING = 4
 
const CONTEXT_PERSONAL_DESKTOP = 5
 
const CONTEXT_SEARCH = 6
 
const DOWNLOAD_CHECKBOX_NONE = 0
 
const DOWNLOAD_CHECKBOX_ENABLED = 1
 
const DOWNLOAD_CHECKBOX_DISABLED = 2
 
 $ctrl
 
 $description_enabled = true
 
 $preconditions_enabled = true
 
 $properties_enabled = true
 
 $notice_properties_enabled = true
 
 $commands_enabled = true
 
 $cust_prop = array()
 
 $cust_commands = array()
 
 $info_screen_enabled = false
 
 $condition_depth = 0
 
 $std_cmd_only = false
 
 $sub_item_html = array()
 
 $multi_download_enabled = false
 
 $download_checkbox_state = self::DOWNLOAD_CHECKBOX_NONE
 
- Protected Member Functions inherited from ilObjectListGUI
 buildGotoLink ()
 
 insertPaymentCommand ($has_extension_prices=false)
 
 parseConditions ($toggle_id, $conditions, $obligatory=true)
 
 modifyTitleLink ($a_default_link)
 
 resetCustomData ()
 reset properties and commands More...
 
 getUniqueItemId ($a_as_div=false)
 Get unique item identifier (for js-actions) More...
 
 isCommentsActivated ($a_type, $a_ref_id, $a_obj_id, $a_header_actions, $a_check_write_access=true)
 Check comments status against comments settings and context. More...
 
- Protected Attributes inherited from ilObjectListGUI
 $obj_id
 
 $ref_id
 
 $type
 
 $sub_obj_id
 
 $sub_obj_type
 
 $substitutions = null
 
 $substitutions_enabled = false
 
 $icons_enabled = false
 
 $checkboxes_enabled = false
 
 $position_enabled = false
 
 $progress_enabled = false
 
 $item_detail_links_enabled = false
 
 $item_detail_links = array()
 
 $item_detail_links_intro = ''
 
 $search_fragments_enabled = false
 
 $search_fragment = ''
 
 $path_linked = false
 
 $enabled_relevance = false
 
 $relevance = 0
 
 $expand_enabled = false
 
 $is_expanded = true
 
 $bold_title = false
 
 $copy_enabled = true
 
 $details_level = self::DETAILS_ALL
 
 $reference_ref_id = false
 
 $separate_commands = false
 
 $search_fragment_enabled = false
 
 $additional_information = false
 
 $static_link_enabled = false
 
 $repository_transfer_enabled = false
 
 $shared = false
 
 $restrict_to_goto = false
 
 $comments_enabled = false
 
 $comments_settings_enabled = false
 
 $notes_enabled = false
 
 $tags_enabled = false
 
 $rating_enabled = false
 
 $rating_categories_enabled = false
 
 $rating_text = false
 
 $rating_ctrl_path = false
 
 $timings_enabled = true
 
 $force_visible_only = false
 
 $prevent_duplicate_commands = array()
 
 $parent_ref_id
 
 $title_link = ''
 
 $title_link_disabled = false
 
- Static Protected Attributes inherited from ilObjectListGUI
static $cnt_notes = array()
 
static $cnt_tags = array()
 
static $tags = array()
 
static $comments_activation = array()
 
static $preload_done = false
 
static $js_unique_id = 0
 
static $tpl_file_name = "tpl.container_list_item.html"
 
static $tpl_component = "Services/Container"
 

Detailed Description

Member Function Documentation

◆ getCommandFrame()

ilObjFileListGUI::getCommandFrame (   $a_cmd)

Get command target frame.

Parameters
string$a_cmdcommand
Returns
string command target frame

Reimplemented from ilObjectListGUI.

Definition at line 54 of file class.ilObjFileListGUI.php.

55 {
56 if(IS_PAYMENT_ENABLED)
57 {
58 include_once 'Services/Payment/classes/class.ilPaymentObject.php';
59 if(ilPaymentObject::_isBuyable($this->ref_id) &&
60 !ilPaymentObject::_hasAccess($this->ref_id))
61 {
62 return '';
63 }
64 }
65 $frame = "";
66 switch($a_cmd)
67 {
68 // BEGIN WebDAV: View inline objects in a blank window
69 case 'sendfile' :
70 require_once('Modules/File/classes/class.ilObjFileAccess.php');
71 if (ilObjFileAccess::_isFileInline($this->title))
72 {
73 $frame = '_blank';
74 }
75 break;
76 // END WebDAV View inline objects in a blank window
77
78 case "":
79 $frame = ilFrameTargetInfo::_getFrame("RepositoryContent");
80 break;
81
82 default:
83 }
84
85 return $frame;
86 }
static _getFrame($a_class, $a_type='')
Get content frame name.
static _isFileInline($a_file_name)
Returns true, if the specified file shall be displayed inline in the browser.
static _isBuyable($a_ref_id, $a_subtype='')
static _hasAccess($a_ref_id, $a_transaction=0, $a_subtype='')

References ilFrameTargetInfo\_getFrame(), ilPaymentObject\_hasAccess(), ilPaymentObject\_isBuyable(), and ilObjFileAccess\_isFileInline().

+ Here is the call graph for this function:

◆ getCommandImage()

ilObjFileListGUI::getCommandImage (   $a_cmd)

Get command link url.

Parameters
int$a_ref_idreference id
string$a_cmdcommand Get command icon image

Reimplemented from ilObjectListGUI.

Definition at line 208 of file class.ilObjFileListGUI.php.

209 {
210 switch ($a_cmd)
211 {
212 default:
213 return "";
214 }
215 }

◆ getCommandLink()

ilObjFileListGUI::getCommandLink (   $a_cmd)

Get command link url.

Parameters
string$a_cmdThe command to get the link for.
Returns
string The command link.

Reimplemented from ilObjectListGUI.

Definition at line 223 of file class.ilObjFileListGUI.php.

224 {
225 // overwritten to always return the permanent download link
226
227 // only create permalink for repository
228 if ($a_cmd == "sendfile" && $this->context == self::CONTEXT_REPOSITORY)
229 {
230 // return the perma link for downloads
231 return ilObjFileAccess::_getPermanentDownloadLink($this->ref_id);
232 }
233
234 return parent::getCommandLink($a_cmd);
235 }
static _getPermanentDownloadLink($ref_id)
Gets the permanent download link for the file.

References ilObjFileAccess\_getPermanentDownloadLink().

Referenced by getProperties().

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

◆ getIconImageType()

ilObjFileListGUI::getIconImageType ( )

Returns the icon image type.

For most objects, this is same as the object type, e.g. 'cat','fold'. We can return here other values, to express a specific state of an object, e.g. 'crs_offline", and/or to express a specific kind of object, e.g. 'file_inline'.

Reimplemented from ilObjectListGUI.

Definition at line 96 of file class.ilObjFileListGUI.php.

97 {
98 include_once('Modules/File/classes/class.ilObjFileAccess.php');
99
100 return ilObjFileAccess::_isFileInline($this->title) ? $this->type.'_inline' : $this->type;
101 }

References ilObjectListGUI\$type, and ilObjFileAccess\_isFileInline().

+ Here is the call graph for this function:

◆ getProperties()

ilObjFileListGUI::getProperties ( )

Get item properties.

Returns
array array of property arrays: "alert" (boolean) => display as an alert property (usually in red) "property" (string) => property name "value" (string) => property value

Definition at line 126 of file class.ilObjFileListGUI.php.

127 {
128 global $lng, $ilUser;
129
130 // BEGIN WebDAV: Get parent properties
131 $props = parent::getProperties();
132 // END WebDAV: Get parent properties
133
134 // to do: implement extra smaller file info object
135 include_once("./Modules/File/classes/class.ilObjFileAccess.php");
136
137 // Display a warning if a file is not a hidden Unix file, and
138 // the filename extension is missing
139 if (! preg_match('/^\\.|\\.[a-zA-Z0-9]+$/', $this->title))
140 {
141 $props[] = array("alert" => false, "property" => $lng->txt("filename_interoperability"),
142 "value" => $lng->txt("filename_extension_missing"),
143 'propertyNameVisible' => false);
144 }
145
146 // BEGIN WebDAV: Only display relevant information.
147 $props[] = array("alert" => false, "property" => $lng->txt("type"),
148 "value" => ilObjFileAccess::_getFileExtension($this->title),
149 'propertyNameVisible' => false
150 );
151
152 $fileData = ilObjFileAccess::getListGUIData($this->obj_id);
153 if(is_array($fileData))
154 {
155 $props[] = array("alert" => false, "property" => $lng->txt("size"),
156 "value" => ilFormat::formatSize($fileData['size'], 'short'),
157 'propertyNameVisible' => false);
158 $version = $fileData['version'];
159 if ($version > 1)
160 {
161 // add versions link
162 if (parent::checkCommandAccess("write", "versions", $this->ref_id, $this->type))
163 {
164 $link = $this->getCommandLink("versions");
165 $value = "<a href=\"$link\">".$lng->txt("version").": $version</a>";
166 }
167 else
168 {
169 $value = $lng->txt("version").": $version";
170 }
171 $props[] = array("alert" => false, "property" => $lng->txt("version"),
172 "value" => $value,
173 "propertyNameVisible" => false);
174 }
175
176 // #6040
177 if($fileData["date"])
178 {
179 $props[] = array("alert" => false, "property" => $lng->txt("last_update"),
180 "value" => ilDatePresentation::formatDate(new ilDateTime($fileData["date"],IL_CAL_DATETIME)),
181 'propertyNameVisible' => false);
182 }
183 }
184 // END WebDAV: Only display relevant information.
185
186 return $props;
187 }
const IL_CAL_DATETIME
static formatDate(ilDateTime $date)
Format a date @access public.
@classDescription Date and time handling
static formatSize($size, $a_mode='short', $a_lng=null)
Returns the specified file size value in a human friendly form.
static _getFileExtension($a_file_name)
Gets the file extension of the specified file name.
static getListGUIData($a_obj_id)
getCommandLink($a_cmd)
Get command link url.
global $lng
Definition: privfeed.php:40
global $ilUser
Definition: imgupload.php:15

References $ilUser, $lng, ilObjFileAccess\_getFileExtension(), ilDatePresentation\formatDate(), ilFormat\formatSize(), getCommandLink(), ilObjFileAccess\getListGUIData(), and IL_CAL_DATETIME.

+ Here is the call graph for this function:

◆ getTitle()

ilObjFileListGUI::getTitle ( )

getTitle overwritten in class.ilObjLinkResourceList.php

Returns
string title

Reimplemented from ilObjectListGUI.

Definition at line 110 of file class.ilObjFileListGUI.php.

111 {
112 // Remove filename extension from title
113 return preg_replace('/\\.[a-z0-9]+\\z/i','', $this->title);
114 }

◆ ilObjFileListGUI()

ilObjFileListGUI::ilObjFileListGUI ( )

constructor

Definition at line 22 of file class.ilObjFileListGUI.php.

23 {
24 $this->ilObjectListGUI();
25 }
ilObjectListGUI()
constructor

References ilObjectListGUI\ilObjectListGUI().

+ Here is the call graph for this function:

◆ init()

ilObjFileListGUI::init ( )

initialisation

Reimplemented from ilObjectListGUI.

Definition at line 30 of file class.ilObjFileListGUI.php.

31 {
32 $this->delete_enabled = true;
33 $this->cut_enabled = true;
34 $this->copy_enabled = true;
35 $this->subscribe_enabled = true;
36 $this->link_enabled = true;
37 $this->payment_enabled = true;
38 $this->info_screen_enabled = true;
39 $this->type = "file";
40 $this->gui_class_name = "ilobjfilegui";
41
42 // general commands array
43 include_once('./Modules/File/classes/class.ilObjFileAccess.php');
44 $this->commands = ilObjFileAccess::_getCommands();
45 }
_getCommands()
get commands

References ilObjFileAccess\_getCommands().

+ Here is the call graph for this function:

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