Elgg  Version 2.3
Public Member Functions | Protected Member Functions | List of all members
ElggFile Class Reference
Inheritance diagram for ElggFile:
ElggObject ElggEntity ElggData Locatable Importable Elgg\EntityIcon Loggable Exportable ElggIcon

Public Member Functions

 getMetadata ($name)
 {} More...
 
 setMetadata ($name, $value, $value_type= '', $multiple=false, $owner_guid=0, $access_id=null)
 {} More...
 
 setFilename ($name)
 Set the filename of this file. More...
 
 getFilename ()
 Return the filename. More...
 
 getFilenameOnFilestore ()
 Return the filename of this file as it is/will be stored on the filestore, which may be different to the filename. More...
 
 getFilestoreSize ($prefix= '', $container_guid=0)
 Return the size of the filestore associated with this file. More...
 
 getMimeType ()
 Get the mime type of the file. More...
 
 setMimeType ($mimetype)
 Set the mime type of the file. More...
 
 detectMimeType ($file=null, $default=null)
 Detects mime types based on filename or actual file. More...
 
 getSimpleType ()
 Get the simple type of the file. More...
 
 setDescription ($description)
 Set the optional file description. More...
 
 open ($mode)
 Open the file with the given mode. More...
 
 write ($data)
 Write data. More...
 
 read ($length, $offset=0)
 Read data. More...
 
 grabFile ()
 Gets the full contents of this file. More...
 
 close ()
 Close the file and commit changes. More...
 
 delete ($follow_symlinks=true)
 Delete this file. More...
 
 seek ($position)
 Seek a position in the file. More...
 
 tell ()
 Return the current position of the file. More...
 
 setModifiedTime ()
 Updates modification time of the file and clears stats cache for the file. More...
 
 getModifiedTime ()
 Returns file modification time. More...
 
 getSize ()
 Return the size of the file in bytes. More...
 
 size ()
 Return the size of the file in bytes. More...
 
 eof ()
 Return a boolean value whether the file handle is at the end of the file. More...
 
 exists ()
 Returns if the file exists. More...
 
 setFilestore (ElggFilestore $filestore)
 Set a filestore. More...
 
 save ()
 Save the file. More...
 
 transfer ($owner_guid, $filename=null)
 Transfer a file to a new owner and sets a new filename, copies file contents to a new location. More...
 
 acceptUploadedFile (UploadedFile $upload)
 Writes contents of the uploaded file to an instance of ElggFile. More...
 
 __sleep ()
 Get property names to serialize. More...
 
- Public Member Functions inherited from ElggObject
 __construct ($row=null)
 Create a new . More...
 
 getDisplayName ()
 {} More...
 
 setDisplayName ($displayName)
 {} More...
 
 getExportableValues ()
 Return an array of fields which can be exported. More...
 
 canComment ($user_guid=0, $default=null)
 Can a user comment on this object? More...
 
