Merge pull request #124 from openclassify/vedatt

#509 add default ad limit for new ad
This commit is contained in:
Fatih Alp 2019-10-29 13:21:24 +03:00 committed by GitHub
commit 7d0ecb27bd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 60 additions and 51 deletions

View File

@ -73,18 +73,6 @@ return [
'status' => [ 'status' => [
'name' => 'Status' 'name' => 'Status'
], ],
'next_add_advs_title' => [
'name' => 'Post an Ad in just 30 seconds'
],
'next_add_advs_msg' => [
'name' => 'Please DO NOT post multiple ads for the same items or service. All duplicate, spam and wrongly categorized ads will be deleted.'
],
'next_add_advs_btn' => [
'name' => 'Next'
],
'cancel_add_advs_btn' => [
'name' => 'or Cancel'
],
'pending_adv' => [ 'pending_adv' => [
'name' => 'Pending Ads' 'name' => 'Pending Ads'
], ],

View File

@ -8,5 +8,18 @@ return [
'agreement' => 'By clicking Post, you agree to our Terms of Use and Privacy Policy acknowledge that you are the rightful owner of this item.', 'agreement' => 'By clicking Post, you agree to our Terms of Use and Privacy Policy acknowledge that you are the rightful owner of this item.',
'update_category_msg' => 'The classified category will be updated.', 'update_category_msg' => 'The classified category will be updated.',
'updated_category_msg' => 'Category successfully edited.', 'updated_category_msg' => 'Category successfully edited.',
'max_ad_limit' => [
'title' => "Your Free Ad Limit is Out.",
'msg' => "You have reached your free ad limit.",
'nextBtn' => "Show Ads",
'cancelBtn' => "or Cancel",
'link' => "/profile",
],
'create_ad_with_post_cat' => [
'title' => "Post an Ad in just 30 seconds",
'msg' => "Please DO NOT post multiple ads for the same items or service. All duplicate, spam and wrongly categorized ads will be deleted.",
'nextBtn' => "Next",
'cancelBtn' => "or Cancel",
'link' => "",
],
]; ];

View File

@ -96,23 +96,6 @@ return [
"status" => [ "status" => [
"name" => "durum", "name" => "durum",
],
"next_add_advs_title" => [
"name" => "Sadece 30 saniyede bir İlan ver",
],
"next_add_advs_msg" => [
"name" => "Lütfen aynı ürün veya hizmet için birden fazla İlan yayınlamayın. Tüm yinelenen,
spam ve yanlış sınıflandırılmış İlanlar silinecek.",
],
"next_add_advs_btn" => [
"name" => "Sonraki",
],
"cancel_add_advs_btn" => [
"name" => "ya da iptal",
], ],
"pending_adv" => [ "pending_adv" => [
"name" => "Bekleyen İlanlar", "name" => "Bekleyen İlanlar",

View File

@ -8,4 +8,18 @@ return [
'agreement' => 'Yayınla\'yı tıkladığınızda, Kullanım Koşulları ve Gizlilik Politikasını kabul etmiş olursunuz, bu öğenin hak sahibi olduğunuzu kabul edersiniz.', 'agreement' => 'Yayınla\'yı tıkladığınızda, Kullanım Koşulları ve Gizlilik Politikasını kabul etmiş olursunuz, bu öğenin hak sahibi olduğunuzu kabul edersiniz.',
'update_category_msg' => 'İlan kategorisi güncellenecektir.', 'update_category_msg' => 'İlan kategorisi güncellenecektir.',
'updated_category_msg' => 'Kategori başarıyla güncellendi.', 'updated_category_msg' => 'Kategori başarıyla güncellendi.',
'max_ad_limit' => [
'title' => "Ücretsiz İlan Limitiniz Bitmiştir.",
'msg' => "Size verilen ücretsiz ilan limitine ulaştınız.",
'nextBtn' => "İlanlarım",
'cancelBtn' => "ve ya İptal",
'link' => "/profile",
],
'create_ad_with_post_cat' => [
'title' => "Sadece 30 saniyede İlan ver",
'msg' => "Lütfen aynı ürün veya hizmet için birden fazla İlan yayınlamayın. Tüm yinelenen, spam ve yanlış sınıflandırılmış İlanlar silinecek.",
'nextBtn' => "Devam Et",
'cancelBtn' => "ve ya İptal",
'link' => "",
],
]; ];

View File

@ -345,26 +345,30 @@ class AdvsController extends PublicController
public function getCatsForNewAd($id) public function getCatsForNewAd($id)
{ {
$adv = $this->getCats($id); $cats = $this->getCats($id);
$count_user_ads = count($this->adv_model->userAdv()->get());
if (empty($adv->toArray())) { if (empty($cats->toArray())) {
$adv['title'] = trans('visiosoft.module.advs::field.next_add_advs_title.name'); $cats = trans('visiosoft.module.advs::message.create_ad_with_post_cat');
$adv['msg'] = trans('visiosoft.module.advs::field.next_add_advs_msg.name');
$adv['nextBtn'] = trans('visiosoft.module.advs::field.next_add_advs_btn.name');
$adv['cancelBtn'] = trans('visiosoft.module.advs::field.cancel_add_advs_btn.name');
$adv['link'] = "";
if ($this->adv_model->is_enabled('packages')) { if (setting_value('visiosoft.module.advs::default_adv_limit') <= $count_user_ads) {
$packageModel = new PackageModel(); if ($this->adv_model->is_enabled('packages')) {
$parent_cat = $this->category_model->getParentCats($id, 'parent_id'); $packageModel = new PackageModel();
$package = $packageModel->reduceLimit($parent_cat); $parent_cat = $this->category_model->getParentCats($id, 'parent_id');
if ($package != null) { $package = $packageModel->reduceLimit($parent_cat);
return $package; if ($package != null) {
return $package;
}
} else {
$msg = trans('visiosoft.module.advs::message.max_ad_limit');
return $msg;
} }
} }
} }
return $adv; return $cats;
} }
public function create(Request $request, AdvFormBuilder $formBuilder, CategoryRepositoryInterface $repository) public function create(Request $request, AdvFormBuilder $formBuilder, CategoryRepositoryInterface $repository)
@ -422,13 +426,20 @@ class AdvsController extends PublicController
/* Update Adv */ /* Update Adv */
$adv = AdvsAdvsEntryModel::find($request->update_id); $adv = AdvsAdvsEntryModel::find($request->update_id);
if ($advModel->is_enabled('packages') and $adv->slug == "") { $count_user_ads = count($this->adv_model->userAdv()->get());
$parent_cat = $categoryModel->getParentCats($request->cat1, 'parent_id');
$packageModel = new PackageModel(); if (setting_value('visiosoft.module.advs::default_adv_limit') < $count_user_ads) {
$package = $packageModel->reduceLimit($parent_cat, 'reduce'); if ($advModel->is_enabled('packages') and $adv->slug == "") {
if ($package != null) { $parent_cat = $categoryModel->getParentCats($request->cat1, 'parent_id');
return redirect('/')->with('error', trans('visiosoft.module.advs::message.please_buy_package')); $packageModel = new PackageModel();
} $package = $packageModel->reduceLimit($parent_cat, 'reduce');
if ($package != null)
$this->messages->error(trans('visiosoft.module.advs::message.please_buy_package'));
} else
$this->messages->error(trans('visiosoft.module.advs::message.max_ad_limit.title'));
return redirect('/');
} }
if ($advModel->is_enabled('store')) { if ($advModel->is_enabled('store')) {