Assets

Type
Class
Namespace
craft\services
Inherits
craft\services\Assets » yii\base\Component » yii\base\BaseObject
Implements
yii\base\Configurable
Since
3.0.0

Assets service.

An instance of the Assets service is globally accessible in Craft via Craft::$app->assets.

View source

# Public Properties

# currentUserTemporaryUploadFolder

Type
craft\models\VolumeFolder
Access
Read-only

View source

# totalAssets

Type
integer
Access
Read-only

View source

# userTemporaryUploadFolder

Type
craft\models\VolumeFolder
Access
Read-only

View source

# Public Methods

Method Description
__call() Calls the named method which is not a class method.
__clone() This method is called after the object is created by cloning an existing one.
__construct() Constructor.
__get() Returns the value of an object property.
__isset() Checks if a property is set, i.e. defined and not null.
__set() Sets value of an object property.
__unset() Sets an object property to null.
attachBehavior() Attaches a behavior to this component.
attachBehaviors() Attaches a list of behaviors to the component.
behaviors() Returns a list of behaviors that this component should behave as.
canGetProperty() Returns a value indicating whether a property can be read.
canSetProperty() Returns a value indicating whether a property can be set.
className() Returns the fully qualified name of this class.
createFolder() Save an Asset folder.
deleteFoldersByIds() Deletes a folder by its ID.
detachBehavior() Detaches a behavior from the component.
detachBehaviors() Detaches all behaviors from the component.
ensureBehaviors() Makes sure that the behaviors declared in behaviors() are attached to this component.
ensureFolderByFullPathAndVolume() Ensure a folder entry exists in the DB for the full path and return it's id. Depending on the use, it's possible to also ensure a physical folder exists.
findFolder() Finds the first folder that matches a given criteria.
findFolders() Finds folders that match a given criteria.
getAllDescendantFolders() Returns all of the folders that are descendants of a given folder.
getAssetById() Returns a file by its ID.
getAssetPreviewHandler() Returns the asset preview handler for a given asset, or null if the asset is not previewable.
getAssetUrl() Returns the URL for an asset, possibly with a given transform applied.
getBehavior() Returns the named behavior object.
getBehaviors() Returns all behaviors attached to this component.
getCurrentUserTemporaryUploadFolder() Return the current user's temporary upload folder.
getFolderById() Returns a folder by its ID.
getFolderByUid() Returns a folder by its UID.
getFolderTreeByFolderId() Get the folder tree for Assets by a folder id.
getFolderTreeByVolumeIds() Get the folder tree for Assets by volume ids
getIconPath() Returns a generic file extension icon path, that can be used as a fallback for assets that don't have a normal thumbnail.
getNameReplacementInFolder() Find a replacement for a filename
getRootFolderByVolumeId() Returns the root folder for a given volume ID.
getThumbPath() Returns the control panel thumbnail path for a given asset.
getThumbUrl() Returns the control panel thumbnail URL for a given asset.
getTotalAssets() Gets the total number of assets that match a given criteria.
getTotalFolders() Gets the total number of folders that match a given criteria.
getUserTemporaryUploadFolder() Returns the given user's temporary upload folder.
hasEventHandlers() Returns a value indicating whether there is any handler attached to the named event.
hasMethod() Returns a value indicating whether a method is defined.
hasProperty() Returns a value indicating whether a property is defined.
init() Initializes the object.
moveAsset() Move or rename an Asset.
off() Detaches an existing event handler from this component.
on() Attaches an event handler to an event.
renameFolderById() Rename a folder by it's id.
replaceAssetFile() Replace an Asset's file.
storeFolderRecord() Store a folder by model
trigger() Triggers an event.

# createFolder()

Save an Asset folder.

View source

Arguments

Throws

# deleteFoldersByIds()

Deletes a folder by its ID.

View source

Arguments

  • $folderIds (array, integer)
  • $deleteDir (boolean) – Should the volume directory be deleted along the record, if applicable. Defaults to true.

Throws

# ensureFolderByFullPathAndVolume()

Ensure a folder entry exists in the DB for the full path and return it's id. Depending on the use, it's possible to also ensure a physical folder exists.

View source

Arguments

Returns

integer

Throws

# findFolder()

Finds the first folder that matches a given criteria.

View source

Arguments

  • $criteria (mixed)

Returns

craft\models\VolumeFolder, null

# findFolders()

Finds folders that match a given criteria.

View source

Arguments

  • $criteria (mixed)

Returns

craft\models\VolumeFolder[]

# getAllDescendantFolders()

Returns all of the folders that are descendants of a given folder.

View source

Arguments

Returns

array

# getAssetById()

Returns a file by its ID.

View source

Arguments

Returns

craft\elements\Asset, null

# getAssetPreviewHandler()

Since
3.4.0

Returns the asset preview handler for a given asset, or null if the asset is not previewable.