- Public Member Functions inherited from ElggEntity
 __clone ()
 Clone an entity. More...
 
 __set ($name, $value)
 Set an attribute or metadata value for this entity. More...
 
 set ($name, $value)
 Sets the value of an attribute or metadata. More...
 
 getOriginalAttributes ()
 Get the original values of attribute(s) that have been modified since the entity was persisted. More...
 
 __get ($name)
 Get an attribute or metadata value. More...
 
 get ($name)
 Return the value of an attribute or metadata. More...
 
 getDisplayName ()
 Get the entity's display name. More...
 
 setDisplayName ($displayName)
 Sets the title or name of this entity. More...
 
 getMetadata ($name)
 Return the value of a piece of metadata. More...
 
 __unset ($name)
 Unset a property from metadata or attribute. More...
 
 setMetadata ($name, $value, $value_type= '', $multiple=false, $owner_guid=0, $access_id=null)
 Set metadata on this entity. More...
 
 deleteMetadata ($name=null)
 Deletes all metadata on this object (metadata.entity_guid = $this->guid). More...
 
 deleteOwnedMetadata ($name=null)
 Deletes all metadata owned by this object (metadata.owner_guid = $this->guid). More...
 
 disableMetadata ($name= '')
 Disables metadata for this entity, optionally based on name. More...
 
 enableMetadata ($name= '')
 Enables metadata for this entity, optionally based on name. More...
 
 getVolatileData ($name)
 Get a piece of volatile (non-persisted) data on this entity. More...
 
 setVolatileData ($name, $value)
 Set a piece of volatile (non-persisted) data on this entity. More...
 
 storeInPersistedCache (\ElggSharedMemoryCache $cache, $last_action=0)
 Cache the entity in a persisted cache. More...
 
 deleteRelationships ($relationship=null)
 Remove all relationships to and from this entity. More...
 
 addRelationship ($guid_two, $relationship)
 Add a relationship between this an another entity. More...
 
 removeRelationship ($guid_two, $relationship)
 Remove a relationship. More...
 
 setPrivateSetting ($name, $value)
 Adds a private setting to this entity. More...
 
 getPrivateSetting ($name)
 Returns a private setting value. More...
 
 removePrivateSetting ($name)
 Removes private setting. More...
 
 deleteAnnotations ($name=null)
 Deletes all annotations on this object (annotations.entity_guid = $this->guid). More...
 
 deleteOwnedAnnotations ($name=null)
 Deletes all annotations owned by this object (annotations.owner_guid = $this->guid). More...
 
 disableAnnotations ($name= '')
 Disables annotations for this entity, optionally based on name. More...
 
 enableAnnotations ($name= '')
 Enables annotations for this entity, optionally based on name. More...
 
 annotate ($name, $value, $access_id=ACCESS_PRIVATE, $owner_guid=0, $vartype="")
 Adds an annotation to an entity. More...
 
 getAnnotations ($options=array(), $limit=50, $offset=0, $order="asc")
 Gets an array of annotations. More...
 
 countAnnotations ($name="")
 Count annotations. More...
 
 getAnnotationsAvg ($name)
 Get the average of an integer type annotation. More...
 
 getAnnotationsSum ($name)
 Get the sum of integer type annotations of a given name. More...
 
 getAnnotationsMin ($name)
 Get the minimum of integer type annotations of given name. More...
 
 getAnnotationsMax ($name)
 Get the maximum of integer type annotations of a given name. More...
 
 countComments ()
 Count the number of comments attached to this entity. More...
 
 getEntitiesFromRelationship ($options=array(), $inverse=false, $limit=50, $offset=0)
 Gets an array of entities with a relationship to this entity. More...
 
 countEntitiesFromRelationship ($relationship, $inverse_relationship=false)
 Gets the number of entities from a specific relationship type. More...
 
 canEdit ($user_guid=0)
 Can a user edit this entity? More...
 
 canDelete ($user_guid=0)
 Can a user delete this entity? More...
 
 canEditMetadata ($metadata=null, $user_guid=0)
 Can a user edit metadata on this entity? More...
 
 canWriteToContainer ($user_guid=0, $type= 'all', $subtype= 'all')
 Can a user add an entity to this container. More...
 
 canComment ($user_guid=0, $default=null)
 Can a user comment on an entity? More...
 
 canAnnotate ($user_guid=0, $annotation_name= '')
 Can a user annotate an entity? More...
 
 getAccessID ()
 Returns the access_id. More...
 
 getGUID ()
 Returns the guid. More...
 
 getType ()
 Returns the entity type. More...
 
 getSubtype ()
 Get the entity subtype. More...
 
 getOwnerGUID ()
 Get the guid of the entity's owner. More...
 
 getOwnerEntity ()
 Gets the that owns this entity. More...
 
 setContainerGUID ($container_guid)
 Set the container for this object. More...
 
 getContainerGUID ()
 Gets the container GUID for this entity. More...
 
 getContainerEntity ()
 Get the container entity for this object. More...
 
 getTimeUpdated ()
 Returns the UNIX epoch time that this entity was last updated. More...
 
 getURL ()
 Gets the URL for this entity. More...
 
 setURL ($url)
 Overrides the URL returned by getURL() More...
 
 saveIconFromUploadedFile ($input_name, $type= 'icon', array $coords=array())
 Saves icons using an uploaded file as the source. More...
 
 saveIconFromLocalFile ($filename, $type= 'icon', array $coords=array())
 Saves icons using a local file as the source. More...
 
 saveIconFromElggFile (\ElggFile $file, $type= 'icon', array $coords=array())
 Saves icons using a file located in the data store as the source. More...
 
 getIcon ($size, $type= 'icon')
 Returns entity icon as an ElggIcon object The icon file may or may not exist on filestore. More...
 
 deleteIcon ($type= 'icon')
 Removes all icon files and metadata for the passed type of icon. More...
 
 getIconLastChange ($size, $type= 'icon')
 Returns the timestamp of when the icon was changed. More...
 
 hasIcon ($size, $type= 'icon')
 Returns if the entity has an icon of the passed type. More...
 
 getIconURL ($params=array())
 Get the URL for this entity's icon. More...
 
 addToSite ($site)
 Add this entity to a site. More...
 
 removeFromSite ($site)
 Remove this entity from a site. More...
 
 getSites ($options=array())
 Gets the sites this entity is a member of. More...
 
 isFullyLoaded ()
 Tests to see whether the object has been persisted. More...
 
 save ()
 Save an entity. More...
 
 refresh (\stdClass $row)
 Load new data from database into existing entity. More...
 
 disable ($reason="", $recursive=true)
 Disable this entity. More...
 
 enable ($recursive=true)
 Enable the entity. More...
 
 isEnabled ()
 Is this entity enabled? More...
 
 delete ($recursive=true)
 Deletes the entity. More...
 
 toObject ()
 {} More...
 
 getLocation ()
 Gets the 'location' metadata for the entity. More...
 
 setLocation ($location)
 Sets the 'location' metadata for the entity. More...
 
 setLatLong ($lat, $long)
 Set latitude and longitude metadata tags for a given entity. More...
 
 getLatitude ()
 Return the entity's latitude. More...
 
 getLongitude ()
 Return the entity's longitude. More...
 
 getExportableValues ()
 Returns an array of fields which can be exported. More...
 
 export ()
 Export this class into an array of ODD Elements containing all necessary fields. More...
 
 import (ODD $data)
 Import data from an parsed ODD xml data array. More...
 
 getSystemLogID ()
 Return an identification for the object for storage in the system log. More...
 
 getObjectFromID ($id)
 For a given ID, return the object associated with it. More...
 
 getTags ($tag_names=null)
 Returns tags for this entity. More...
 
 deleteAccessCollectionMemberships ()
 Remove the membership of all access collections for this entity (if the entity is a user) More...
 
 deleteOwnedAccessCollections ()
 Remove all access collections owned by this entity. More...
 
 updateLastAction ($posted=null)
 Update the last_action column in the entities table. More...
 
