UnknownSec Bypass
403
:
/
mnt
/
lmsestudio-instance-vol002
/
eagleead
/
app
/
Http
/
Controllers
/
Admin
/
Coupon
/ [
drwxr-xr-x
]
Menu
Upload
Mass depes
Mass delete
Terminal
Info server
About
name :
CouponController.php
<?php namespace EstudioLMS\Http\Controllers\Admin\Coupon; use Carbon\Carbon; use EstudioLMS\Base\ResponseBuilder; use EstudioLMS\Http\Controllers\Controller; use EstudioLMS\Http\Requests; use EstudioLMS\Http\Requests\Admin\Coupon\CouponRequest; use EstudioLMS\Repositories\Coupon\CouponRepository; use EstudioLMS\Repositories\Courses\Course\CourseRepository; use Illuminate\Http\Request; use Illuminate\Translation\Translator; use mjanssen\BreadcrumbsBundle\Breadcrumbs; /** * Class CouponController * @package EstudioLMS\Http\Controllers\Admin\Coupon */ class CouponController extends Controller { /** * @var ResponseBuilder */ private $responseBuilder; /** * @var Breadcrumbs */ private $breadCrumbs; /** * @var Translator */ private $translator; /** * @var CouponRepository */ private $couponRepository; /** * @var CourseRepository */ private $courseRepository; /** * CouponController constructor. * @param ResponseBuilder $responseBuilder * @param Breadcrumbs $breadCrumbs * @param Translator $translator * @param CouponRepository $couponRepository * @param CourseRepository $courseRepository */ public function __construct( ResponseBuilder $responseBuilder, Breadcrumbs $breadCrumbs, Translator $translator, CouponRepository $couponRepository, CourseRepository $courseRepository ) { $this->middleware('admins'); $this->responseBuilder = $responseBuilder; $this->breadCrumbs = $breadCrumbs; $this->translator = $translator; $this->couponRepository = $couponRepository; $this->courseRepository = $courseRepository; } /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { $env = 'financial'; $title = trans('admin_coupon.title'); $this->breadCrumbs->addBreadcrumb(trans('admin_master.breadDash'), route('admin.index')); $this->breadCrumbs->addBreadcrumb(trans('admin_coupon.title'), route('admin.coupon.index')); $bread = $this->breadCrumbs->generate(); return $this->responseBuilder->render( 'admin.coupon.list_coupon', [], compact('title', 'env', 'bread') ); } /** * @return mixed */ public function apiIndex() { return $this->couponRepository->all(); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { $env = 'financial'; $title = trans('admin_coupon.titleNew'); $this->breadCrumbs->addBreadcrumb(trans('admin_master.breadDash'), route('admin.index')); $this->breadCrumbs->addBreadcrumb(trans('admin_coupon.title'), route('admin.coupon.index')); $this->breadCrumbs->addBreadcrumb(trans('admin_coupon.titleNew'), route('admin.coupon.create')); $bread = $this->breadCrumbs->generate(); $courses = $this->courseRepository->all(); return $this->responseBuilder->render( 'admin.coupon.create', [], compact('title', 'env', 'bread', 'courses') ); } /** * Store a newly created resource in storage. * * @param CouponRequest $request * @return \Illuminate\Http\RedirectResponse */ public function store(CouponRequest $request) { $data = $request->all(); $discount = str_replace(',', '.', str_replace('.', '', $data['discount'])); $create = $this->couponRepository->create( [ 'title' => $data['title'], 'code' => $data['code'], 'type' => $data['type'], 'discount' => $discount, 'published_at' => empty($data['published_at']) ? null : Carbon::createFromFormat('d/m/Y', $data['published_at'])->format('Y-m-d 00:00:00'), 'unpublished_at' => empty($data['unpublished_at']) ? null : Carbon::createFromFormat('d/m/Y', $data['unpublished_at'])->format('Y-m-d 23:59:59'), 'published' => isset($data['published']) ] ); if(!isset($data['course'])) { $data['course'] = []; } $create->courses()->sync($data['course']); return redirect()->route('admin.coupon.index'); } /** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit($id) { $env = 'financial'; $title = trans('admin_coupon.titleEdit'); $this->breadCrumbs->addBreadcrumb(trans('admin_master.breadDash'), route('admin.index')); $this->breadCrumbs->addBreadcrumb(trans('admin_coupon.title'), route('admin.coupon.index')); $this->breadCrumbs->addBreadcrumb(trans('admin_coupon.titleEdit'), route('admin.coupon.edit')); $bread = $this->breadCrumbs->generate(); $courses = $this->courseRepository->all(); $coupon = $this->couponRepository->with('courses')->find($id); return $this->responseBuilder->render( 'admin.coupon.edit', compact('coupon'), compact('title', 'env', 'bread', 'courses') ); } /** * Update the specified resource in storage. * * @param CouponRequest $request * @param int $id * @return \Illuminate\Http\RedirectResponse */ public function update(CouponRequest $request, $id) { $data = $request->all(); $discount = str_replace(',', '.', str_replace('.', '', $data['discount'])); $update = $this->couponRepository->update( [ 'title' => $data['title'], 'code' => $data['code'], 'type' => $data['type'], 'discount' => $data['discount'], 'published_at' => empty($data['published_at']) ? null : Carbon::createFromFormat('d/m/Y', substr($data['published_at'], 0, 10))->format('Y-m-d 00:00:00'), 'unpublished_at' => empty($data['unpublished_at']) ? null : Carbon::createFromFormat('d/m/Y', substr($data['unpublished_at'], 0, 10))->format('Y-m-d 23:59:59'), 'published' => isset($data['published']) ], $id ); if(!isset($data['course'])) { $data['course'] = []; } $update->courses()->sync($data['course']); return redirect()->route('admin.coupon.index'); } /** * @param Request $request * @return string[] */ public function updateStatus(Request $request) { $data = $request->all(); $coupon = $this->couponRepository->find($data['id']); $this->couponRepository->update( [ 'published' => !$coupon['published'] ], $data['id'] ); $ret = ['success' => trans('admin_master.success'), 'message' => trans('admin_master.msgSuccess')]; return $ret; } /** * Remove the specified resource from storage. * * @param Request $request * @return string[] */ public function destroy(Request $request) { $data = $request->all(); $this->couponRepository->find($data['id'])->courses()->detach(); $this->couponRepository->delete($data['id']); $ret = ['success' => trans('admin_master.success'), 'message' => trans('admin_master.successDelete')]; return $ret; } }
Copyright © 2026 - UnknownSec