KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.41 (Ubuntu)
System : Linux vmi1525618.contaboserver.net 5.4.0-105-generic #119-Ubuntu SMP Mon Mar 7 18:49:24 UTC 2022 x86_64
User : www-data ( 33)
PHP Version : 8.2.12
Disable Function : NONE
Directory :  /var/www/navinclasses.studylms.in/app/Http/Controllers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/navinclasses.studylms.in/app/Http/Controllers/PromocodeController.php
<?php

namespace App\Http\Controllers;

use App\Models\Log;
use App\Models\Product;
use App\Models\Promocode;
use Illuminate\Http\Request;
use App\Models\Product_promocode;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Session;

class PromocodeController extends Controller
{
	/**
	 * Display a listing of the resource.
	 *
	 * @return \Illuminate\Http\Response
	 */
	public function index(Request $request)
	{
		$data['mainMenu'] = 'promocodeManagement';
		$data['subMenu'] = 'promocodeList';
		$admin_id = $request->session()->get('loggedIn')['id'];

		$admin_id = $request->session()->get('loggedIn')['id'];
		if (isset($_GET['query']) && strlen($_GET['query']) > 1) {

			$search_text = $_GET['query'];
			// dd($search_text);
			$data['promocodes'] = DB::table('promocodes')->where('code', 'LIKE', '%' . $search_text . '%')->where(['admin_id' => $admin_id])->paginate(10);
		} else {
			$data['promocodes'] = DB::table('promocodes')->paginate(10);
		}
		return view('admin.promocodes.promocode-list', $data);
	}

	/**
	 * Show the form for creating a new resource.
	 *
	 * @return \Illuminate\Http\Response
	 */
	public function create(Request $request)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		$data['mainMenu'] = 'promocodeManagement';
		$data['subMenu'] = 'promocodeList';
		$data['products'] = Product::where(['admin_id' => $admin_id])->get();

