HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /var/www/devs.lapieza.net/resources/views/backend/product/products/
Upload File :
Current File : /var/www/devs.lapieza.net/resources/views/backend/product/products/index.blade.php
@extends('backend.layouts.app')



@section('content')



    @php

        CoreComponentRepository::instantiateShopRepository();

        CoreComponentRepository::initializeCache();

    @endphp



    <div class="aiz-titlebar text-left mt-2 mb-3">

        <div class="row align-items-center">

            <div class="col-auto">

                <h1 class="h3">{{ translate('All products') }}</h1>

            </div>

            @if (

                $type != 'Seller' &&

                    auth()->user()->can('add_new_product'))

                <div class="col text-right">

                    <a href="{{ route('products.create') }}" class="btn btn-circle btn-info">

                        <span>{{ translate('Add New Product') }}</span>

                    </a>

                </div>

            @endif

        </div>

    </div>

    <br>



    <div class="card">

        <form class="" id="sort_products" action="" method="GET">

            <div class="card-header row gutters-5">

                <div class="col">

                    <h5 class="mb-md-0 h6">{{ translate('All Product') }}</h5>

                </div>



                @can('product_delete')

                    <div class="dropdown mb-2 mb-md-0">

                        <button class="btn border dropdown-toggle" type="button" data-toggle="dropdown">

                            {{ translate('Bulk Action') }}

                        </button>

                        <div class="dropdown-menu dropdown-menu-right">

                            <a class="dropdown-item confirm-alert" href="javascript:void(0)" data-target="#bulk-delete-modal">

                                {{ translate('Delete selection') }}</a>

                        </div>

                    </div>

                @endcan



                @if ($type == 'Seller')

                    <div class="col-md-2 ml-auto">

                        <select class="form-control form-control-sm aiz-selectpicker mb-2 mb-md-0" id="user_id"

                            name="user_id" onchange="sort_products()">

                            <option value="">{{ translate('All Sellers') }}</option>

                            @foreach (App\Models\User::where('user_type', '=', 'seller')->whereHas('shop')->get() as $key => $seller)

                                <option value="{{ $seller->id }}" @if ($seller->id == $seller_id) selected @endif>

                                    {{ $seller->shop->name }} ({{ $seller->name }})

                                </option>

                            @endforeach

                        </select>

                    </div>

                @endif

                @if ($type == 'All')

                    <div class="col-md-2 ml-auto">

                        <select class="form-control form-control-sm aiz-selectpicker mb-2 mb-md-0" id="user_id"

                            name="user_id" onchange="sort_products()">

                            <option value="">{{ translate('All Sellers') }}</option>

                            @foreach (App\Models\User::where('user_type', '=', 'admin')->orWhere('user_type', '=', 'seller')->get() as $key => $seller)

                                <option value="{{ $seller->id }}" @if ($seller->id == $seller_id) selected @endif>

                                    {{ $seller->name }}</option>

                            @endforeach

                        </select>

                    </div>

                @endif

                <div class="col-md-2 ml-auto">

                    <select class="form-control form-control-sm aiz-selectpicker mb-2 mb-md-0" name="type" id="type"

                        onchange="sort_products()">

                        <option value="">{{ translate('Sort By') }}</option>

                        <option value="rating,desc"

                            @isset($col_name, $query) @if ($col_name == 'rating' && $query == 'desc') selected @endif @endisset>

                            {{ translate('Rating (High > Low)') }}</option>

                        <option value="rating,asc"

                            @isset($col_name, $query) @if ($col_name == 'rating' && $query == 'asc') selected @endif @endisset>

                            {{ translate('Rating (Low > High)') }}</option>

                        <option

                            value="num_of_sale,desc"@isset($col_name, $query) @if ($col_name == 'num_of_sale' && $query == 'desc') selected @endif @endisset>

                            {{ translate('Num of Sale (High > Low)') }}</option>

                        <option

                            value="num_of_sale,asc"@isset($col_name, $query) @if ($col_name == 'num_of_sale' && $query == 'asc') selected @endif @endisset>

                            {{ translate('Num of Sale (Low > High)') }}</option>

                        <option

                            value="unit_price,desc"@isset($col_name, $query) @if ($col_name == 'unit_price' && $query == 'desc') selected @endif @endisset>

                            {{ translate('Base Price (High > Low)') }}</option>

                        <option

                            value="unit_price,asc"@isset($col_name, $query) @if ($col_name == 'unit_price' && $query == 'asc') selected @endif @endisset>

                            {{ translate('Base Price (Low > High)') }}</option>

                    </select>

                </div>

                <div class="col-md-2">

                    <div class="form-group mb-0">

                        <input type="text" class="form-control form-control-sm" id="search"

                            name="search"@isset($sort_search) value="{{ $sort_search }}" @endisset

                            placeholder="{{ translate('Type & Enter') }}">

                    </div>

                </div>

            </div>



            <div class="card-body">

                <table class="table aiz-table mb-0">

                    <thead>

                        <tr>

                            @if (auth()->user()->can('product_delete'))

                                <th>

                                    <div class="form-group">

                                        <div class="aiz-checkbox-inline">

                                            <label class="aiz-checkbox">

                                                <input type="checkbox" class="check-all">

                                                <span class="aiz-square-check"></span>

                                            </label>

                                        </div>

                                    </div>

                                </th>

                            @else

                                <th data-breakpoints="lg">#</th>

                            @endif

                            <th>{{ translate('Name') }}</th>

                            @if ($type == 'Seller' || $type == 'All')

                                <th data-breakpoints="lg">{{ translate('Added By') }}</th>

                            @endif

                            <th data-breakpoints="sm">{{ translate('Info') }}</th>

                            <th data-breakpoints="md">{{ translate('Total Stock') }}</th>

                            <th data-breakpoints="lg">{{ translate('Todays Deal') }}</th>

                            <th data-breakpoints="lg">{{ translate('Published') }}</th>

                            @if (get_setting('product_approve_by_admin') == 1 && $type == 'Seller')

                                <th data-breakpoints="lg">{{ translate('Approved') }}</th>

                            @endif

                            <th data-breakpoints="lg">{{ translate('Featured') }}</th>

                            <th data-breakpoints="sm" class="text-right">{{ translate('Options') }}</th>

                        </tr>

                    </thead>

                    <tbody>

                        @foreach ($products as $key => $product)

                            <tr>

                                @if (auth()->user()->can('product_delete'))

                                    <td>

                                        <div class="form-group d-inline-block">

                                            <label class="aiz-checkbox">

                                                <input type="checkbox" class="check-one" name="id[]"

                                                    value="{{ $product->id }}">

                                                <span class="aiz-square-check"></span>

                                            </label>

                                        </div>

                                    </td>

                                @else

                                    <td>{{ $key + 1 + ($products->currentPage() - 1) * $products->perPage() }}</td>

                                @endif

                                <td>

                                    <div class="row gutters-5 w-200px w-md-300px mw-100">

                                        <div class="col-auto">

                                            <img src="{{ uploaded_asset($product->thumbnail_img) }}" alt="Image"

                                                class="size-50px img-fit">

                                        </div>

                                        <div class="col">

                                            <span

                                                class="text-muted text-truncate-2">{{ $product->getTranslation('name') }}</span>

                                        </div>

                                    </div>

                                </td>

                                @if ($type == 'Seller' || $type == 'All')

                                    <td>{{ optional($product->user)->name }}</td>

                                @endif

                                <td>

                                    <strong>{{ translate('Num of Sale') }}:</strong> {{ $product->num_of_sale }}

                                    {{ translate('times') }} </br>

                                    <strong>{{ translate('Base Price') }}:</strong>

                                    {{ single_price($product->unit_price) }} </br>

                                    <strong>{{ translate('Rating') }}:</strong> {{ $product->rating }} </br>

                                </td>

                                <td>

                                    @php

                                        $qty = 0;

                                        if ($product->variant_product) {

                                            foreach ($product->stocks as $key => $stock) {

                                                $qty += $stock->qty;

                                                echo $stock->variant . ' - ' . $stock->qty . '<br>';

                                            }

                                        } else {

                                            //$qty = $product->current_stock;

                                            $qty = optional($product->stocks->first())->qty;

                                            echo $qty;

                                        }

                                    @endphp

                                    @if ($qty <= $product->low_stock_quantity)

                                        <span class="badge badge-inline badge-danger">Low</span>

                                    @endif

                                </td>

                                <td>

                                    <label class="aiz-switch aiz-switch-success mb-0">

                                        <input onchange="update_todays_deal(this)" value="{{ $product->id }}"

                                            type="checkbox" <?php if ($product->todays_deal == 1) {

                                                echo 'checked';

                                            } ?>>

                                        <span class="slider round"></span>

                                    </label>

                                </td>

                                <td>

                                    <label class="aiz-switch aiz-switch-success mb-0">

                                        <input onchange="update_published(this)" value="{{ $product->id }}"

                                            type="checkbox" <?php if ($product->published == 1) {

                                                echo 'checked';

                                            } ?>>

                                        <span class="slider round"></span>

                                    </label>

                                </td>

                                @if (get_setting('product_approve_by_admin') == 1 && $type == 'Seller')

                                    <td>

                                        <label class="aiz-switch aiz-switch-success mb-0">

                                            <input onchange="update_approved(this)" value="{{ $product->id }}"

                                                type="checkbox" <?php if ($product->approved == 1) {

                                                    echo 'checked';

                                                } ?>>

                                            <span class="slider round"></span>

                                        </label>

                                    </td>

                                @endif

                                <td>

                                    <label class="aiz-switch aiz-switch-success mb-0">

                                        <input onchange="update_featured(this)" value="{{ $product->id }}"

                                            type="checkbox" <?php if ($product->featured == 1) {

                                                echo 'checked';

                                            } ?>>

                                        <span class="slider round"></span>

                                    </label>

                                </td>

                                <td class="text-right">

                                    <a class="btn btn-soft-success btn-icon btn-circle btn-sm"

                                        href="{{ route('product', $product->slug) }}" target="_blank"

                                        title="{{ translate('View') }}">

                                        <i class="las la-eye"></i>

                                    </a>

                                    @can('product_edit')

                                        @if ($type == 'Seller')

                                            <a class="btn btn-soft-primary btn-icon btn-circle btn-sm"

                                                href="{{ route('products.seller.edit', ['id' => $product->id, 'lang' => env('DEFAULT_LANGUAGE')]) }}"

                                                title="{{ translate('Edit') }}">

                                                <i class="las la-edit"></i>

                                            </a>

                                        @else

                                            <a class="btn btn-soft-primary btn-icon btn-circle btn-sm"

                                                href="{{ route('products.admin.edit', ['id' => $product->id, 'lang' => env('DEFAULT_LANGUAGE')]) }}"

                                                title="{{ translate('Edit') }}">

                                                <i class="las la-edit"></i>

                                            </a>

                                        @endif

                                    @endcan

                                    @can('product_duplicate')

                                        <a class="btn btn-soft-warning btn-icon btn-circle btn-sm"

                                            href="{{ route('products.duplicate', ['id' => $product->id, 'type' => $type]) }}"

                                            title="{{ translate('Duplicate') }}">

                                            <i class="las la-copy"></i>

                                        </a>

                                    @endcan

                                    @can('product_delete')

                                        <a href="#"

                                            class="btn btn-soft-danger btn-icon btn-circle btn-sm confirm-delete"

                                            data-href="{{ route('products.destroy', $product->id) }}"

                                            title="{{ translate('Delete') }}">

                                            <i class="las la-trash"></i>

                                        </a>

                                    @endcan

                                </td>

                            </tr>

                        @endforeach

                    </tbody>

                </table>

                <div class="aiz-pagination">

                    {{ $products->appends(request()->input())->links() }}

                </div>

            </div>

        </form>

    </div>



