Skip to content

Commit

Permalink
ENH: image gallery
Browse files Browse the repository at this point in the history
  • Loading branch information
glpzzz committed Mar 19, 2020
1 parent a380faa commit 6dafe90
Show file tree
Hide file tree
Showing 8 changed files with 53 additions and 42 deletions.
2 changes: 1 addition & 1 deletion assets/css/backend.css
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ h2 span, h3 span, h4 span, h5 span, h6 span {
}

#image-gallery-modal .col-md-3 {
padding: 0;
/*padding: 0;*/
}

#image-gallery-modal .modal-body {
Expand Down
15 changes: 9 additions & 6 deletions controllers/backend/MediaController.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
namespace daxslab\website\controllers\backend;

use daxslab\website\models\Media;
use daxslab\website\models\MediaSearch;
use Yii;
use yii\data\ActiveDataProvider;
use yii\filters\VerbFilter;
Expand Down Expand Up @@ -33,15 +34,17 @@ public function behaviors()
*/
public function actionIndex()
{
$dataProvider = new ActiveDataProvider([
'query' => Yii::$app->website->getMedias()
->orderBy('filename'),
'pagination' => [
'route' => Url::toRoute(["/{$this->module->id}/media/index"]),
],
$searchModel = new MediaSearch([
'website_id' => Yii::$app->website->id,
]);
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
$dataProvider->sort->defaultOrder = [
'created_at' => SORT_DESC,
];
$dataProvider->pagination->route = Url::toRoute(['/website/media/index']);

return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
}
Expand Down
1 change: 0 additions & 1 deletion models/MediaSearch.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
use Yii;
use yii\base\Model;
use yii\data\ActiveDataProvider;
use backend\models\Media;

/**
* MediaSearch represents the model behind the search form of `backend\models\Media`.
Expand Down
19 changes: 12 additions & 7 deletions views/backend/media/_image.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,15 @@

?>

<?= Html::img(Yii::$app->thumbnailer->get($model->url, 300, 300), [
'alt' => $model->filename,
'class' => 'img-fluid',
'data-url' => $model->url,
'data-id' => $model->id,
])
?>
<div class="card">
<?= Html::img(Yii::$app->thumbnailer->get($model->url, 300, 300), [
'alt' => $model->filename,
'class' => 'img-fluid card-img-top',
'data-url' => $model->url,
'data-id' => $model->id,
])
?>
<footer class="card-footer">
<p style="font-size: .75em; margin-bottom: 0"><?= $model->filename ?></p>
</footer>
</div>
32 changes: 15 additions & 17 deletions views/backend/media/_search.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,15 @@

use yii\helpers\Html;
use yii\widgets\ActiveForm;
use yii\helpers\Url;

/* @var $this yii\web\View */
/* @var $model backend\models\MediaSearch */
/* @var $form yii\widgets\ActiveForm */

$mimeTypeOptions = Yii::$app->website->getMedias()->select('mime_type')->column();
$mimeTypeOptions = array_combine($mimeTypeOptions, $mimeTypeOptions);

?>

<div class="media-search">
Expand All @@ -15,25 +20,18 @@
'method' => 'get',
]); ?>

<?= $form->field($model, 'id') ?>

<?= $form->field($model, 'website_id') ?>

<?= $form->field($model, 'mime_type') ?>

<?= $form->field($model, 'filename') ?>

<?= $form->field($model, 'created_at') ?>

<?php // echo $form->field($model, 'updated_at') ?>

<?php // echo $form->field($model, 'created_by') ?>

<?php // echo $form->field($model, 'updated_by') ?>
<div class="row">
<div class="col-sm-8">
<?= $form->field($model, 'filename') ?>
</div>
<div class="col-sm-4">
<?= $form->field($model, 'mime_type')->dropDownList($mimeTypeOptions, ['prompt' => Yii::t('website', '-- Choose one --')]) ?>
</div>
</div>

<div class="form-group">
<?= Html::submitButton(Yii::t('website','Search'), ['class' => 'btn btn-primary']) ?>
<?= Html::resetButton(Yii::t('website','Reset'), ['class' => 'btn btn-default']) ?>
<?= Html::submitButton(Yii::t('website', 'Search'), ['class' => 'btn btn-primary']) ?>
<?= Html::a(Yii::t('website', 'Reset'), Url::current(['MediaSearch' => null]), ['class' => 'btn btn-default']) ?>
</div>

<?php ActiveForm::end(); ?>
Expand Down
2 changes: 1 addition & 1 deletion views/backend/media/_view.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
use yii\helpers\Html;
use yii\helpers\StringHelper;

$imageToDisplay = $model->isImage ? Yii::$app->thumbnailer->get($model->url, 300) : $model->prettyIcon;
$imageToDisplay = $model->isImage ? Yii::$app->thumbnailer->get($model->url, 300, 300) : $model->prettyIcon;
?>

<div class="card mb-4">
Expand Down
14 changes: 7 additions & 7 deletions views/backend/media/images-gallery.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@
?>

<?=
ListView::widget([
'dataProvider' => $dataProvider,
'layout' => '<div class="row image-gallery">{items}</div>{pager}',
'itemOptions' => ['class' => 'col-md-3'],
'itemView' => '_image',
])
?>
ListView::widget([
'dataProvider' => $dataProvider,
'layout' => '<div class="row image-gallery">{items}</div>{pager}',
'itemOptions' => ['class' => 'col-md-3'],
'itemView' => '_image',
])
?>
10 changes: 8 additions & 2 deletions views/backend/media/index.php
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,19 @@
]);
?>

<br/>
<div class="card my-4">
<div class="card-body">
<?= $this->render('_search', [
'model' => $searchModel
]) ?>
</div>
</div>

<?=
ListView::widget([
'dataProvider' => $dataProvider,
'layout' => '<div class="row">{items}</div>{pager}',
'itemOptions' => ['class' => 'col-md-3'],
'itemOptions' => ['class' => 'col-sm-6 col-md-3'],
'itemView' => '_view',
])
?>
Expand Down

0 comments on commit 6dafe90

Please sign in to comment.