ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilObjFileListGUI Class Reference

Class ilObjFileListGUI. More...

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

Public Member Functions

 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 icon image. More...
 
 getCommandLink ($a_cmd)
 Get command link url. More...
 
- Public Member Functions inherited from ilObjectListGUI
 __construct ($a_context=self::CONTEXT_REPOSITORY)
 constructor More...
 
 setContainerObject ($container_obj)
 set the container object (e.g categorygui) Used for link, delete ... 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 ()
 
 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="")
 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 ()
 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 ()
 insert properties More...
 
 insertNoticeProperties ()
 
 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)
 
 addHeaderGlyph ($a_id, $a_glyph, $a_onclick=null)
 
 setAjaxHash ($a_hash)
 
 getHeaderAction (ilTemplate $a_main_tpl=null)
 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="")
 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)
 public boolean $a_bold_title set the item title bold More...
 
 isTitleBold ()
 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_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 ()
 
 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
 $access
 
 $lng
 
 $user
 
 $obj_definition
 
 $tree
 
 $settings
 
 $tpl
 
 $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
 
 $context
 
 $title_link = ''
 
 $title_link_disabled = false
 
 $ui
 
- 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

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

References ilFrameTargetInfo\_getFrame(), and ilObjFileAccess\_isFileInline().

45  {
46  $frame = "";
47  switch ($a_cmd) {
48  case 'sendfile':
49  require_once('Modules/File/classes/class.ilObjFileAccess.php');
50  if (ilObjFileAccess::_isFileInline($this->title)) {
51  $frame = '_blank';
52  }
53  break;
54  case "":
55  $frame = ilFrameTargetInfo::_getFrame("RepositoryContent");
56  break;
57 
58  default:
59  }
60 
61  return $frame;
62  }
static _isFileInline($a_file_name)
Returns true, if the specified file shall be displayed inline in the browser.
static _getFrame($a_class, $a_type='')
Get content frame name.
+ Here is the call graph for this function:

◆ getCommandImage()

ilObjFileListGUI::getCommandImage (   $a_cmd)

Get command icon image.

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

179  {
180  switch ($a_cmd) {
181  default:
182  return "";
183  }
184  }

◆ getCommandLink()

ilObjFileListGUI::getCommandLink (   $a_cmd)

Get command link url.

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

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

References ilObjFileAccess\_getPermanentDownloadLink().

Referenced by getProperties().

195  {
196  // overwritten to always return the permanent download link
197 
198  // only create permalink for repository
199  if ($a_cmd == "sendfile" && $this->context == self::CONTEXT_REPOSITORY) {
200  // return the perma link for downloads
201  return ilObjFileAccess::_getPermanentDownloadLink($this->ref_id);
202  }
203 
204  return parent::getCommandLink($a_cmd);
205  }
static _getPermanentDownloadLink($ref_id)
Gets the permanent download link for the file.
+ 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'.

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

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

73  {
74  include_once('Modules/File/classes/class.ilObjFileAccess.php');
75 
76  return ilObjFileAccess::_isFileInline($this->title) ? $this->type . '_inline' : $this->type;
77  }
static _isFileInline($a_file_name)
Returns true, if the specified file shall be displayed inline in the browser.
+ 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 100 of file class.ilObjFileListGUI.php.

References $DIC, $version, ilObjFileAccess\_getFileExtension(), array, ilDatePresentation\formatDate(), ilUtil\formatSize(), getCommandLink(), ilObjFileAccess\getListGUIData(), and IL_CAL_DATETIME.

101  {
102  global $DIC;
103 
104  $props = parent::getProperties();
105 
106  // to do: implement extra smaller file info object
107 
108  // Display a warning if a file is not a hidden Unix file, and
109  // the filename extension is missing
110  if (!preg_match('/^\\.|\\.[a-zA-Z0-9]+$/', $this->title)) {
111  $props[] = array(
112  "alert" => false,
113  "property" => $DIC->language()->txt("filename_interoperability"),
114  "value" => $DIC->language()->txt("filename_extension_missing"),
115  'propertyNameVisible' => false,
116  );
117  }
118 
119  $props[] = array(
120  "alert" => false,
121  "property" => $DIC->language()->txt("type"),
122  "value" => ilObjFileAccess::_getFileExtension($this->title),
123  'propertyNameVisible' => false,
124  );
125 
126  $fileData = ilObjFileAccess::getListGUIData($this->obj_id);
127  if (is_array($fileData)) {
128  $props[] = array(
129  "alert" => false,
130  "property" => $DIC->language()->txt("size"),
131  "value" => ilUtil::formatSize($fileData['size'], 'short'),
132  'propertyNameVisible' => false,
133  );
134  $version = $fileData['version'];
135  if ($version > 1) {
136  // add versions link
137  if (parent::checkCommandAccess("write", "versions", $this->ref_id, $this->type)) {
138  $link = $this->getCommandLink("versions");
139  $value = "<a href=\"$link\">" . $DIC->language()->txt("version") . ": $version</a>";
140  } else {
141  $value = $DIC->language()->txt("version") . ": $version";
142  }
143  $props[] = array(
144  "alert" => false,
145  "property" => $DIC->language()->txt("version"),
146  "value" => $value,
147  "propertyNameVisible" => false,
148  );
149  }
150 
151  // #6040
152  if ($fileData["date"]) {
153  $props[] = array(
154  "alert" => false,
155  "property" => $DIC->language()->txt("last_update"),
156  "value" => ilDatePresentation::formatDate(new ilDateTime($fileData["date"], IL_CAL_DATETIME)),
157  'propertyNameVisible' => false,
158  );
159  }
160 
161  if ($fileData["page_count"]) {
162  $props[] = array(
163  "alert" => false,
164  "property" => $DIC->language()->txt("page_count"),
165  "value" => $fileData["page_count"],
166  'propertyNameVisible' => true,
167  );
168  }
169  }
170 
171  return $props;
172  }
const IL_CAL_DATETIME
global $DIC
Definition: saml.php:7
static _getFileExtension($a_file_name)
Gets the file extension of the specified file name.
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false)
Format a date public.
Date and time handling
Create styles array
The data for the language used.
static formatSize($size, $a_mode='short', $a_lng=null)
Returns the specified file size value in a human friendly form.
getCommandLink($a_cmd)
Get command link url.
static getListGUIData($a_obj_id)
+ Here is the call graph for this function:

◆ getTitle()

ilObjFileListGUI::getTitle ( )

getTitle overwritten in class.ilObjLinkResourceList.php

Returns
string title

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

86  {
87  // Remove filename extension from title
88  return preg_replace('/\\.[a-z0-9]+\\z/i', '', $this->title);
89  }

◆ init()

ilObjFileListGUI::init ( )

initialisation

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

References ilObjFileAccess\_getCommands().

21  {
22  $this->delete_enabled = true;
23  $this->cut_enabled = true;
24  $this->copy_enabled = true;
25  $this->subscribe_enabled = true;
26  $this->link_enabled = true;
27  $this->info_screen_enabled = true;
28  $this->type = "file";
29  $this->gui_class_name = "ilobjfilegui";
30 
31  // general commands array
32  include_once('./Modules/File/classes/class.ilObjFileAccess.php');
33  $this->commands = ilObjFileAccess::_getCommands();
34  }
static _getCommands()
get commands
+ Here is the call graph for this function:

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