		return view('admin.promocodes.add-promocode', $data);
	}

	/**
	 * Store a newly created resource in storage.
	 *
	 * @param  \Illuminate\Http\Request  $request
	 * @return \Illuminate\Http\Response
	 */
	public function store(Request $request)
	{
		// dd($request->input());
		$admin_id = $request->session()->get('loggedIn')['id'];
		$request->validate([
			'code' => 'required|unique:promocodes',
			'discount_type' => 'required',
			'amount' => 'required',
			'promo_for' => 'required',
			'promo_type' => 'required',
			'start_date' => 'required',
			'end_date' => 'required',

		]);

		$data = array(

			'admin_id' => $admin_id,
			'code' => $request->code,
			'discount_type' => $request->discount_type,
			'amount' => $request->amount,
			'limit_value' => $request->limit_value,
			'promo_for' => $request->promo_for,
			'promo_type' => $request->promo_type,
			'start_date' => $request->start_date,
			'end_date' => $request->end_date,
			'status' => 1,

		);

		$res = Promocode::create($data);
		$promo_id = $res->id;

		if ($request->promo_for == 'selected_courses') {
			$courses = $request->courses;
			if (!empty($courses)) {
				foreach ($courses as $course) {
					$mapData = array(
						'promo_id' => $promo_id,
						'product_id' => $course,

					);
					Product_promocode::create($mapData);
					// Log Data Entry ===========
					$logData = array(
						'user_id' 		=> Session::get('loggedIn')['id'],
						'activity' 		=> "Product_promocode ID: " . $promo_id . " added",
						'created_at'	=> date('Y-m-d H:i:s')
					);
					Log::create($logData);
					// End Log =============
				}
			}
		}

		return back()->with('success', 'Promocode Has Been Added!.');
	}

	/**
	 * Display the specified resource.
	 *
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function show($id)
	{
		$data['mainMenu'] = 'promocodeManagement';
		$data['subMenu'] = 'promocodeList';

		$data['promocode'] = Promocode::where(['id' => $id])->first();

		return view('admin.promocodes.view-promocode', $data);
	}

	/**
	 * Show the form for editing the specified resource.
	 *
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function edit($id)
	{
		$data['mainMenu'] = 'promocodeManagement';
		$data['subMenu'] = 'promocodeList';

		$data['promocode'] = Promocode::where(['id' => $id])->first();

		return view('admin.promocodes.edit-promocode', $data);
	}

	/**
	 * Update the specified resource in storage.
	 *
	 * @param  \Illuminate\Http\Request  $request
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function update(Request $request, $id)
	{
		$admin_id = $request->session()->get('loggedIn')['id'];
		$request->validate([
			'code' => 'required|unique:promocodes',
			'discount_type' => 'required',
			'amount' => 'required',
			'promo_for' => 'required',
			'promo_type' => 'required',
			'start_date' => 'required',
			'end_date' => 'required',

		]);

		$data = array(

			'admin_id' => $admin_id,
			'code' => $request->code,
			'discount_type' => $request->discount_type,
			'amount' => $request->amount,
			'limit_value' => $request->limit_value,
			'promo_for' => $request->promo_for,
			'promo_type' => $request->promo_type,
			'start_date' => $request->start_date,
			'end_date' => $request->end_date,
			'status' => 1,

		);

		Promocode::where('id', $id)->update($data);
		// Log Data Entry ===========
		$logData = array(
			'user_id' 		=> Session::get('loggedIn')['id'],
			'activity' 		=> "Product_promocode ID: " . $id . " updated",
			'created_at'	=> date('Y-m-d H:i:s')
		);
		Log::create($logData);
		// End Log =============

		return back()->with('success', 'Promocode Has Been Added!.');
	}

	/**
	 * Remove the specified resource from storage.
	 *
	 * @param  int  $id
	 * @return \Illuminate\Http\Response
	 */
	public function destroy($id)
	{
		Promocode::where(['id' => $id])->delete();
		// Log Data Entry ===========
		$logData = array(
			'user_id' 		=> Session::get('loggedIn')['id'],
			'activity' 		=> "Product_promocode ID: " . $id . " deleted",
			'created_at'	=> date('Y-m-d H:i:s')
		);
		Log::create($logData);
		// End Log =============
		return back()->with('success', 'Post deleted successfully');
	}


	// map course list

	public function mapCourseList(Request $request, $promo_id)
	{
		$data['mainMenu'] = 'promocodeManagement';
		$data['subMenu'] = 'promocodeList';
		$admin_id = $request->session()->get('loggedIn')['id'];

		$admin_id = $request->session()->get('loggedIn')['id'];
		if (isset($_GET['query']) && strlen($_GET['query']) > 1) {

			$search_text = $_GET['query'];


			$data['promocodes'] = Product::where('products.name', 'LIKE', '%' . $search_text . '%')
				->where(['product_promocodes.promo_id' => $promo_id])
				->join('product_promocodes', 'product_promocodes.product_id', '=', 'products.id')
				->paginate(10, ['products.name', 'product_promocodes.id']);
		} else {

			$data['promocodes'] = Product::where(['product_promocodes.promo_id' => $promo_id])
				->join('product_promocodes', 'product_promocodes.product_id', '=', 'products.id')
				->paginate(10, ['products.name', 'product_promocodes.id']);
		}

		$data['promo'] = Promocode::where('id', $promo_id)->first();
		return view('admin.promocodes.map-product-list', $data);
	}

	public function deleteMapPromocode($id)
	{
		Product_promocode::where(['id' => $id])->delete();
		// Log Data Entry ===========
		$logData = array(
			'user_id' 		=> Session::get('loggedIn')['id'],
			'activity' 		=> "Product_promocode ID: " . $id . " deleted",
			'created_at'	=> date('Y-m-d H:i:s')
		);
		Log::create($logData);
		// End Log =============
		return back()->with('success', 'Post deleted successfully');
	}
}

Anon7 - 2021