class InterventionBackend implements Image_Backend, Flushable (View source)

Traits

Provides extensions to this object to integrate it with standard config API methods.

Constants

CACHE_MARK

Cache prefix for marking

CACHE_DIMENSIONS

Cache prefix for dimensions

FAILED_INVALID

This file is invalid because it is not image data, or it cannot be processed by the given backend

FAILED_MISSING

This file is invalid as it is missing from the filesystem

FAILED_UNKNOWN

Some unknown error

Properties

static private bool $flush_enabled

Is cache flushing enabled?

static private array $error_cache_ttl

How long to cache each error type

static private string $local_temp_path

Configure where cached intervention files will be stored

Methods

static Config_ForClass
config()

Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).

mixed
stat(string $name) deprecated

Get inherited config value

mixed
uninherited(string $name)

Gets the uninherited value for the given config option

$this
set_stat(string $name, mixed $value) deprecated

Update the config value for a given property

__construct(AssetContainer $assetContainer = null)

Create a new backend with the given object

string
getTempPath()

No description

$this
setTempPath(string $path)

No description

CacheInterface
getCache()

No description

$this
setCache(CacheInterface $cache)

No description

$this
setAssetContainer(AssetContainer $assetContainer)

No description

ImageManager
getImageManager()

No description

$this
setImageManager(ImageManager $manager)

No description

loadFromContainer(AssetContainer $assetContainer)

Populate the backend with a given object

mixed
getImageResource()

Get the currently assigned image resource, or generates one if not yet assigned.

loadFrom(string $path)

Populate the backend from a local path

setImageResource(Image $image)

No description

array
writeToStore(AssetStore $assetStore, string $filename, string $hash = null, string $variant = null, array $config = [])

Write to the given asset store

bool
writeTo(string $path)

Write the backend to a local path

int
getQuality()

No description

int
getWidth()

No description

int
getHeight()

No description

setQuality(int $quality)

Set the quality to a value between 0 and 100

resize(int $width, int $height)

Resize an image, skewing it as necessary.

resizeRatio(int $width, int $height, bool $useAsMinimum = false)

Resize the image by preserving aspect ratio. By default, it will keep the image inside the maxWidth and maxHeight. Passing useAsMinimum will make the smaller dimension equal to the maximum corresponding dimension

resizeByWidth(int $width)

Resize an image by width. Preserves aspect ratio.

resizeByHeight(int $height)

Resize an image by height. Preserves aspect ratio.

paddedResize(int $width, int $height, string $backgroundColor = "FFFFFF", int $transparencyPercent = 0)

Return a clone of this image resized, with space filled in with the given colour

croppedResize(int $width, int $height)

Resize an image to cover the given width/height completely, and crop off any overhanging edges.

crop(int $top, int $left, int $width, int $height)

Crop's part of image.

__destruct()

Make sure we clean up the image resource when this object is destroyed

static 
flush()

This function is triggered early in the request if the "flush" query parameter has been set. Each class that implements Flushable implements this function which looks after it's own specific flushing functionality.

Details

static Config_ForClass config()

Get a configuration accessor for this class. Short hand for Config::inst()->get($this->class, .....).

Return Value

Config_ForClass

mixed stat(string $name) deprecated

deprecated 5.0 Use ->config()->get() instead

Get inherited config value

Parameters

string $name

Return Value

mixed

mixed uninherited(string $name)

Gets the uninherited value for the given config option

Parameters

string $name

Return Value

mixed

$this set_stat(string $name, mixed $value) deprecated

deprecated 5.0 Use ->config()->set() instead

Update the config value for a given property

Parameters

string $name
mixed $value

Return Value

$this

__construct(AssetContainer $assetContainer = null)

Create a new backend with the given object

Parameters

AssetContainer $assetContainer

Object to load from

string getTempPath()

Return Value

string

The temporary local path for this image

$this setTempPath(string $path)

