Moodle APIs 4.3
Moodle 4.3.6 (Build: 20240812)
|
Base class for things in the tree navigated by file_browser. More...
Public Member Functions | |
__construct ($browser, $context) | |
Constructor. | |
copy_to_pathname ($pathname) | |
Copy content of this file to local storage, overriding current file if needed. | |
copy_to_storage ($filerecord) | |
Copy content of this file to local storage, overriding current file if needed. | |
count_non_empty_children ($extensions=' *', $limit=1) | |
Returns the number of children which are either files matching the specified extensions or folders containing at least one such file. | |
create_directory ($newdirname, $userid=NULL) | |
Create new directory, may throw exception - make sure params are valid. | |
create_file_from_pathname ($newfilename, $pathname, $userid=NULL) | |
Create new file from pathname - make sure params are valid. | |
create_file_from_storedfile ($newfilename, $fid, $userid=NULL) | |
Create new file from stored file - make sure params are valid. | |
create_file_from_string ($newfilename, $content, $userid=NULL) | |
Create new file from string - make sure params are valid. | |
delete () | |
Delete file, make sure file is deletable first. | |
get_author () | |
Returns the author name of the file. | |
get_children () | |
Returns list of children. | |
get_filesize () | |
Returns file size in bytes, null for directories. | |
get_license () | |
Returns the license type of the file. | |
get_mimetype () | |
Returns mimetype. | |
get_non_empty_children ($extensions=' *') | |
Returns list of children which are either files matching the specified extensions or folders that contain at least one such file. | |
get_params () | |
Returns list of standard virtual file/directory identification. | |
get_params_rawencoded () | |
Returns array of url encoded params. | |
get_parent () | |
Returns parent file_info instance. | |
get_readable_fullname () | |
Returns the localised human-readable name of the file together with virtual path. | |
get_sortorder () | |
Returns the sort order of the file. | |
get_source () | |
Returns the source of the file. | |
get_status () | |
Returns file status flag. | |
get_timecreated () | |
Returns time created unix timestamp if known. | |
get_timemodified () | |
Returns time modified unix timestamp if known. | |
get_url ($forcedownload=false, $https=false) | |
Returns file download url. | |
get_visible_name () | |
Returns localised visible name. | |
is_directory () | |
Whether or not this is a directory. | |
is_empty_area () | |
Is this info area and is it "empty"? Are there any files in subfolders? | |
is_external_file () | |
Whether or not this is a external resource. | |
is_readable () | |
Whether or not I can read content of this file or enter directory. | |
is_writable () | |
Whether or not new files or directories can be added. | |
Protected Member Functions | |
build_search_files_sql ($extensions, $prefix=null) | |
Builds SQL sub query (WHERE clause) for selecting files with the specified extensions. | |
Protected Attributes | |
file_browser | $browser |
File browser instance. | |
context | $context |
File context. | |
Base class for things in the tree navigated by file_browser.
file_info::__construct | ( | $browser, | |
$context ) |
Constructor.
file_browser | $browser | file_browser instance |
stdClass | $context |
Reimplemented in file_info_context_system.
|
protected |
Builds SQL sub query (WHERE clause) for selecting files with the specified extensions.
If $extensions == '*' (any file), the result is array('', array()) otherwise the result is something like array('AND filename ...', array(...))
string | array | $extensions | - either '*' or array of lowercase extensions, i.e. array('.gif','.jpg') |
string | $prefix | prefix for DB table files in the query (empty by default) |
array | of two elements: $sql - sql where clause and $params - array of parameters |
file_info::copy_to_pathname | ( | $pathname | ) |
Copy content of this file to local storage, overriding current file if needed.
string | $pathname | real local full file name |
boolean | success |
Reimplemented in file_info_stored.
file_info::copy_to_storage | ( | $filerecord | ) |
Copy content of this file to local storage, overriding current file if needed.
array | stdClass | $filerecord | contains contextid, component, filearea, itemid, filepath, filename and optionally other attributes of the new file |
bool | success |
Reimplemented in file_info_stored.
file_info::count_non_empty_children | ( | $extensions = '*', | |
$limit = 1 ) |
Returns the number of children which are either files matching the specified extensions or folders containing at least one such file.
We usually don't need the exact number of non empty children if it is >=2 (see param $limit) This function is used by repository_local to evaluate if the folder is empty. But it also can be used to check if folder has only one subfolder because in some cases this subfolder can be skipped.
It is strongly recommended to overwrite this function so it uses a proper SQL query and does not create file_info objects (later might require a lot of time and memory usage on big sites).
string | array | $extensions,for | example '*' or array('.gif','.jpg') |
int | $limit | stop counting after at least $limit non-empty children are found |
int |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_section, file_info_context_course, file_info_context_coursecat, file_info_context_module, file_info_stored, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
file_info::create_directory | ( | $newdirname, | |
$userid = NULL ) |
Create new directory, may throw exception - make sure params are valid.
string | $newdirname | name of new directory |
int | $userid | id of author, default $USER->id |
file_info | new directory |
Reimplemented in file_info_stored.
file_info::create_file_from_pathname | ( | $newfilename, | |
$pathname, | |||
$userid = NULL ) |
Create new file from pathname - make sure params are valid.
string | $newfilename | name of new file |
string | $pathname | location of file |
int | $userid | id of author, default $USER->id |
file_info | new file |
Reimplemented in file_info_stored.
file_info::create_file_from_storedfile | ( | $newfilename, | |
$fid, | |||
$userid = NULL ) |
Create new file from stored file - make sure params are valid.
string | $newfilename | name of new file |
int | stored_file | $fid | id or stored_file of file |
int | $userid | id of author, default $USER->id |
file_info | new file |
Reimplemented in file_info_stored.
file_info::create_file_from_string | ( | $newfilename, | |
$content, | |||
$userid = NULL ) |
Create new file from string - make sure params are valid.
string | $newfilename | name of new file |
string | $content | of file |
int | $userid | id of author, default $USER->id |
file_info | new file |
Reimplemented in file_info_stored.
file_info::delete | ( | ) |
Delete file, make sure file is deletable first.
bool | success |
Reimplemented in file_info_stored.
file_info::get_author | ( | ) |
Returns the author name of the file.
string | author name or null |
Reimplemented in file_info_stored.
|
abstract |
Returns list of children.
array | of file_info instances |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_legacy, file_info_area_course_section, file_info_context_course, file_info_context_coursecat, file_info_context_module, file_info_context_user, file_info_stored, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
file_info::get_filesize | ( | ) |
Returns file size in bytes, null for directories.
int | bytes or null if not known |
Reimplemented in file_info_stored.
file_info::get_license | ( | ) |
Returns the license type of the file.
string | license short name or null |
Reimplemented in file_info_stored.
file_info::get_mimetype | ( | ) |
Returns mimetype.
string | mimetype or null if not known |
Reimplemented in file_info_stored.
file_info::get_non_empty_children | ( | $extensions = '*' | ) |
Returns list of children which are either files matching the specified extensions or folders that contain at least one such file.
It is recommended to overwrite this function so it uses a proper SQL query and does not create unnecessary file_info objects (might require a lot of time and memory usage on big sites).
string | array | $extensions,either | '*' or array of lowercase extensions, i.e. array('.gif','.jpg') |
array | of file_info instances |
Reimplemented in book_file_info, data_file_info_container, file_info_area_course_legacy, file_info_context_course, file_info_context_module, file_info_stored, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
file_info::get_params | ( | ) |
Returns list of standard virtual file/directory identification.
The difference from stored_file parameters is that null values are allowed in all fields
array | with keys contextid, component, filearea, itemid, filepath and filename |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_section, file_info_stored, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
file_info::get_params_rawencoded | ( | ) |
Returns array of url encoded params.
array | with numeric keys |
|
abstract |
Returns parent file_info instance.
file_info | or null for root |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_section, file_info_context_course, file_info_context_coursecat, file_info_context_module, file_info_context_system, file_info_context_user, file_info_stored, folder_content_file_info, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, page_content_file_info, resource_content_file_info, scorm_package_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
file_info::get_readable_fullname | ( | ) |
Returns the localised human-readable name of the file together with virtual path.
string |
Reimplemented in file_info_stored.
file_info::get_sortorder | ( | ) |
file_info::get_source | ( | ) |
Returns the source of the file.
string | a source url or null |
Reimplemented in file_info_stored.
file_info::get_status | ( | ) |
Returns file status flag.
int | 0 means file OK, anything else is a problem and file can not be used |
Reimplemented in file_info_stored.
file_info::get_timecreated | ( | ) |
Returns time created unix timestamp if known.
int | timestamp or null |
Reimplemented in file_info_stored.
file_info::get_timemodified | ( | ) |
Returns time modified unix timestamp if known.
int | timestamp or null |
Reimplemented in file_info_stored.
file_info::get_url | ( | $forcedownload = false, | |
$https = false ) |
Returns file download url.
bool | $forcedownload | whether or not force download |
bool | $https | whether or not force https |
string | url |
Reimplemented in file_info_area_course_legacy, and file_info_stored.
|
abstract |
Returns localised visible name.
string |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_section, file_info_context_course, file_info_context_coursecat, file_info_context_module, file_info_context_system, file_info_context_user, file_info_stored, folder_content_file_info, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, page_content_file_info, resource_content_file_info, scorm_package_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
|
abstract |
Whether or not this is a directory.
bool |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_section, file_info_context_course, file_info_context_coursecat, file_info_context_module, file_info_context_system, file_info_context_user, file_info_stored, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.
file_info::is_empty_area | ( | ) |
Is this info area and is it "empty"? Are there any files in subfolders?
This is used mostly in repositories to reduce the number of empty folders. This method may be very slow, use with care.
bool |
Reimplemented in file_info_area_backup_section, file_info_area_course_section, file_info_context_module, and file_info_stored.
file_info::is_external_file | ( | ) |
file_info::is_readable | ( | ) |
Whether or not I can read content of this file or enter directory.
bool |
Reimplemented in file_info_stored.
file_info::is_writable | ( | ) |
Whether or not new files or directories can be added.
bool |
Reimplemented in book_file_info, data_file_info_container, file_info_area_backup_section, file_info_area_course_section, file_info_context_course, file_info_context_coursecat, file_info_context_module, file_info_context_system, file_info_context_user, file_info_stored, forum_file_info_container, glossary_file_info_container, imscp_file_info, mod_lesson_file_info, workshop_file_info_overallfeedback_container, and workshop_file_info_submissions_container.