simialbi / yii2-elfinder
Elfinder implementation for yii2 framework
Installs: 653
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 5
Forks: 5
Open Issues: 2
Language:SCSS
Type:yii2-extension
Requires
- php: >=5.6
- ext-curl: *
- ext-gd: *
- rmrevin/yii2-fontawesome: ~3.0
- simialbi/yii2-simialbi-base: >=0.10.2 <1.0 | ^1.0.0
- studio-42/elfinder: ~2.1
- yiisoft/yii2: ~2.0
- yiisoft/yii2-bootstrap: ~2.0
- yiisoft/yii2-jui: ~2.0
Requires (Dev)
- phpunit/phpunit: ^7.5.20
- yiisoft/yii2-coding-standards: ~2.0
Suggests
- ext-exif: To use image rotate behavior
- ext-fileinfo: To use mime content type detection in behaviors
- simialbi/yii2-widget-crop: Add an image cropper widget to ElFinderInput
- dev-master
- 1.8.1
- 1.8.0
- 1.7.0
- 1.6.5
- 1.6.4
- 1.6.3
- 1.6.2
- 1.6.1
- 1.6.0
- 1.6.0-alpha.2
- 1.6.0-alpha.1
- 1.5.1
- 1.5.0
- 1.4.7
- 1.4.6
- 1.4.5
- 1.4.4
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2
- 1.1.16
- 1.1.15
- 1.1.14
- 1.1.13
- 1.1.12
- 1.1.11
- 1.1.10
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1
- 1.0.1
- 1.0
This package is auto-updated.
Last update: 2024-12-22 14:38:03 UTC
README
This extension integrates the jQuery elFinder into yii2 framework (the yii way: with elFinder component, behaviors, configurable objects, events etc.). Additionally it prevents jui/elfinder css from loading and provides it's own styles for elfinder (bootstrap3 / fontawesome scss based style).
Resources
Installation
The preferred way to install this extension is through composer.
Either run
$ php composer.phar require --prefer-dist simialbi/yii2-elfinder
or add
"simialbi/yii2-elfinder": "*"
to the require
section of your composer.json
Usage
Setup Module
Add the module elfinder
to the modules section of your configuration file:
'modules' => [ 'elfinder' => [ 'class' => 'simialbi\yii2\elfinder\Module', 'options' => [ 'default' => [ 'class' => 'simialbi\yii2\elfinder\ElFinderOptions', 'locale' => 'de_DE.UTF-8', 'maxTargets' => 0 ] ], 'connectionSets' => [ 'default' => [ // like elfinder roots [ 'class' => 'simialbi\yii2\elfinder\ElFinderConfigurationLocalFileSystem', 'path' => '@webroot/files', 'URL' => '@web/files' ] ] ], 'volumeBehaviors' => [ 'default' => [ // like elfinder plugins, add behaviors 'as resizer' => [ 'class' => 'simialbi\yii2\elfinder\behaviors\ImageResizeBehavior', 'maxWidth' => 1920, 'maxHeight' => 1080, 'quality' => 70 ], 'as optimizer' => [ 'class' => 'simialbi\yii2\elfinder\behaviors\ImageOptimizeBehavior' ] ] ] ] ]
Example Usage
Elfinder widget
To include an elfinder instance in one of your pages, call the elfinder widget like this:
<?php /* @var $this yii\web\View */ use simialbi\yii2\elfinder\widgets\ElFinder; $this->title = 'elFinder'; $this->params['breadcrumbs'][] = $this->title; ?> <div class="my-elfinder"> <?php // @see https://github.com/Studio-42/elFinder/wiki/Client-configuration-options-2.1 echo ElFinder::widget([ 'instanceName' => 'default' // from module connectionSets/volumeBehaviors configuration (array key) ]); ?> </div>
All options from elfinder client configuration options
and instanceName
can be used to configure the widget.
ElFinderInput widget
To include an elfinder input field widget, call the input widget like this:
<?php /* @var $this yii\web\View */ use simialbi\yii2\elfinder\widgets\ElFinderInput; $this->title = 'elFinder'; $this->params['breadcrumbs'][] = $this->title; ?> <div class="my-elfinder"> <?php // @see https://github.com/Studio-42/elFinder/wiki/Client-configuration-options-2.1 echo ElFinderInput::widget([ 'name' => 'my-file', 'value' => '/path/to/my/file.ext', 'instanceName' => 'default' ]); // or model like usage /* @var $form \yii\widgets\ActiveForm */ /* @var $model \yii\base\Model */ echo $form->field($model, 'my-file')->widget( ElFinderInput::className(), [ 'instanceName' => 'default' ] ); ?> </div>
License
yii2-elfinder is released under MIT license. See bundled LICENSE for details.