This commit is contained in:
vedatakd 2020-02-03 17:28:00 +03:00
commit eb40fd6551
5 changed files with 48 additions and 13 deletions

View File

@ -85,8 +85,11 @@ return [
'status' => [ 'status' => [
'name' => 'Status', 'name' => 'Status',
'option' => [ 'option' => [
'approved' => 'Approved',
'expired' => 'Expired', 'expired' => 'Expired',
'unpublished' => 'Unpublished' 'unpublished' => 'Unpublished',
'pending_admin' => 'Pending Admin',
'pending_user' => 'Pending User'
] ]
], ],
'pending_adv' => [ 'pending_adv' => [

View File

@ -63,13 +63,17 @@ class AdvRepository extends EntryRepository implements AdvRepositoryInterface
}); });
if (!empty($param['keyword'])) { if (!empty($param['keyword'])) {
$delimiter = '_'; if (is_numeric($param['keyword'])) {
$keyword = str_slug($param['keyword'], $delimiter); $query = $query->where('advs_advs.id', $param['keyword']);
$query = $query->where(function ($query) use ($keyword) { } else {
$query->where('advs_advs_translations.advs_desc', 'like', '%' . $keyword . '%') $delimiter = '_';
->orWhere('slug', 'like', '%' . $keyword . '%') $keyword = str_slug($param['keyword'], $delimiter);
->orWhere('advs_advs_translations.name', 'like', '%' . $keyword . '%'); $query = $query->where(function ($query) use ($keyword) {
}); $query->where('advs_advs_translations.advs_desc', 'like', '%' . $keyword . '%')
->orWhere('slug', 'like', '%' . $keyword . '%')
->orWhere('advs_advs_translations.name', 'like', '%' . $keyword . '%');
});
}
} }
if (!empty($param['country'])) { if (!empty($param['country'])) {
$query = $query->where('country_id', $param['country']); $query = $query->where('country_id', $param['country']);

View File

@ -2,19 +2,41 @@
use Anomaly\Streams\Platform\Ui\Table\Component\Filter\Contract\FilterInterface; use Anomaly\Streams\Platform\Ui\Table\Component\Filter\Contract\FilterInterface;
use Illuminate\Database\Eloquent\Builder; use Illuminate\Database\Eloquent\Builder;
use Illuminate\Support\Carbon;
class StatusFilterQuery class StatusFilterQuery
{ {
public function handle(Builder $query, FilterInterface $filter) public function handle(Builder $query, FilterInterface $filter)
{ {
if ($filter->getValue() == 'approved') {
$query
->where('advs_advs.status', 'approved')
->where('advs_advs.finish_at', '>', date('Y-m-d H:i:s'));
}
if ($filter->getValue() == 'expired') { if ($filter->getValue() == 'expired') {
$query->where('advs_advs.finish_at', '<=', Carbon::now()); $query
->where('advs_advs.finish_at', '<', date('Y-m-d H:i:s'))
->WhereNotNull('advs_advs.finish_at');
} }
if ($filter->getValue() == 'unpublished') { if ($filter->getValue() == 'unpublished') {
$query->where('advs_advs.status', '!=', 'approved'); $query
->where('advs_advs.status', 'passive');
}
if ($filter->getValue() == 'pending_admin') {
$query
->where('advs_advs.status', 'pending_admin')
->where('advs_advs.finish_at', '>', date('Y-m-d H:i:s'))
->orWhereNull('advs_advs.finish_at');
}
if ($filter->getValue() == 'pending_user') {
$query
->where('advs_advs.status', 'pending_user')
->where('advs_advs.finish_at', '>', date('Y-m-d H:i:s'))
->orWhereNull('advs_advs.finish_at');
} }
} }
} }

View File

@ -157,8 +157,11 @@ class AdvsController extends AdminController
'filter' => 'select', 'filter' => 'select',
'query' => StatusFilterQuery::class, 'query' => StatusFilterQuery::class,
'options' => [ 'options' => [
'approved' => 'visiosoft.module.advs::field.status.option.approved',
'expired' => 'visiosoft.module.advs::field.status.option.expired', 'expired' => 'visiosoft.module.advs::field.status.option.expired',
'unpublished' => 'visiosoft.module.advs::field.status.option.unpublished', 'unpublished' => 'visiosoft.module.advs::field.status.option.unpublished',
'pending_admin' => 'visiosoft.module.advs::field.status.option.pending_admin',
'pending_user' => 'visiosoft.module.advs::field.status.option.pending_user',
], ],
] ]
]) ])

View File

@ -65,8 +65,11 @@ class UploadController extends AdminController
$img = WaterMark::make($this->request->file('upload')->getRealPath()); $img = WaterMark::make($this->request->file('upload')->getRealPath());
$watermarkimage_id = $settings->value('visiosoft.module.advs::watermark_image'); $watermarkimage_id = $settings->value('visiosoft.module.advs::watermark_image');
$watermarkimage = $files->find($watermarkimage_id); $watermarkimage = $files->find($watermarkimage_id);
$w = $img->width();
if ($watermarkimage != null) { if ($watermarkimage != null) {
$watermark = WaterMark::make(public_path() . '/app/default/files-module/local/' . $watermarkimage->path())->opacity(50); $watermark = WaterMark::make(public_path() . '/app/default/files-module/local/' . $watermarkimage->path())
->opacity($settings->value('visiosoft.module.advs::watermark_opacity'))
->resize($w);
$img->insert($watermark, $position); $img->insert($watermark, $position);
} }
@ -77,7 +80,7 @@ class UploadController extends AdminController
$h = "center"; $h = "center";
$w = $img->width() / 2; $w = $img->width() / 2;
$h1 = $img->height() / 2; $h1 = $img->height() / 2;
$font_size = $w/20; $font_size = $w / 20;
$img->text($watermarktext, $w, $h1, function ($font) use ($v, $h, $font_size) { $img->text($watermarktext, $w, $h1, function ($font) use ($v, $h, $font_size) {
$font->file(public_path('Antonio-Bold.ttf')); $font->file(public_path('Antonio-Bold.ttf'));
$font->size($font_size); $font->size($font_size);