- Public Member Functions inherited from ElggData
 __isset ($name)
 Test if property is set either as an attribute or metadata. More...
 
 getURL ()
 Get a URL for this object. More...
 
 save ()
 Save this data to the appropriate database table. More...
 
 delete ()
 Delete this data. More...
 
 getTimeCreated ()
 Returns the UNIX epoch time that this entity was created. More...
 
 toObject ()
 Get a plain old object copy for public consumption. More...
 
 getClassName ()
 Return the class name of the object. More...
 
 rewind ()
 Iterator interface. More...
 
 current ()
 Iterator interface. More...
 
 key ()
 Iterator interface. More...
 
 next ()
 Iterator interface. More...
 
 valid ()
 Iterator interface. More...
 
 offsetSet ($key, $value)
 Array access interface. More...
 
 offsetGet ($key)
 Array access interface. More...
 
 offsetUnset ($key)
 Array access interface. More...
 
 offsetExists ($offset)
 Array access interface. More...
 

Protected Member Functions

 initializeAttributes ()
 Set subtype to 'file'. More...
 
 getFilestore ()
 Return a filestore suitable for saving this file. More...
 
- Protected Member Functions inherited from ElggObject
 initializeAttributes ()
 Initialize the attributes array to include the type, title, and description. More...
 
 load ($guid)
 Loads the full when given a guid. More...
 
 create ()
 {} More...
 
 update ()
 {} More...
 
 prepareObject ($object)
 {} More...
 
