コード例 #1
0
ファイル: MediaController.php プロジェクト: kalibao/magesko
 /**
  * Download a media file
  */
 public function actionDownload()
 {
     $media = Media::findOne(Yii::$app->request->get('file'));
     $filePath = $this->uploadConfig['kalibao\\common\\models\\media\\Media']['file']['basePath'] . '/' . $media->file;
     $fileName = ($media->mediaI18n ? $media->mediaI18n->title : $media->file) . '.' . strtolower(pathinfo($filePath)['extension']);
     return Yii::$app->response->sendFile($filePath, $fileName);
 }
コード例 #2
0
ファイル: ListGrid.php プロジェクト: kalibao/magesko
 /**
  * @inheritdoc
  */
 public function init()
 {
     parent::init();
     // get model
     $model = $this->getModel();
     // language
     $language = $this->getLanguage();
     // get drop down list methods
     $dropDownList = $this->getDropDownList();
     // set titles
     $this->setTitle(Yii::t('kalibao', 'list_title'));
     // set head attributes
     $this->setGridHeadAttributes(['tree_i18n_label' => true, 'tree_i18n_description' => true, 'media_file' => true]);
     // set head filters
     $this->setGridHeadFilters([new InputField(['model' => $model, 'attribute' => 'tree_i18n_label', 'type' => 'activeTextInput', 'options' => ['class' => 'form-control input-sm', 'placeholder' => Yii::t('kalibao', 'input_search')]]), new InputField(['model' => $model, 'attribute' => 'media_id', 'type' => 'activeHiddenInput', 'options' => ['class' => 'form-control input-sm input-ajax-select', 'data-action' => Url::to(['advanced-drop-down-list', 'id' => 'media.file']), 'data-allow-clear' => 1, 'data-placeholder' => Yii::t('kalibao', 'input_select'), 'data-text' => !empty($model->media_id) ? Media::findOne(['id' => $model->media_id])->file : '']]), new InputField(['model' => $model, 'attribute' => 'tree_i18n_description', 'type' => 'activeTextInput', 'options' => ['class' => 'form-control input-sm', 'placeholder' => Yii::t('kalibao', 'input_search')]])]);
     // set advanced filters
     $this->setAdvancedFilters([new InputField(['model' => $model, 'attribute' => 'tree_i18n_label', 'type' => 'activeTextInput', 'options' => ['class' => 'form-control input-sm', 'placeholder' => Yii::t('kalibao', 'input_search')]]), new InputField(['model' => $model, 'attribute' => 'media_id', 'type' => 'activeHiddenInput', 'options' => ['class' => 'form-control input-sm input-ajax-select', 'data-action' => Url::to(['advanced-drop-down-list', 'id' => 'media.file']), 'data-allow-clear' => 1, 'data-placeholder' => Yii::t('kalibao', 'input_select'), 'data-text' => !empty($model->media_id) ? Media::findOne(['id' => $model->media_id])->file : '']]), new InputField(['model' => $model, 'attribute' => 'tree_i18n_description', 'type' => 'activeTextInput', 'options' => ['class' => 'form-control input-sm', 'placeholder' => Yii::t('kalibao', 'input_search')]])]);
 }
コード例 #3
0
ファイル: Branch.php プロジェクト: kalibao/magesko
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getMedia()
 {
     return $this->hasOne(Media::className(), ['id' => 'media_id']);
 }