#858 ilanlar toplu süre uzatma

This commit is contained in:
Diatrex 2020-02-26 10:30:26 +03:00
parent e3673dab2f
commit b14fd0152c
7 changed files with 40 additions and 14 deletions

View File

@ -31,7 +31,7 @@ class AdvsModule extends Module
'href' => "/advs/create_adv",
],
'extend_all' => [
'href' => "/admin/advs/extendAll",
'href' => "/advs/extendAll/admin",
'icon' => 'fa fa-calendar',
'type' => 'info'
],

View File

@ -212,9 +212,13 @@ class AdvsModuleServiceProvider extends AddonServiceProvider
'as' => 'ajax::getAds',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\AjaxController@getMyAds'
],
'admin/advs/extendAll' => [
'advs/extendAll/{isAdmin?}' => [
'as' => 'advs::extendAll',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\Admin\AdvsController@extendAll',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\AdvsController@extendAll',
],
'advs/extend/{adId}' => [
'as' => 'advs::extendSingle',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\AdvsController@extendSingle',
],
];

View File

@ -257,13 +257,4 @@ class AdvsController extends AdminController
<a href='" . $request->server('HTTP_REFERER') . "'><b>Return Back</b></a>";
echo "<br><a href='/admin'><b>Return Admin Panel</b></a>";
}
public function extendAll()
{
$advs = $this->model->get();
$new_date = date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s') . ' + ' . setting_value('visiosoft.module.advs::default_published_time') . ' day'));
$advs->update(['finish_at' => $new_date]);
$this->messages->success(trans('visiosoft.module.advs::field.extended'));
return $this->redirect->to('admin/advs/advs');
}
}

View File

@ -974,4 +974,25 @@ class AdvsController extends PublicController
return "success";
}
}
public function extendAll($isAdmin = null)
{
if ($isAdmin && auth()->user()->hasRole('admin')) {
$advs = $this->adv_model->newQuery();
} else {
$advs = $this->adv_model->newQuery()->where('created_by_id', auth()->id());
}
$newDate = date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s') . ' + ' . setting_value('visiosoft.module.advs::default_published_time') . ' day'));
$advs->update(['finish_at' => $newDate]);
$this->messages->success(trans('visiosoft.module.advs::field.extended'));
return $this->redirect->back();
}
public function extendSingle($adId)
{
$advs = $this->adv_model->newQuery()->where('id', $adId);
$newDate = date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s') . ' + ' . setting_value('visiosoft.module.advs::default_published_time') . ' day'));
$advs->update(['finish_at' => $newDate]);
$this->messages->success(trans('visiosoft.module.advs::field.extended'));
return $this->redirect->back();
}
}

View File

@ -22,7 +22,7 @@ function getMyAds(type) {
$('.profile-ads-tab a').on('click', function () {
getMyAds($(this).attr('data-type'))
})
});
getMyAds('approved');
@ -85,6 +85,11 @@ function dropdownRow(id, type) {
delete_ad +
"</a>\n";
dropdown += "<a class='dropdown-item text-info' href='/advs/extend/" + id + "'>" +
"<i class='fas fa-calendar'></i> " +
extend_ad +
"</a>\n";
dropdown += "</div></div>";
return dropdown;

View File

@ -7,5 +7,6 @@ return [
'update_password' => 'Update Password',
'update_profile' => 'Update Profile',
'delete' => 'Delete',
'extend' => 'Extend',
'edit' => 'Edit',
];

View File

@ -33,6 +33,9 @@
</a>
</div>
</nav>
<div class="bg-dark p-2 mt-2 rounded">
<a href="{{ url_route("advs::extendAll") }}" class="btn btn-primary">Extend All</a>
</div>
<div class="tab-content py-3 px-3 px-sm-0" id="nav-tabContent">
<div class="tab-pane fade show active" id="nav-approved" role="tabpanel"
aria-labelledby="nav-approved-tab">
@ -52,6 +55,7 @@
var approve = "{{ trans('visiosoft.module.advs::field.approve') }}";
var passive = "{{ trans('visiosoft.module.advs::field.passive') }}";
var delete_ad = "{{ trans('visiosoft.module.profile::button.delete') }}";
var extend_ad = "{{ trans('visiosoft.module.profile::button.extend') }}";
var edit_ad = "{{ trans('visiosoft.module.profile::button.edit') }}";
</script>
{{ asset_add('scripts.js','visiosoft.module.profile::assets/js/ads.js') }}