- Protected Member Functions inherited from ElggEntity
 initializeAttributes ()
 Initialize the attributes array. More...
 
 create ()
 Create a new entry in the entities table. More...
 
 update ()
 Update the entity in the database. More...
 
 load ($guid)
 Loads attributes from the entities table into the object. More...
 
 loadAdditionalSelectValues (array $data)
 Stores non-attributes from the loading of the entity as volatile data. More...
 
 prepareObject ($object)
 Prepare an object copy for toObject() More...
 
- Protected Member Functions inherited from ElggData
 initializeAttributes ()
 Initialize the attributes array. More...
 
 getDatabase ()
 Provides a pointer to the database object. More...
 
 get ($name)
 Fetch the specified attribute. More...
 
 set ($name, $value)
 Set the specified attribute. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ElggObject
static getExternalAttributes ()
 Get default values for attributes stored in a separate table. More...
 
- Protected Attributes inherited from ElggEntity
 $url_override
 If set, overrides the value of getURL() More...
 
 $temp_metadata = array()
 Holds metadata until entity is saved. More...
 
 $temp_annotations = array()
 Holds annotations until entity is saved. More...
 
 $temp_private_settings = array()
 Holds private settings until entity is saved. More...
 
 $volatile = array()
 Volatile data structure for this object, allows for storage of data in-memory that isn't sync'd back to the metadata table. More...
 
 $orig_attributes = array()
 Holds the original (persisted) attribute values that have been changed but not yet saved. More...
 
- Protected Attributes inherited from ElggData
 $attributes = array()
 The main attributes of an entity. More...
 
 $valid = false
 

Detailed Description

Definition at line 32 of file ElggFile.php.

Member Function Documentation

ElggFile::__sleep ( )

Get property names to serialize.

Returns
string[]

Definition at line 616 of file ElggFile.php.

ElggFile::acceptUploadedFile ( UploadedFile  $upload)

Writes contents of the uploaded file to an instance of ElggFile.

Note
Note that this function moves the file and populates properties, but does not call ElggFile::save().
This method will automatically assign a filename on filestore based on the upload time and filename. By default, the file will be written to /file directory on owner's filestore. You can change this directory, by setting 'filestore_prefix' property of the ElggFile instance before calling this method.
Parameters
UploadedFile$uploadUploaded file object
Returns
bool

Definition at line 557 of file ElggFile.php.

ElggFile::close ( )

Close the file and commit changes.

Returns
bool

Definition at line 288 of file ElggFile.php.

ElggFile::delete (   $follow_symlinks = true)

Delete this file.

Parameters
bool$follow_symlinksIf true, will also delete the target file if the current file is a symlink
Returns
bool

Definition at line 306 of file ElggFile.php.

ElggFile::detectMimeType (   $file = null,
  $default = null 
)

Detects mime types based on filename or actual file.

Note
This method can be called both dynamically and statically
Parameters
mixed$fileThe full path of the file to check. For uploaded files, use tmp_name.
mixed$defaultA default. Useful to pass what the browser thinks it is.
Since
1.7.12
Returns
mixed Detected type on success, false on failure.

Definition at line 156 of file ElggFile.php.

ElggFile::eof ( )

Return a boolean value whether the file handle is at the end of the file.

Returns
bool

Definition at line 391 of file ElggFile.php.

ElggFile::exists ( )

Returns if the file exists.

Returns
bool

Definition at line 402 of file ElggFile.php.

ElggFile::getFilename ( )

Return the filename.

Returns
string

Definition at line 91 of file ElggFile.php.

ElggFile::getFilenameOnFilestore ( )

Return the filename of this file as it is/will be stored on the filestore, which may be different to the filename.

Returns
string

Definition at line 101 of file ElggFile.php.

ElggFilestore null Cache for ElggFile::getFilestore ( )
protected

Return a filestore suitable for saving this file.

This filestore is either a pre-registered filestore, a filestore as recorded in metadata or the system default.

Returns
ElggFilestore
Exceptions
ClassNotFoundException

Definition at line 430 of file ElggFile.php.

ElggFile::getFilestoreSize (   $prefix = '',
  $container_guid = 0 
)

