shell bypass 403

GrazzMean Shell

Uname: Linux peekpos.com 6.8.0-1060-aws #63~22.04.1-Ubuntu SMP Tue Jun 30 02:32:53 UTC 2026 x86_64
Software: Apache
PHP version: 8.3.25 [ PHP INFO ] PHP os: Linux
Server Ip: 47.130.192.226
Your Ip: 10.1.31.86
User: www (1001) | Group: www (1001)
Safe Mode: OFF
Disable Function:
passthru,putenv,chroot,chgrp,chown,shell_exec,popen,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv

name : ItemController.php
<?php

namespace App\Http\Controllers\front;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\Item;
use App\Models\Extra;
use App\Models\Ratting;
use App\Models\TopDeals;
use App\Models\Variation;
use App\Helpers\helper;
use App\Models\Order;
use App\Models\QuestionAnswer;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use Session;

class ItemController extends Controller
{
    public function showitem(Request $request)
    {
        if (Auth::user() && Auth::user()->type == 2) {
            $user_id = @Auth::user()->id;
        } else {
            $user_id = "";
        }

        $iteminfo = Item::with(['variation', 'subcategory_info', 'category_info', 'item_image'])->select('item.*', DB::raw('(case when favorite.item_id is null then 0 else 1 end) as is_favorite'))->where('item.slug', '=', $request->slug)->leftJoin('favorite', function ($query) use ($user_id) {
            $query->on('favorite.item_id', '=', 'item.id')
                ->where('favorite.user_id', '=', $user_id);
        })->first();
        $iteminfo->variants_json = json_decode($iteminfo->variants_json, true);
        $iteminfo->view_count = $iteminfo->view_count + 1;
        $iteminfo->update();
        $variant = Variation::where('item_id', $iteminfo->id)->first();

        $topdeals = TopDeals::first();
        if ($iteminfo->has_variation == 1) {

            if ($iteminfo->top_deals == 1) {
                if (@$topdeals->offer_type == 1) {
                    $price = $variant->price - @$topdeals->offer_amount;
                } else {
                    $price = $variant->price  - $variant->price  * (@$topdeals->offer_amount / 100);
                }

                $original_price = $variant->price;
            } else {
                $price = $variant->price;
                $original_price = $variant->original_price;
            }
        } else {

            if ($iteminfo->top_deals == 1) {
                if (@$topdeals->offer_type == 1) {
                    $price = $iteminfo->price - @$topdeals->offer_amount;
                } else {
                    $price = $iteminfo->price - $iteminfo->price * (@$topdeals->offer_amount / 100);
                }

                $original_price = $iteminfo->price;
            } else {
                $price = $iteminfo->price;
                $original_price = $iteminfo->original_price;
            }
        }
        $off = $original_price > 0 ? number_format(100 - ($price * 100) / $original_price, 1) : 0;

        if (!empty($iteminfo)) {
            $getitem = array(
                "id" => $iteminfo->id,
                "slug" => $iteminfo->slug,
                "item_name" => $iteminfo->item_name,
                "item_type" => $iteminfo->item_type,
                "item_type_image" => $iteminfo->item_type == 1 ? helper::image_path("veg.svg") : helper::image_path("nonveg.svg"),
                "preparation_time" => $iteminfo->preparation_time,
                "price" => $price,
                "available_qty" => $iteminfo->available_qty,
                "is_featured" => $iteminfo->is_featured,
                "tax" => $iteminfo->tax,
                "image_name" => $iteminfo['item_image']->image_name,
                "item_description" => $iteminfo->item_description,
                "category_info" => $iteminfo->category_info,
                "subcategory_info" => $iteminfo->subcategory_info,
                "has_variation" => $iteminfo->has_variation,
                "variants_json" => $iteminfo->variants_json,
                "attribute" => ucfirst($iteminfo->attribute),
                "variation" => $iteminfo->variation,
                "qty" => $iteminfo->qty,
                "stock_management" => $iteminfo->stock_management,
                "min_order" => $iteminfo->min_order,
                "max_order" => $iteminfo->max_order,
                "original_price" => $original_price,
                "item_status" => $iteminfo->item_status,
                "is_deleted" => $iteminfo->is_deleted,
                "is_favorite" => $iteminfo->is_favorite,
                'top_deals' => $iteminfo->top_deals,
                'sku' => $iteminfo->sku,
                "video_url" => $iteminfo->video_url,
                "extras" => Extra::where('item_id', $iteminfo->id)->get(),

            );

            $html = view('web.detail', compact('getitem', 'topdeals'))->render();
            return response()->json(['status' => 1, 'output' => $html], 200);
        }
        return response()->json(['status' => 0, 'message' => trans('messages.wrong')], 200);
    }
    public function itemdetails(Request $request)
    {
        $user_id = @Auth::user()->id;
        $session_id = Session::getId();
        if ($user_id != null) {
            $getitemdata = Item::with('category_info', 'subcategory_info', 'variation', 'item_images')->select('item.*', DB::raw('(case when favorite.item_id is null then 0 else 1 end) as is_favorite'), DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'), DB::raw('ROUND(AVG(testimonials.star),1) as ratings_average'))
                ->leftJoin('favorite', function ($query) use ($user_id) {
                    $query->on('favorite.item_id', '=', 'item.id')
                        ->where('favorite.user_id', '=', $user_id);
                })
                ->leftJoin('cart', function ($query) use ($user_id) {
                    $query->on('cart.item_id', '=', 'item.id')
                        ->where('cart.user_id', '=', $user_id);
                })
                ->leftJoin('testimonials', 'testimonials.item_id', '=', 'item.id')
                ->groupBy('item.id', 'cart.item_id')
                ->where('item.slug', '=', $request->slug)
                ->first();

            if (!empty($getitemdata)) {
                $getitemdata->variants_json = json_decode(@$getitemdata->variants_json, true);
                $getitemdata->view_count = @$getitemdata->view_count + 1;
                $getitemdata->update();
            }
            $getrelateditems = Item::with('category_info', 'subcategory_info', 'variation', 'item_images', 'extras')->select('item.*', DB::raw('(case when favorite.item_id is null then 0 else 1 end) as is_favorite'), DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'), DB::raw('ROUND(AVG(testimonials.star),1) as ratings_average'))
                ->leftJoin('favorite', function ($query) use ($user_id) {
                    $query->on('favorite.item_id', '=', 'item.id')
                        ->where('favorite.user_id', '=', $user_id);
                })
                ->leftJoin('cart', function ($query) use ($user_id) {
                    $query->on('cart.item_id', '=', 'item.id')
                        ->where('cart.user_id', '=', $user_id);
                })
                ->leftJoin('testimonials', 'testimonials.item_id', '=', 'item.id')
                ->groupBy('item.id', 'cart.item_id')
                ->orderByDesc('item.id')
                ->where('item.id', '!=', @$getitemdata->id)
                ->where('item.cat_id', '=', @$getitemdata->cat_id)
                ->where('item.item_status', '1')->where('item.is_deleted', '2')
                ->take(4)->get();
        } else {
            $getitemdata = Item::with('category_info', 'subcategory_info', 'variation', 'item_images', 'extras')->select('item.*', DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'), DB::raw('ROUND(AVG(testimonials.star),1) as ratings_average'))
                ->leftJoin('cart', function ($query) use ($session_id) {
                    $query->on('cart.item_id', '=', 'item.id')
                        ->where('cart.session_id', '=', $session_id);
                })->leftJoin('testimonials', 'testimonials.item_id', '=', 'item.id')
                ->groupBy('item.id', 'cart.item_id')
                ->where('item.slug', '=', $request->slug)
                ->first();

            if (!empty($getitemdata)) {
                $getitemdata->view_count = $getitemdata->view_count + 1;
                $getitemdata->update();
                $getitemdata->variants_json = json_decode($getitemdata->variants_json, true);
            }
            $getrelateditems = Item::with('category_info', 'subcategory_info', 'variation', 'item_images')->select('item.*', DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'), DB::raw('ROUND(AVG(testimonials.star),1) as ratings_average'))
                ->leftJoin('cart', function ($query) use ($session_id) {
                    $query->on('cart.item_id', '=', 'item.id')
                        ->where('cart.session_id', '=', $session_id);
                })
                ->leftJoin('testimonials', 'testimonials.item_id', '=', 'item.id')
                ->groupBy('item.id', 'cart.item_id')
                ->orderByDesc('item.id')
                ->where('item.id', '!=', @$getitemdata->id)
                ->where('item.cat_id', '=', @$getitemdata->cat_id)
                ->where('item.item_status', '1')->where('item.is_deleted', '2')
                ->take(4)->get();
        }


        $testimonials = Ratting::with('user_info')->where('item_id', @$getitemdata->id)->where('status', 1)->orderByDesc('id')->get();

        $orders = Order::where('order.user_id', @Auth::user()->id)->join('order_details', 'order.id', 'order_details.order_id')->where('order_details.item_id', @$getitemdata->id)->where('order.status_type', '3')->count();
        $rattingcount = Ratting::where('user_id', @Auth::user()->id)->where('item_id', @$getitemdata->id)->count();

        $averagerating = Ratting::where('item_id', @$getitemdata->id)->where('status', 1)->avg('star');
        $totalreview = Ratting::where('item_id', @$getitemdata->id)->where('status', 1)->count();
        $fivestaraverage = Ratting::where('item_id', @$getitemdata->id)->where('star', 5)->where('status', 1)->count('star');
        $fourstaraverage = Ratting::where('item_id', @$getitemdata->id)->where('star', 4)->where('status', 1)->count('star');
        $threestaraverage = Ratting::where('item_id', @$getitemdata->id)->where('star', 3)->where('status', 1)->count('star');
        $twostaraverage = Ratting::where('item_id', @$getitemdata->id)->where('star', 2)->where('status', 1)->count('star');
        $onestaraverage = Ratting::where('item_id', @$getitemdata->id)->where('star', 1)->where('status', 1)->count('star');
        $topdeals = TopDeals::first();
        $question_answer = QuestionAnswer::where('product_id', $getitemdata->id)->whereNot('answer', '')->get();
        return view('web.productdetails', compact('getitemdata', 'getrelateditems', 'testimonials', 'orders', 'rattingcount', 'averagerating', 'totalreview', 'fivestaraverage', 'fourstaraverage', 'threestaraverage', 'twostaraverage', 'onestaraverage', 'topdeals','question_answer'));
    }
    public function search(Request $request)
    {
        $user_id = @Auth::user()->id;
        $session_id = Session::getId();
        if ($user_id != null) {
            $getsearchitems = Item::with('category_info', 'subcategory_info', 'variation', 'item_image')->select('item.*', DB::raw('(case when favorite.item_id is null then 0 else 1 end) as is_favorite'), DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'))
                ->leftJoin('order_details', 'order_details.item_id', 'item.id')
                ->leftJoin('favorite', function ($query) use ($user_id) {
                    $query->on('favorite.item_id', '=', 'item.id')
                        ->where('favorite.user_id', '=', $user_id);
                })
                ->leftJoin('cart', function ($query) use ($user_id) {
                    $query->on('cart.item_id', '=', 'item.id')
                        ->where('cart.user_id', '=', $user_id);
                })
                ->groupBy('order_details.item_id', 'item.id', 'cart.item_id')
                ->where('item.item_name', 'like', '%' . $request->itemname . '%')
                ->where('item.item_status', '1')->where('item.is_deleted', '2')
                ->orderByDesc('item.id')->paginate(15);
        } else {
            $getsearchitems = Item::with('category_info', 'subcategory_info', 'variation', 'item_image')->select('item.*', DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'))
                ->leftJoin('order_details', 'order_details.item_id', 'item.id')
                ->leftJoin('cart', function ($query) use ($session_id) {
                    $query->on('cart.item_id', '=', 'item.id')
                        ->where('cart.session_id', '=', $session_id);
                })
                ->groupBy('order_details.item_id', 'item.id', 'cart.item_id')
                ->where('item.item_name', 'like', '%' . $request->itemname . '%')
                ->where('item.item_status', '1')->where('item.is_deleted', '2')
                ->orderByDesc('item.id')->paginate(16);
        }

        return view('web.search', compact('getsearchitems'));
    }
    public function viewall(Request $request)
    {
        $user_id = @Auth::user()->id;
        $session_id = Session::getId();
        $getsearchitems = array();
        if ($user_id != null) {
            if ($request->has('type') && $request->type != "" && in_array($request->type, array('todayspecial', 'topitems', 'recommended', 'topdeals'))) {
                $getsearchitems = Item::with('category_info', 'subcategory_info', 'variation', 'item_image')->select('item.*', DB::raw('(case when favorite.item_id is null then 0 else 1 end) as is_favorite'), DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'), DB::raw('count(order_details.item_id) as item_order_counter'))
                    ->leftJoin('order_details', 'order_details.item_id', 'item.id')
                    ->leftJoin('favorite', function ($query) use ($user_id) {
                        $query->on('favorite.item_id', '=', 'item.id')
                            ->where('favorite.user_id', '=', $user_id);
                    })
                    ->leftJoin('cart', function ($query) use ($user_id) {
                        $query->on('cart.item_id', '=', 'item.id')
                            ->where('cart.user_id', '=', $user_id);
                    })
                    ->groupBy('item.id', 'cart.item_id')->where('item.item_status', '1')->where('item.is_deleted', '2');
                if ($request->has('type') && $request->type != "") {
                    if ($request->type == "todayspecial") {
                        $getsearchitems = $getsearchitems->where('item.is_featured', '1')->orderByDesc('item.id');
                    }
                    if ($request->type == "topitems") {
                        $getsearchitems = $getsearchitems->orderByDesc('item_order_counter');
                    }
                    if ($request->type == "recommended") {
                        $getsearchitems = $getsearchitems->inRandomOrder();
                    }
                    if ($request->type == "topdeals") {

                        $getsearchitems = $getsearchitems->where('item.top_deals', 1);
                    }
                }
                if ($request->has('filter') && $request->filter != "") {
                    if ($request->filter == "veg") {
                        $getsearchitems = $getsearchitems->where('item.item_type', 1);
                    }
                    if ($request->filter == "nonveg") {
                        $getsearchitems = $getsearchitems->where('item.item_type', 2);
                    }
                }
                $getsearchitems = $getsearchitems->paginate(15);
            }
        } else {
            if ($request->has('type') && $request->type != "" && in_array($request->type, array('todayspecial', 'topitems', 'recommended', 'topdeals'))) {
                $getsearchitems = Item::with('category_info', 'subcategory_info', 'variation', 'item_image')->select('item.*', DB::raw('(case when item.price is null then 0 else item.price end) as item_price'), DB::raw('(case when cart.item_id is null then 0 else 1 end) as is_cart'), DB::raw('count(order_details.item_id) as item_order_counter'))
                    ->leftJoin('order_details', 'order_details.item_id', 'item.id')
                    ->leftJoin('cart', function ($query) use ($session_id) {
                        $query->on('cart.item_id', '=', 'item.id')
                            ->where('cart.session_id', '=', $session_id);
                    })
                    ->groupBy('item.id', 'cart.item_id')->where('item.item_status', '1')->where('item.is_deleted', '2');
                if ($request->has('type') && $request->type != "") {
                    if ($request->type == "todayspecial") {
                        $getsearchitems = $getsearchitems->where('item.is_featured', '1')->orderByDesc('item.id');
                    }
                    if ($request->type == "topitems") {
                        $getsearchitems = $getsearchitems->orderByDesc('item_order_counter');
                    }
                    if ($request->type == "recommended") {
                        $getsearchitems = $getsearchitems->inRandomOrder();
                    }
                    if ($request->type == "topdeals") {

                        $getsearchitems = $getsearchitems->where('item.top_deals', 1);
                    }
                }
                if ($request->has('filter') && $request->filter != "") {
                    if ($request->filter == "veg") {
                        $getsearchitems = $getsearchitems->where('item.item_type', 1);
                    }
                    if ($request->filter == "nonveg") {
                        $getsearchitems = $getsearchitems->where('item.item_type', 2);
                    }
                }
                $getsearchitems = $getsearchitems->paginate(15);
            }
        }
        $topdeals = TopDeals::first();
        return view('web.viewall', compact('getsearchitems', 'topdeals'));
    }
}
© 2026 GrazzMean