View source

Arguments

Returns

craft\base\AssetPreviewHandlerInterface, null

# getAssetUrl()

Returns the URL for an asset, possibly with a given transform applied.

View source

Arguments

Returns

string, null

# getCurrentUserTemporaryUploadFolder()

DEPRECATED

Deprecated in 3.2.0. Use getUserTemporaryUploadFolder() instead.

Return the current user's temporary upload folder.

View source

Returns

craft\models\VolumeFolder

# getFolderById()

Returns a folder by its ID.

View source

Arguments

Returns

craft\models\VolumeFolder, null

# getFolderByUid()

Returns a folder by its UID.

View source

Arguments

Returns

craft\models\VolumeFolder, null

# getFolderTreeByFolderId()

Get the folder tree for Assets by a folder id.

View source

Arguments

Returns

array

# getFolderTreeByVolumeIds()

Get the folder tree for Assets by volume ids

View source

Arguments

  • $allowedVolumeIds (array)
  • $additionalCriteria (array) – Additional criteria for filtering the tree

Returns

array

# getIconPath()

Returns a generic file extension icon path, that can be used as a fallback for assets that don't have a normal thumbnail.

View source

Arguments

Returns

string

# getNameReplacementInFolder()

Find a replacement for a filename

View source

Arguments

  • $originalFilename (string) – The original filename for which to find a replacement.
  • $folderId (integer) – The folder in which to find the replacement

Returns

string – If a suitable filename replacement cannot be found.

Throws

# getRootFolderByVolumeId()

Returns the root folder for a given volume ID.

View source

Arguments

Returns

craft\models\VolumeFolder, null – The root folder in that volume, or null if the volume doesn’t exist

# getThumbPath()

Returns the control panel thumbnail path for a given asset.

See also getThumbUrl() View source

Arguments

  • $asset (craft\elements\Asset) – Asset to return a thumb for
  • $width (integer) – Width of the returned thumb
  • $height (integer, null) – Height of the returned thumb (defaults to $width if null)
  • $generate (boolean) – Whether to generate a thumb in none exists yet
  • $fallbackToIcon (boolean) – Whether to return the path to a generic icon if a thumbnail can't be generated

Returns

string, false – Thumbnail path, or false if it doesn't exist and $generate is false

Throws

# getThumbUrl()

Returns the control panel thumbnail URL for a given asset.

See also craft\elements\Asset::getThumbUrl() View source

Arguments

  • $asset (craft\elements\Asset) – Asset to return a thumb for
  • $width (integer) – Width of the returned thumb
  • $height (integer, null) – Height of the returned thumb (defaults to $width if null)
  • $generate (boolean) – Whether to generate a thumb in none exists yet
  • $fallbackToIcon (boolean) – Whether to return the URL to a generic icon if a thumbnail can't be generated

Returns

string

Throws

# getTotalAssets()

Gets the total number of assets that match a given criteria.

View source

Arguments

  • $criteria (mixed)

Returns

integer

# getTotalFolders()

Gets the total number of folders that match a given criteria.

View source

Arguments

  • $criteria (mixed)

Returns

integer

# getUserTemporaryUploadFolder()

Returns the given user's temporary upload folder.

If no user is provided, the currently-logged in user will be used (if there is one), or a folder named after the current session ID.

View source

Arguments

Returns

craft\models\VolumeFolder

Throws

# moveAsset()

Move or rename an Asset.

View source

Arguments

Returns

boolean – Whether the asset was renamed successfully

Throws

# renameFolderById()

Rename a folder by it's id.

View source

Arguments

Returns

string – The new folder name after cleaning it.

Throws

# replaceAssetFile()

Replace an Asset's file.

Replace an Asset's file by it's id, a local file and the filename to use.

View source

Arguments

Throws

# storeFolderRecord()

Store a folder by model

View source

Arguments

# Events

# EVENT_AFTER_REPLACE_ASSET

Type
craft\events\ReplaceAssetEvent

The event that is triggered after an asset is replaced.

# EVENT_BEFORE_REPLACE_ASSET

Type
craft\events\ReplaceAssetEvent

The event that is triggered before an asset is replaced.

# EVENT_GET_ASSET_THUMB_URL

Type
craft\events\GetAssetThumbUrlEvent

The event that is triggered when a thumbnail is being generated for an Asset.

# EVENT_GET_ASSET_URL

Type
craft\events\GetAssetUrlEvent

The event that is triggered when a transform is being generated for an Asset.

# EVENT_GET_THUMB_PATH

Type
craft\events\AssetThumbEvent

The event that is triggered when a thumbnail path is requested.

# EVENT_REGISTER_PREVIEW_HANDLER

Type
craft\events\AssetPreviewEvent
Since
3.4.0

The event that is triggered when determining the preview handler for an asset.