@extends('layouts.master') 
 
@section('title') Product @endsection 
 
@section('top') 
    <!-- DataTables --> 
    <link rel="stylesheet" href="{{ asset('assets/bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css') }}"> 
@endsection 
 
@section('header') Product @endsection 
@section('description') This page about your all product @endsection 
 
@section('top') 
@endsection 
 
@section('breadcrumb') 
<ol class="breadcrumb"> 
    <li><a href="{{url('/')}}"><i class="fa fa-dashboard"></i> Dashboard</a></li> 
    <li class="active"> Product</li> 
</ol> 
@endsection 
 
@section('content') 
    <div class="box"> 
 
        <div class="box-header"> 
            <h3 class="box-title">Data Products</h3> 
        </div> 
 
        <div class="box-header"> 
            <a onclick="addForm()" class="btn btn-primary">Add Products</a> 
        </div> 
 
 
        <!-- /.box-header --> 
        <div class="box-body"> 
            <table id="products-table" class="table table-striped"> 
                <thead> 
                <tr> 
                    <th>ID</th> 
                    <th>name</th> 
                    <th>Barcode</th> 
                    <th>Barcode Image</th> 
                    <th>price</th> 
                    <th>QTY</th> 
                    <th>Image</th> 
                    <th>Category</th> 
                    <th></th> 
                </tr> 
                </thead> 
                <tbody></tbody> 
            </table> 
        </div> 
        <!-- /.box-body --> 
    </div> 
 
    @include('products.form') 
 
@endsection 
 
@section('bot') 
 
    <!-- DataTables --> 
    <script src=" {{ asset('assets/bower_components/datatables.net/js/jquery.dataTables.min.js') }} "></script> 
    <script src="{{ asset('assets/bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js') }} "></script> 
 
    {{-- Validator --}} 
    <script src="{{ asset('assets/validator/validator.min.js') }}"></script> 
 
    <script type="text/javascript"> 
        var table = $('#products-table').DataTable({ 
            processing: true, 
            serverSide: true, 
            ajax: "{{ route('api.products') }}", 
            columns: [ 
                {data: 'id', name: 'id'}, 
                {data: 'name', name: 'name'}, 
                {data: 'barcode_name', name: 'barcode_name'}, 
                {data: 'barcode_image', name: 'barcode_image'}, 
                {data: 'price', name: 'price'}, 
                {data: 'qty', name: 'qty'}, 
                {data: 'show_photo', name: 'show_photo'}, 
                {data: 'category_name', name: 'category_name'}, 
                {data: 'action', name: 'action', orderable: false, searchable: false} 
            ] 
        }); 
 
        function addForm() { 
            save_method = "add"; 
            $('input[name=_method]').val('POST'); 
            $('#modal-form').modal('show'); 
            $('#modal-form form')[0].reset(); 
            $('.modal-title').text('Add Products'); 
        } 
 
        function editForm(id) { 
            save_method = 'edit'; 
            $('input[name=_method]').val('PATCH'); 
            $('#modal-form form')[0].reset(); 
            $.ajax({ 
                url: "{{ url('products') }}" + '/' + id + "/edit", 
                type: "GET", 
                dataType: "JSON", 
                success: function(data) { 
                    $('#modal-form').modal('show'); 
                    $('.modal-title').text('Edit Products'); 
 
                    $('#id').val(data.id); 
                    $('#name').val(data.name); 
                    $('#barcode').val(data.barcode.name); 
                    $('#price').val(data.price); 
                    $('#qty').val(data.qty); 
                    $('#category_id').val(data.category_id).trigger('change'); 
                }, 
                error : function() { 
                    alert("Nothing Data"); 
                } 
            }); 
        } 
 
        function deleteData(id){ 
            var csrf_token = $('meta[name="csrf-token"]').attr('content'); 
            swal({ 
                title: 'Are you sure?', 
                text: "You won't be able to revert this!", 
                type: 'warning', 
                showCancelButton: true, 
                cancelButtonColor: '#d33', 
                confirmButtonColor: '#3085d6', 
                confirmButtonText: 'Yes, delete it!' 
            }).then(function () { 
                $.ajax({ 
                    url : "{{ url('products') }}" + '/' + id, 
                    type : "POST", 
                    data : {'_method' : 'DELETE', '_token' : csrf_token}, 
                    success : function(data) { 
                        table.ajax.reload(); 
                        swal({ 
                            title: 'Success!', 
                            text: data.message, 
                            type: 'success', 
                            timer: '1500' 
                        }) 
                    }, 
                    error : function () { 
                        swal({ 
                            title: 'Oops...', 
                            text: data.message, 
                            type: 'error', 
                            timer: '1500' 
                        }) 
                    } 
                }); 
            }); 
        } 
 
        $(function(){ 
            $('#modal-form form').validator().on('submit', function (e) { 
                if (!e.isDefaultPrevented()){ 
                    var id = $('#id').val(); 
                    if (save_method == 'add') url = "{{ url('products') }}"; 
                    else url = "{{ url('products') . '/' }}" + id; 
 
                    $.ajax({ 
                        url : url, 
                        type : "POST", 
 
                        data: new FormData($("#modal-form form")[0]), 
                        contentType: false, 
                        processData: false, 
                        success : function(data) { 
                            $('#modal-form').modal('hide'); 
                            table.ajax.reload(); 
                            swal({ 
                                title: 'Success!', 
                                text: data.message, 
                                type: 'success', 
                                timer: '1500' 
                            }) 
                        }, 
                        error : function(data){ 
                            swal({ 
                                title: 'Oops...', 
                                text: data.message, 
                                type: 'error', 
                                timer: '1500' 
                            }) 
                        } 
                    }); 
                    return false; 
                } 
            }); 
        }); 
    </script> 
 
@endsection 
 
 |