Inheritance: extends yii\web\AssetBundle
Example #1
0
 /**
  * @param string $lang
  * @param \yii\web\View $view
  */
 public static function addLangFile($lang, $view)
 {
     $lang = ElFinder::getSupportedLanguage($lang);
     if ($lang !== false && $lang !== 'en') {
         $view->registerJsFile(self::getPathUrl() . '/js/i18n/elfinder.' . $lang . '.js', ['depends' => [Assets::className()]]);
     }
 }
Example #2
0
 /**
  * @param string $lang
  * @param \yii\web\View $view
  */
 public static function addLangFile($lang, $view)
 {
     $lang = ElFinder::getSupportedLanguage($lang);
     if ($lang !== false && $lang !== 'en') {
         list(, $path) = \Yii::$app->assetManager->publish(__DIR__ . "/assets");
         $view->registerJsFile($path . '/js/i18n/elfinder.' . $lang . '.js', ['depends' => [Assets::className()]]);
     }
 }
Example #3
0
 /**
  * Registers TinyMce JS
  */
 protected function registerClientScript()
 {
     $view = $this->getView();
     if (!isset($this->options['language']) || empty($this->options['language'])) {
         $this->options['language'] = strtolower(substr(Yii::$app->language, 0, 2));
     }
     // Insert plugins in options
     if (isset($this->options['plugins'])) {
         foreach ($this->options['plugins'] as $pluginLine) {
             foreach (explode(' ', $pluginLine) as $plugin) {
                 //if load elfinder plugin ,load elfinder asserts first
                 if ($plugin == 'elfinder') {
                     \mihaildev\elfinder\Assets::register($this->getView());
                     \mihaildev\elfinder\Assets::addLangFile($this->options['language'], $this->getView());
                 }
                 $this->registerPlugin($plugin);
             }
         }
     }
     $options = empty($this->options) ? '' : Json::encode($this->options);
     $js = "tinymce.init({$options});";
     $view->registerJs($js);
 }
Example #4
0
<?php

/**
 * @var \yii\web\View $this
 * @var array $options
 */
use mihaildev\elfinder\Assets;
use yii\helpers\Json;
Assets::register($this);
Assets::addLangFile($options['lang'], $this);
if (!empty($options['noConflict'])) {
    Assets::noConflict($this);
}
unset($options['noConflict']);
$options['soundPath'] = Assets::getSoundPathUrl();
$this->registerJs("\nfunction ElFinderGetCommands(disabled){\n    var Commands = elFinder.prototype._options.commands;\n    \$.each(disabled, function(i, cmd) {\n        (idx = \$.inArray(cmd, Commands)) !== -1 && Commands.splice(idx,1);\n    });\n    return Commands;\n}\n\n    var winHashOld = '';\n    function elFinderFullscreen(){\n\n        var width = \$(window).width()-(\$('#elfinder').outerWidth(true) - \$('#elfinder').width());\n        var height = \$(window).height()-(\$('#elfinder').outerHeight(true) - \$('#elfinder').height());\n\n        var el = \$('#elfinder').elfinder('instance');\n\n        var winhash = \$(window).width() + '|' + \$(window).height();\n\n\n        if(winHashOld == winhash)\n            return;\n\n        winHashOld = winhash;\n\n        el.resize(width, height);\n    }\n\n    \$('#elfinder').elfinder(" . Json::encode($options) . ").elfinder('instance');\n\n    \$(window).resize(elFinderFullscreen);\n\n    elFinderFullscreen();\n    ");
$this->registerCss("\nhtml, body {\n    height: 100%;\n    -moz-box-sizing: border-box;\n    -webkit-box-sizing: border-box;\n    box-sizing: border-box;\n    position: relative;\n    padding: 0; margin: 0;\n}\n");
$this->beginPage();
?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>elFinder 2.0</title>
    <?php 
$this->head();
?>
</head>
<body>
<?php 
$this->beginBody();
Example #5
0
<?php

/**
 * @var \yii\web\View $this
 * @var array $options
 */
use mihaildev\elfinder\Assets;
use yii\helpers\Json;
Assets::register($this);
Assets::addLangFile($options['lang'], $this);
if (!empty($options['noConflict'])) {
    Assets::noConflict($this);
}
unset($options['noConflict']);
$this->registerJs("\nfunction ElFinderGetCommands(disabled){\n    var Commands = elFinder.prototype._options.commands;\n    \$.each(disabled, function(i, cmd) {\n        (idx = \$.inArray(cmd, Commands)) !== -1 && Commands.splice(idx,1);\n    });\n    return Commands;\n}\n\n    var winHashOld = '';\n    function elFinderFullscreen(){\n\n        var width = \$(window).width()-(\$('#elfinder').outerWidth(true) - \$('#elfinder').width());\n        var height = \$(window).height()-(\$('#elfinder').outerHeight(true) - \$('#elfinder').height());\n\n        var el = \$('#elfinder').elfinder('instance');\n\n        var winhash = \$(window).width() + '|' + \$(window).height();\n\n\n        if(winHashOld == winhash)\n            return;\n\n        winHashOld = winhash;\n\n        el.resize(width, height);\n    }\n\n    \$('#elfinder').elfinder(" . Json::encode($options) . ").elfinder('instance');\n\n    \$(window).resize(elFinderFullscreen);\n\n    elFinderFullscreen();\n    ");
$this->registerCss("\nhtml, body {\n    height: 100%;\n    -moz-box-sizing: border-box;\n    -webkit-box-sizing: border-box;\n    box-sizing: border-box;\n    position: relative;\n    padding: 0; margin: 0;\n}\n");
$this->beginPage();
?>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>elFinder 2.0</title>
    <?php 
