/home/techb158/immovalet.com/platform/plugins/ecommerce/src/Http/Controllers
NameSizeModeActions
Customers/-0755rm
Fronts/-0755rm
BrandController.php46840644editdlrm
DiscountController.php65100644editdlrm
EcommerceController.php83520644editdlrm
FlashSaleController.php62740644editdlrm
OrderController.php403980644editdlrm
ProductAttributeSetsController.php62270644editdlrm
ProductCategoryController.php89890644editdlrm
ProductCollectionController.php62370644editdlrm
ProductController.php96000644editdlrm
ProductLabelController.php51930644editdlrm
ProductTagController.php52570644editdlrm
ReportController.php72910644editdlrm
ReviewController.php26600644editdlrm
ShipmentController.php54410644editdlrm
ShippingMethodController.php97670644editdlrm
TaxController.php44490644editdlrm
Edit: /home/techb158/immovalet.com/platform/plugins/ecommerce/src/Http/Controllers/DiscountController.php (6510B)
discountRepository = $discountRepository; } /** * @param DiscountTable $dataTable * @return Factory|View * @throws Throwable */ public function index(DiscountTable $dataTable) { page_title()->setTitle(trans('plugins/ecommerce::discount.name')); Assets::addStylesDirectly(['vendor/core/plugins/ecommerce/css/ecommerce.css']); return $dataTable->renderTable(); } /** * @return string */ public function create() { page_title()->setTitle(trans('plugins/ecommerce::discount.create')); Assets::addStylesDirectly(['vendor/core/plugins/ecommerce/css/ecommerce.css']) ->addScriptsDirectly([ 'vendor/core/plugins/ecommerce/js/discount.js', ]) ->addScripts(['timepicker', 'input-mask', 'blockui']) ->addStyles(['timepicker']); return view('plugins/ecommerce::discounts.create'); } /** * @param DiscountRequest $request * @param BaseHttpResponse $response * @return BaseHttpResponse * @throws Exception */ public function store(DiscountRequest $request, BaseHttpResponse $response) { if (!$request->has('can_use_with_promotion')) { $request->merge(['can_use_with_promotion' => 0]); } if ($request->input('is_unlimited')) { $request->merge(['quantity' => null]); } $request->merge([ 'start_date' => Carbon::parse($request->input('start_date') . ' ' . $request->input('start_time')) ->toDateTimeString(), ]); if ($request->has('end_date') && !$request->has('unlimited_time')) { $request->merge([ 'end_date' => Carbon::parse($request->input('end_date') . ' ' . $request->input('end_time')) ->toDateTimeString(), ]); } else { $request->merge([ 'end_date' => null, ]); } /** * @var Discount $discount */ $discount = $this->discountRepository->createOrUpdate($request->input()); if ($discount) { $productCollections = $request->input('product_collections'); if ($productCollections) { if (!is_array($productCollections)) { $productCollections = [$productCollections]; $discount->productCollections()->attach($productCollections); } } $products = $request->input('products'); if ($products) { if (!is_array($products)) { $products = [$products]; } $discount->products()->attach($products); } $variants = $request->input('variants'); if ($variants) { if (is_string($variants) && Str::contains($variants, ',')) { $variants = explode(',', $variants); } if (!is_array($variants)) { $variants = [$variants]; } $discount->products()->attach($variants); } $customers = $request->input('customers'); if ($customers) { if (!is_array($customers)) { $customers = [$customers]; } $discount->customers()->attach($customers); } } event(new CreatedContentEvent(DISCOUNT_MODULE_SCREEN_NAME, $request, $discount)); return $response ->setNextUrl(route('discounts.index')) ->setMessage(trans('core/base::notices.create_success_message')); } /** * @param Request $request * @param int $id * @param BaseHttpResponse $response * @return BaseHttpResponse */ public function destroy(Request $request, $id, BaseHttpResponse $response) { try { $discount = $this->discountRepository->findOrFail($id); $this->discountRepository->delete($discount); event(new DeletedContentEvent(DISCOUNT_MODULE_SCREEN_NAME, $request, $discount)); return $response->setMessage(trans('core/base::notices.delete_success_message')); } catch (Exception $exception) { return $response ->setError() ->setMessage($exception->getMessage()); } } /** * @param Request $request * @param BaseHttpResponse $response * @return BaseHttpResponse * @throws Exception */ public function deletes(Request $request, BaseHttpResponse $response) { $ids = $request->input('ids'); if (empty($ids)) { return $response ->setError() ->setMessage(trans('core/base::notices.no_select')); } foreach ($ids as $id) { $discount = $this->discountRepository->findOrFail($id); $this->discountRepository->delete($discount); event(new DeletedContentEvent(DISCOUNT_MODULE_SCREEN_NAME, $request, $discount)); } return $response->setMessage(trans('core/base::notices.delete_success_message')); } /** * @param BaseHttpResponse $response * @return BaseHttpResponse */ public function postGenerateCoupon(BaseHttpResponse $response) { do { $code = strtoupper(Str::random(12)); } while ($this->discountRepository->count(['code' => $code]) > 0); return $response->setData($code); } }