Return the size of the filestore associated with this file.

Parameters
string$prefixStorage prefix
int$container_guidThe container GUID of the checked filestore
Returns
int

Definition at line 113 of file ElggFile.php.

ElggFile::getMetadata (   $name)

{}

Definition at line 58 of file ElggFile.php.

ElggFile::getMimeType ( )

Get the mime type of the file.

Returns mimetype metadata value if set, otherwise attempts to detect it.

Returns
string

Definition at line 127 of file ElggFile.php.

ElggFile::getModifiedTime ( )

Returns file modification time.

Returns
int

Definition at line 361 of file ElggFile.php.

ElggFile::getSimpleType ( )

Get the simple type of the file.

Returns simpletype metadata value if set, otherwise parses it from mimetype

See also
elgg_get_file_simple_type
Returns
string 'document', 'audio', 'video', or 'general' if the MIME type was unrecognized

Definition at line 189 of file ElggFile.php.

ElggFile::getSize ( )

Return the size of the file in bytes.

Returns
int
Since
1.9

Definition at line 371 of file ElggFile.php.

ElggFile::grabFile ( )

Gets the full contents of this file.

Returns
mixed The file contents.

Definition at line 278 of file ElggFile.php.

ElggFile::initializeAttributes ( )
protected

Set subtype to 'file'.

Returns
void

Definition at line 49 of file ElggFile.php.

resource null File handle used to identify this file in a filestore Created by ElggFile::open (   $mode)

Open the file with the given mode.

Parameters
string$modeEither read/write/append
Returns
resource File handler
Exceptions
IOException
InvalidParameterException

Definition at line 218 of file ElggFile.php.

ElggFile::read (   $length,
  $offset = 0 
)

Read data.

Parameters
int$lengthAmount to read.
int$offsetThe offset to start from.
Returns
mixed Data or false

Definition at line 267 of file ElggFile.php.

ElggFile::save ( )

Save the file.

Write the file's data to the filestore and save the corresponding entity.

See also
ElggObject::save()
Returns
bool

Definition at line 489 of file ElggFile.php.

ElggFile::seek (   $position)

Seek a position in the file.

Parameters
int$positionPosition in bytes
Returns
bool

Definition at line 325 of file ElggFile.php.

ElggFile::setDescription (   $description)

Set the optional file description.

Parameters
string$descriptionThe description.
Returns
bool

Definition at line 204 of file ElggFile.php.

ElggFile::setFilename (   $name)

Set the filename of this file.

Parameters
string$nameThe filename.
Returns
void

Definition at line 82 of file ElggFile.php.

ElggFile::setFilestore ( ElggFilestore  $filestore)

Set a filestore.

Parameters
ElggFilestore$filestoreThe file store.
Returns
void

Definition at line 416 of file ElggFile.php.

ElggFile::setMetadata (   $name,
  $value,
  $value_type = '',
  $multiple = false,
  $owner_guid = 0,
  $access_id = null 
)

{}

Definition at line 68 of file ElggFile.php.

ElggFile::setMimeType (   $mimetype)

Set the mime type of the file.

Parameters
string$mimetypeThe mimetype
Returns
bool

Definition at line 140 of file ElggFile.php.

ElggFile::setModifiedTime ( )

Updates modification time of the file and clears stats cache for the file.

Returns
bool

Definition at line 346 of file ElggFile.php.

ElggFile::size ( )

Return the size of the file in bytes.

Returns
int

Definition at line 381 of file ElggFile.php.

ElggFile::tell ( )

Return the current position of the file.

Returns
int The file position

Definition at line 336 of file ElggFile.php.

ElggFile::transfer (   $owner_guid,
  $filename = null 
)

Transfer a file to a new owner and sets a new filename, copies file contents to a new location.

This is an alternative to using rename() which fails to move files to a non-existent directory under new owner's filestore directory

Parameters
int$owner_guidNew owner's guid
string$filenameNew filename (uses old filename if not set)
Returns
bool

Definition at line 520 of file ElggFile.php.

ElggFile::write (   $data)

Write data.

Parameters
string$dataThe data
Returns
bool

Definition at line 253 of file ElggFile.php.


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