$this->head();
?>
</head>
<body>
<?php 
$this->beginBody();
?>
Example #6
0
 public static function getRedactorOptions(View $view, $controller, $options = [])
 {
     \mihaildev\elfinder\Assets::register($view);
     return ArrayHelper::merge(['url' => self::getConnectUrl($controller)], $options);
 }
Example #7
0
<?php

/**
 * @var array $options
 */
use app\core\elfinder\events\ConnectEvent;
use app\core\elfinder\MyElFinder;
define('ELFINDER_IMG_PARENT_URL', \mihaildev\elfinder\Assets::getPathUrl());
$event = new ConnectEvent(['options' => $options]);
Yii::$app->trigger('elfinder_connect_set_options', $event);
$target = Yii::$app->getRequest()->get('target');
$width = Yii::$app->getRequest()->get('w');
$height = Yii::$app->getRequest()->get('h');
$watermark = Yii::$app->getRequest()->get('watermark');
if ($width && $height) {
    $event->options['bind']['upload.presave'][] = 'Plugin.AutoResize.onUpLoadPreSave';
    $event->options['plugin']['AutoResize'] = ['enable' => true, 'maxWidth' => $width, 'maxHeight' => $height, 'quality' => 95];
}
if ($watermark) {
    if ($watermark != 1) {
        $source = Yii::getAlias('@webroot/files/') . strtr($watermark, '::', '/');
    } else {
        $source = Yii::getAlias('@webroot/files/watermark.png');
    }
    $event->options['bind']['upload.presave'][] = 'Plugin.Watermark.onUpLoadPreSave';
    $event->options['plugin']['Watermark'] = ['source' => Yii::getAlias('@webroot/files/watermark.png'), 'marginRight' => 5, 'marginBottom' => 5, 'quality' => 95, 'transparency' => 100, 'targetType' => IMG_GIF | IMG_JPG | IMG_PNG | IMG_WBMP, 'targetMinPixel' => 200];
}
function filterName(&$path, &$name, $src, $elfinder, $volume)
{
    //$name = strtolower($name);
    $name = str_replace(' ', '_', $name);
Example #8
0
<?php

/**
 * @var \yii\web\View $this
 * @var array $options
 */
// use m00nk\elfinder\Assets;
use mihaildev\elfinder\Assets;
use yii\helpers\Json;
Assets::register($this);
Assets::addLangFile($options['lang'], $this);
$this->registerJs("\nfunction ElFinderGetCommands(disabled)\n{\n    var Commands = elFinder.prototype._options.commands;\n    \$.each(disabled, function(i, cmd) {\n        (idx = \$.inArray(cmd, Commands)) !== -1 && Commands.splice(idx,1);\n    });\n    return Commands;\n}\n\nvar winHashOld = '';\nfunction elFinderFullscreen(){\n\n    var width = \$(window).width()-(\$('#elfinder').outerWidth(true) - \$('#elfinder').width());\n    var height = \$(window).height()-(\$('#elfinder').outerHeight(true) - \$('#elfinder').height());\n\n    var el = \$('#elfinder').elfinder('instance');\n\n    var winhash = \$(window).width() + '|' + \$(window).height();\n\n    if(winHashOld == winhash)\n        return;\n\n    winHashOld = winhash;\n\n    el.resize(width-20, height-20);\n}\n\nfunction elFinderFileCallback(file)\n{\n    window.parent.tinymce_filenav_add_file(file);\n    window.close();\n}\n\n\$('#elfinder').elfinder(" . Json::encode($options) . ").elfinder('instance');\n\n\$(window).resize(elFinderFullscreen);\n\nelFinderFullscreen();\n");
$this->registerCss("\nhtml, body {\n    height: 100%;\n    -moz-box-sizing: border-box;\n    -webkit-box-sizing: border-box;\n    box-sizing: border-box;\n    position: relative;\n    padding: 5px; margin: 0;\n}\n");
$this->beginPage();
?>
	<!DOCTYPE html>
	<html>
	<head>
		<meta charset="utf-8">
		<title>elFinder</title>
		<?php 
$this->head();
?>
	</head>
	<body>
	<?php 
$this->beginBody();
?>
	<div id="elfinder"></div>
	<?php 
$this->endBody();
Example #9
0
use yii\helpers\Html;
use mihaildev\elfinder\Assets;
use yii\helpers\Url;
/* @var $this yii\web\View */
/* @var $model app\models\Page */
/* @var $startPath string */
/* @var $id_parent integer */
/* @var $elfinderData array */
Yii::$app->i18n->disableDot();
$this->title = $model->name;
$this->params['breadcrumbs'][] = ['label' => Module::t('', 'Pages'), 'url' => ['index']];
$this->params['breadcrumbs'][] = ['label' => $model->name, 'url' => ['update', 'id' => $model->id]];
$this->params['breadcrumbs'][] = Module::t('', 'Files');
Yii::$app->i18n->resetDot();
Assets::register($this);
Assets::addLangFile(Yii::$app->language, $this);
$this->registerJs('
    var btn = $.fn.button.noConflict();
    $.fn.btn = btn;
    $("#elfinder").elfinder({
        url  : "' . Url::to(ArrayHelper::merge(['/adm/elfinder/connect', 'startPath' => $startPath], $elfinderData)) . '",
        lang : "' . Yii::$app->language . '",
        customData: {"' . Yii::$app->request->csrfParam . '":"' . Yii::$app->request->csrfToken . '"},
        rememberLastDir : false,
    });
');
?>
<div class="product-files">

    <h1><?php 
echo Html::encode($this->title);