@endsection



@section('modal')

    <!-- Delete modal -->

    @include('modals.delete_modal')

    <!-- Bulk Delete modal -->

    @include('modals.bulk_delete_modal')

@endsection





@section('script')

    <script type="text/javascript">

        $(document).on("change", ".check-all", function() {

            if (this.checked) {

                // Iterate each checkbox

                $('.check-one:checkbox').each(function() {

                    this.checked = true;

                });

            } else {

                $('.check-one:checkbox').each(function() {

                    this.checked = false;

                });

            }



        });



        $(document).ready(function() {

            //$('#container').removeClass('mainnav-lg').addClass('mainnav-sm');

        });



        function update_todays_deal(el) {

            if (el.checked) {

                var status = 1;

            } else {

                var status = 0;

            }

            $.post('{{ route('products.todays_deal') }}', {

                _token: '{{ csrf_token() }}',

                id: el.value,

                status: status

            }, function(data) {

                if (data == 1) {

                    AIZ.plugins.notify('success', '{{ translate('Todays Deal updated successfully') }}');

                } else {

                    AIZ.plugins.notify('danger', '{{ translate('Something went wrong') }}');

                }

            });

        }



        function update_published(el) {

            if (el.checked) {

                var status = 1;

            } else {

                var status = 0;

            }

            $.post('{{ route('products.published') }}', {

                _token: '{{ csrf_token() }}',

                id: el.value,

                status: status

            }, function(data) {

                if (data == 1) {

                    AIZ.plugins.notify('success', '{{ translate('Published products updated successfully') }}');

                } else {

                    AIZ.plugins.notify('danger', '{{ translate('Something went wrong') }}');

                }

            });

        }



        function update_approved(el) {

            if (el.checked) {

                var approved = 1;

            } else {

                var approved = 0;

            }

            $.post('{{ route('products.approved') }}', {

                _token: '{{ csrf_token() }}',

                id: el.value,

                approved: approved

            }, function(data) {

                if (data == 1) {

                    AIZ.plugins.notify('success', '{{ translate('Product approval update successfully') }}');

                } else {

                    AIZ.plugins.notify('danger', '{{ translate('Something went wrong') }}');

                }

            });

        }



        function update_featured(el) {

            if (el.checked) {

                var status = 1;

            } else {

                var status = 0;

            }

            $.post('{{ route('products.featured') }}', {

                _token: '{{ csrf_token() }}',

                id: el.value,

                status: status

            }, function(data) {

                if (data == 1) {

                    AIZ.plugins.notify('success', '{{ translate('Featured products updated successfully') }}');

                } else {

                    AIZ.plugins.notify('danger', '{{ translate('Something went wrong') }}');

                }

            });

        }



        function sort_products(el) {

            $('#sort_products').submit();

        }



        function bulk_delete() {

            var data = new FormData($('#sort_products')[0]);

            $.ajax({

                headers: {

                    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')

                },

                url: "{{ route('bulk-product-delete') }}",

                type: 'POST',

                data: data,

                cache: false,

                contentType: false,

                processData: false,

                success: function(response) {

                    if (response == 1) {

                        location.reload();

                    }

                }

            });

        }

    </script>

@endsection