i18n->translations['imagemanager'])) { Yii::$app->i18n->translations['imagemanager'] = [ 'class' => 'yii\i18n\PhpMessageSource', 'sourceLanguage' => 'en', 'basePath' => '@noam148/imagemanager/messages' ]; } } /** * @inheritdoc */ public function run() { //default $ImageManager_id = null; $mImageManager = null; $sFieldId = null; //start input group $field = "
"; $field .= "
"; //set input fields if ($this->hasModel()) { //get field id $sFieldId = Html::getInputId($this->model, $this->attribute); $sFieldNameId = $sFieldId . "_name"; //get attribute name $sFieldAttributeName = Html::getAttributeName($this->attribute); //get filename from selected file $ImageManager_id = $this->model->{$sFieldAttributeName}; $ImageManager_fileName = null; $mImageManager = ImageManager::findOne($ImageManager_id); if ($mImageManager !== null) { $ImageManager_fileName = $mImageManager->fileName; } //create field $field .= Html::textInput($this->attribute, $ImageManager_fileName, ['class' => 'form-control', 'id' => $sFieldNameId, 'readonly' => true]); $field .= Html::activeHiddenInput($this->model, $this->attribute, $this->options); } else { $field .= Html::textInput($this->name . "_name", null, ['readonly' => true]); $field .= Html::hiddenInput($this->name, $this->value, $this->options); } //end input group $sHideClass = $ImageManager_id === null ? 'hide' : ''; $field .= ""; $field .= ""; $field .= ""; $field .= "
"; //show preview if is true if ($this->showPreview == true) { $sHideClass = ($mImageManager == null) ? "hide" : ""; $sImageSource = isset($mImageManager->id) ? \Yii::$app->imagemanager->getImagePath($mImageManager->id, 500, 500, 'inset') : ""; $field .= '
' . 'Thumbnail' . '
'; } //close image-manager-input div $field .= "
"; echo $field; $this->registerClientScript(); } /** * Registers js Input */ public function registerClientScript() { $view = $this->getView(); ImageManagerInputAsset::register($view); //set baseUrl from image manager $sBaseUrl = Url::to(['/imagemanager/manager']); //set base url $view->registerJs("imageManagerInput.baseUrl = '" . $sBaseUrl . "';"); $view->registerJs("imageManagerInput.message = " . Json::encode([ 'imageManager' => Yii::t('imagemanager','Image manager'), 'detachWarningMessage' => Yii::t('imagemanager', 'Are you sure you want to detach the image?'), ]) . ";"); } }