Parameters

string $path

Return Value

$this

CacheInterface getCache()

Return Value

CacheInterface

$this setCache(CacheInterface $cache)

Parameters

CacheInterface $cache

Return Value

$this

AssetContainer getAssetContainer()

Return Value

AssetContainer

$this setAssetContainer(AssetContainer $assetContainer)

Parameters

AssetContainer $assetContainer

Return Value

$this

ImageManager getImageManager()

Return Value

ImageManager

$this setImageManager(ImageManager $manager)

Parameters

ImageManager $manager

Return Value

$this

loadFromContainer(AssetContainer $assetContainer)

Populate the backend with a given object

Parameters

AssetContainer $assetContainer

Object to load from

mixed getImageResource()

Get the currently assigned image resource, or generates one if not yet assigned.

Note: This method may return null if error

Return Value

mixed

loadFrom(string $path)

Populate the backend from a local path

Parameters

string $path

setImageResource(Image $image)

Parameters

Image $image

array writeToStore(AssetStore $assetStore, string $filename, string $hash = null, string $variant = null, array $config = [])

Write to the given asset store

Parameters

AssetStore $assetStore
string $filename

Name for the resulting file

string $hash

Hash of original file, if storing a variant.

string $variant

Name of variant, if storing a variant.

array $config

Write options. {see \SilverStripe\Assets\Storage\AssetStore}

Return Value

array

Tuple associative array (Filename, Hash, Variant) Unless storing a variant, the hash will be calculated from the given data.

Exceptions

BadMethodCallException

If image isn't valid

bool writeTo(string $path)

Write the backend to a local path

Parameters

string $path

Return Value

bool

if the write was successful

Exceptions

BadMethodCallException

If image isn't valid

int getQuality()

Return Value

int

int getWidth()

Return Value

int

The width of the image

int getHeight()

Return Value

int

The height of the image

setQuality(int $quality)

Set the quality to a value between 0 and 100

Parameters

int $quality

Image_Backend resize(int $width, int $height)

Resize an image, skewing it as necessary.

Parameters

int $width
int $height

Return Value

Image_Backend

Image_Backend resizeRatio(int $width, int $height, bool $useAsMinimum = false)

Resize the image by preserving aspect ratio. By default, it will keep the image inside the maxWidth and maxHeight. Passing useAsMinimum will make the smaller dimension equal to the maximum corresponding dimension

Parameters

int $width
int $height
bool $useAsMinimum

If true, image will be sized outside of these dimensions. If false (default) image will be sized inside these dimensions.

Return Value

Image_Backend

Image_Backend resizeByWidth(int $width)

Resize an image by width. Preserves aspect ratio.

Parameters

int $width

Return Value

Image_Backend

Image_Backend resizeByHeight(int $height)

Resize an image by height. Preserves aspect ratio.

Parameters

int $height

Return Value

Image_Backend

Image_Backend paddedResize(int $width, int $height, string $backgroundColor = "FFFFFF", int $transparencyPercent = 0)

Return a clone of this image resized, with space filled in with the given colour

Parameters

int $width
int $height
string $backgroundColor
int $transparencyPercent

Return Value

Image_Backend

Image_Backend croppedResize(int $width, int $height)

Resize an image to cover the given width/height completely, and crop off any overhanging edges.

Parameters

int $width
int $height

Return Value

Image_Backend

Image_Backend crop(int $top, int $left, int $width, int $height)

Crop's part of image.

Parameters

int $top

y position of left upper corner of crop rectangle

int $left

x position of left upper corner of crop rectangle

int $width

rectangle width

int $height

rectangle height

Return Value

Image_Backend

__destruct()

Make sure we clean up the image resource when this object is destroyed

static flush()

This function is triggered early in the request if the "flush" query parameter has been set. Each class that implements Flushable implements this function which looks after it's own specific flushing functionality.

See also

FlushRequestFilter