@extends('admin.index')
@section('content')
@php
use App\Models\PaymentVoucherDetails;
$total=0;
@endphp
<title> {{trans('admin.ExpensesList')}}</title>
<main id="js-page-content" role="main" class="page-content no-print">
   <ol class="breadcrumb page-breadcrumb no-print">
      <li class="breadcrumb-item"><a href="javascript:void(0);"> {{trans('admin.Reports')}}</a></li>
      <li class="breadcrumb-item active">  {{trans('admin.ExpensesList')}} </li>
      <li class="position-absolute pos-top pos-right d-none d-sm-block"><span
         class="js-get-date"></span></li>
   </ol>
   <!-- Data -->
   <div class="row hide-table">
      <div class="col-xl-12">
         <div id="panel-1" class="panel second-color">
            <div class="panel-hdr">
               <h2>
                  {{trans('admin.ExpensesList')}}
               </h2>
               <div class="panel-toolbar">
                  <button class="btn btn-primary btn-sm" data-toggle="dropdown">Table
                  Style</button>

              <form action="{{url('ExpensesListPrint')}}" method="get">
                 @honeypot
                  <div class="row" style="display: none">
                      @if(!empty($safe))
                      @for($i=0 ; $i < count($safe) ; $i++)
               <input type="hidden" name="Safe[]" value="{{$safe[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="Safe" value="">
                  @endif

                        @if(!empty($account))
                      @for($i=0 ; $i < count($account) ; $i++)
               <input type="hidden" name="Account[]" value="{{$account[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="Account" value="">
                  @endif

                        @if(!empty($subAccount))
                      @for($i=0 ; $i < count($subAccount) ; $i++)
               <input type="hidden" name="SubAccount[]" value="{{$subAccount[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="SubAccount" value="">
                  @endif


                  <input type="hidden" name="From" value="{{$from}}">
                  <input type="hidden" name="To" value="{{$to}}">
                  <input type="hidden" name="Branch" value="{{$branch}}">



                  </div>

                     <button type="submit" class="btn btn-primary btn-sm" >
                                                    <i class="fal fa-print">{{trans('admin.Print')}}</i>
                                                    </button>
                </form>

                    <form action="{{url('ExpensesListExport')}}" method="get">
                 @honeypot
                  <div class="row" style="display: none">
                      @if(!empty($safe))
                      @for($i=0 ; $i < count($safe) ; $i++)
               <input type="hidden" name="Safe[]" value="{{$safe[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="Safe" value="">
                  @endif

                        @if(!empty($account))
                      @for($i=0 ; $i < count($account) ; $i++)
               <input type="hidden" name="Account[]" value="{{$account[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="Account" value="">
                  @endif

                        @if(!empty($subAccount))
                      @for($i=0 ; $i < count($subAccount) ; $i++)
               <input type="hidden" name="SubAccount[]" value="{{$subAccount[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="SubAccount" value="">
                  @endif


                  <input type="hidden" name="From" value="{{$from}}">
                  <input type="hidden" name="To" value="{{$to}}">
                  <input type="hidden" name="Branch" value="{{$branch}}">



                  </div>

                     <button type="submit" class="btn btn-success btn-sm" >

                         Export Excel All
                                                    </button>
                </form>


                                   <form action="{{url('ExpensesListExportDetails')}}" method="get">
                 @honeypot
                  <div class="row" style="display: none">
                      @if(!empty($safe))
                      @for($i=0 ; $i < count($safe) ; $i++)
               <input type="hidden" name="Safe[]" value="{{$safe[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="Safe" value="">
                  @endif

                        @if(!empty($account))
                      @for($i=0 ; $i < count($account) ; $i++)
               <input type="hidden" name="Account[]" value="{{$account[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="Account" value="">
                  @endif

                        @if(!empty($subAccount))
                      @for($i=0 ; $i < count($subAccount) ; $i++)
               <input type="hidden" name="SubAccount[]" value="{{$subAccount[$i]}}">
                      @endfor

                  @else
                     <input type="hidden" name="SubAccount" value="">
                  @endif


                  <input type="hidden" name="From" value="{{$from}}">
                  <input type="hidden" name="To" value="{{$to}}">
                  <input type="hidden" name="Branch" value="{{$branch}}">



                  </div>

                     <button type="submit" class="btn btn-success btn-sm" >

                         Export Excel With Details All
                                                    </button>
                </form>

                   @include('admin.layouts.toolbar')
               </div>
            </div>
            <div class="panel-container show">
               <span id="ex"> @include('admin.layouts.messages')</span>
               <div class="panel-content">
                  <!-- datatable start -->
                     <div class="over-flow">
                                        <table
                                            class="table table-bordered table-hover table-striped">
                                            <thead class="bg-highlight">
                                                <tr>
                                                       <th>{{trans('admin.Name')}} </th>
                                                       <th>{{trans('admin.Total')}} </th>
                                                       <th>{{trans('admin.Actions')}} </th>

                                                </tr>

                                            </thead>

                                            <tbody>
                                                @foreach($items as $item)
                                                @php
                                  $subAccount=$item->id;
                                              $lists=PaymentVoucherDetails::whereBetween('Date',[$from,$to])


                               ->when(!empty($subAccount), function ($query) use ($subAccount) {
                                            return $query->where('Account', $subAccount);
                                        })
                                ->when(!empty($branch), function ($query) use ($branch) {
                                            return $query->where('Branch', $branch);
                                        })
                                          ->when(!empty($safe), function ($query) use ($safe) {
                                            return $query->whereIn('Safe', $safe);
                                        })
                                                ->get();

                                $Tot=PaymentVoucherDetails::whereBetween('Date',[$from,$to])


                               ->when(!empty($subAccount), function ($query) use ($subAccount) {
                                            return $query->where('Account', $subAccount);
                                        })
                                ->when(!empty($branch), function ($query) use ($branch) {
                                            return $query->where('Branch', $branch);
                                        })
                                          ->when(!empty($safe), function ($query) use ($safe) {
                                            return $query->whereIn('Safe', $safe);
                                        })
                                                ->get()->sum('Debitor');


                                                @endphp

                                                <tr>
                                                    <td> {{app()->getLocale() == 'ar' ?$item->Name :$item->NameEn}}</td>
                                                    <td>{{$Tot}}</td>
                                                    <td>


                                    <button type="button" class="btn btn-default " data-toggle="collapse" data-target="#collapseExample{{$item->id}}" aria-expanded="true" aria-controls="collapseExample">
                                 <a data-toggle="tooltip" data-placement="top" title="{{trans('admin.More')}}">
                            <i class="fal fa-arrow-circle-down"></i>
                                </a>
                         </button>
                                                    </td>
                                                </tr>
                                                  <tr>
                              <td colspan="23">
                                 <div class="collapse " id="collapseExample{{$item->id}}" style="background:white">
                                       <table class="">

                                                            <tr>

                           @if($colum->Date == 1)
                                                    <th>{{trans('admin.Date')}} </th>
                                                    @endif
                                                     @if($colum->Code_Type == 1)
                                                    <th >{{trans('admin.Code_Type')}} </th>
                                                    @endif
                                                     @if($colum->Statement == 1)
                                                    <th>{{trans('admin.Statement')}} </th>
                                                    @endif
                                                    @if($colum->Debitor == 1)
                                                    <th>{{trans('admin.Debitor')}} </th>
                                                    @endif
                                                       @if($colum->Cost_Center == 1)
                                                    <th >{{trans('admin.Cost_Center')}} </th>
                                                    @endif
                                                       @if($colum->Coin == 1)
                                                    <th >{{trans('admin.Coin')}} </th>
                                                    @endif
                                                                   @if($colum->User == 1)
                                                    <th >{{trans('admin.User')}}</th>
                                                                @endif
                                                                   @if($colum->Account == 1)
                                                    <th >{{trans('admin.Account')}}</th>
                                                                @endif
                                                                      @if($colum->Branch == 1)
                                                    <th >{{trans('admin.Branch')}}</th>
                                                                @endif
                                                                <th>{{trans('admin.Action')}}</th>
                                                            </tr>

                                                        <tbody>
                                                            @foreach($lists as $detail)

                                                    <tr>
                                                             @if($colum->Date == 1)
                                                   <td>{{$detail->Date}}</td>
                                                    @endif
                                                     @if($colum->Code_Type == 1)
                                                   <td>{{$detail->PV_ID()->first()->Code}}</td>
                                                    @endif
                                                     @if($colum->Statement == 1)
                                                     <td>{{$detail->Statement}}</td>
                                                    @endif
                                                    @if($colum->Debitor == 1)
                                               <td>{{$detail->Debitor}}</td>
                                                    @endif
                                                       @if($colum->Cost_Center == 1)
                                                <td>@if(!empty($detail->Cost_Center))

                                       {{app()->getLocale() == 'ar' ?$detail->Cost_Center()->first()->Arabic_Name :$detail->Cost_Center()->first()->English_Name}}


                                                    @endif</td>
                                                    @endif
                                                       @if($colum->Coin == 1)
                                                      <td>@if(!empty($detail->Coin))


                                         {{app()->getLocale() == 'ar' ?$detail->Coin()->first()->Arabic_Name :$detail->Coin()->first()->English_Name}}

                                                          @endif</td>
                                                    @endif
                                                                   @if($colum->User == 1)
                                       <td>@if(!empty($detail->User()->first()->name))

                                  {{app()->getLocale() == 'ar' ?$detail->User()->first()->name :$detail->User()->first()->nameEn}}

                                           @endif</td>
                                                                @endif

                                                                   @if($colum->Account == 1)
                                                  <td>@if(!empty($detail->Account))
                                                      {{app()->getLocale() == 'ar' ?$detail->Account()->first()->Name :$detail->Account()->first()->NameEn}}

                                                      @endif</td>
                                                                @endif
                                                    @if($colum->Branch == 1)
                                                      <td>@if(!empty($detail->Branch))


                                                            {{app()->getLocale() == 'ar' ?$detail->Branch()->first()->Arabic_Name :$detail->Branch()->first()->English_Name}}

                                                          @endif</td>
                                                                @endif

                                                            <td>
                                    <a href="{{url('Payment_VoucherPrint/'.$detail->PV_ID)}}" class="btn btn-default" target="_blank" >
                                                    <i class="fal fa-print"></i>
                                                    </a>
  <a href="{{url('EditPayment_Voucher/'.$detail->PV_ID)}}" class="btn btn-default" target="_blank" ><i class="fal fa-edit"></i></a>

                                                            </td>

                                                            @php  $total += $detail->Debitor ;  @endphp

                                                        </tr>
                                                            @endforeach
                                                        </tbody>
                                                    </table>
                                                </div>
                                   </td>
                           </tr>

                                                @endforeach
                                            </tbody>
                                        </table>
                                        </div>
                   {{$items->Links()}}
                  <!-- datatable end -->

                               <div class="over-flow">
                                        <table class="table table-bordered table-hover table-striped ">
                                            <tbody>
                                                <tr>
                                                    <td>{{trans('admin.Total_Debiator')}}</td>
                                                    <td>{{$total}}</td>

                                                </tr>

                                            </tbody>
                                        </table>
                                        </div>
               </div>
            </div>
         </div>
      </div>
   </div>


</main>
@endsection
@push('js')
   <link rel="stylesheet" media="screen, print" href="{{asset('Admin/css/datagrid/datatables/datatables.bundle.css')}}">
    <link rel="stylesheet" media="screen, print" href="{{asset('Admin/css/formplugins/summernote/summernote.css')}}">
    <link rel="stylesheet" media="screen, print" href="{{asset('Admin/css/formplugins/select2/select2.bundle.css')}}">

 <script src="{{asset('Admin/js/datagrid/datatables/datatables.export.js')}}"></script>
    <script src="{{asset('Admin/js/datagrid/datatables/datatables.bundle.js')}}"></script>
    <script src="{{asset('Admin/js/formplugins/summernote/summernote.js')}}"></script>
    <script src="{{asset('Admin/js/formplugins/select2/select2.bundle.js')}}"></script>
    <script>
        //_fnFeatureHtmlLength();
        $(document).ready(function () {
            // Setup - add a text input to each footer cell
            $('#dt-basic-example thead tr').clone(true).appendTo('#dt-basic-example thead');
            $('#dt-basic-example thead tr:eq(1) th').each(function (i) {
                var title = $(this).text();
                $(this).html('<input type="text" class="form-control form-control-sm" placeholder="Search ' + '" />');

                $('input', this).on('keyup change', function () {
                    if (table.column(i).search() !== this.value) {
                        table
                            .column(i)
                            .search(this.value)
                            .draw();
                    }
                });
            });
            var table = $('#dt-basic-example').DataTable(
                {
                    // responsive: true,
                    orderCellsTop: true,
                    fixedHeader: true,
                    lengthChange: true,

                    dom: "<'row mb-3'<'col-sm-12 col-md-3 d-flex align-items-center justify-content-start'f><'col-sm-12 col-md-9 d-flex align-items-center justify-content-end'B>>" +
                        "<'row'<'col-sm-12'tr>>" +
                        "<'row'<'col-sm-12 col-md-5'i><'col-sm-12 col-md-7'p>>",

                    buttons: [
                        {
                            extend: 'pageLength',
                            className: 'btn-outline-default'
                        },
                        {
                            extend: 'colvis',
                            text: 'Column Visibility',
                            titleAttr: 'Col visibility',
                            className: 'btn-outline-default'
                        },
                        {
                            extend: 'pdfHtml5',
                            text: 'PDF',
                            titleAttr: 'Generate PDF',
                            className: 'btn-outline-danger btn-sm mr-1'
                        },
                        {
                            extend: 'excelHtml5',
                            exportOptions: {
                                format: {
                                    body: function ( inner, rowidx, colidx, node ) {
                                        if ($(node).children("select").length > 0) {
                                            // we are in a cell containing a "select" drop-down - so, get it:
                                            var selectNode = node.firstElementChild;
                                            var txt = selectNode.options[selectNode.selectedIndex].text;
                                            //var txt = selectNode.options[selectNode.selectedIndex].text;
                                            return txt;
                                        } else {

                                            if ($(node).children("input").length > 0) {
                                                return $(node).children("input").first().val();
                                            } else {
                                                return inner;
                                            }


                                        }
                                    }
                                }
                            },
                            text: 'Excel',
                            titleAttr: 'Generate Excel',
                            className: 'btn-outline-success btn-sm mr-1'
                        },
                        {
                            extend: 'csvHtml5',
                            text: 'CSV',
                            titleAttr: 'Generate CSV',
                            className: 'btn-outline-primary btn-sm mr-1'
                        },
                        {
                            extend: 'copyHtml5',
                            text: 'Copy',
                            titleAttr: 'Copy to clipboard',
                            className: 'btn-outline-primary btn-sm mr-1'
                        },
                        {
                            extend: 'print',
                            text: 'Print',
                            titleAttr: 'Print Table',
                            className: 'btn-outline-primary btn-sm'
                        }
                    ],
                });
            $('.js-thead-colors a').on('click', function () {
                var theadColor = $(this).attr("data-bg");
                console.log(theadColor);
                $('#dt-basic-example thead').removeClassPrefix('bg-').addClass(theadColor);
            });

            $('.js-tbody-colors a').on('click', function () {
                var theadColor = $(this).attr("data-bg");
                console.log(theadColor);
                $('#dt-basic-example').removeClassPrefix('bg-').addClass(theadColor);
            });

        });

    </script>
     <script>

        var autoSave = $('#autoSave');
        var interval;
        var timer = function()
        {
            interval = setInterval(function()
            {
                //start slide...
                if (autoSave.prop('checked'))
                    saveToLocal();

                clearInterval(interval);
            }, 3000);
        };

        //save
        var saveToLocal = function()
        {
            localStorage.setItem('summernoteData', $('#saveToLocal').summernote("code"));
            console.log("saved");
        }

        //delete
        var removeFromLocal = function()
        {
            localStorage.removeItem("summernoteData");
            $('#saveToLocal').summernote('reset');
        }

        $(document).ready(function()
        {
            //init default
            $('.js-summernote').summernote(
            {
                height: 200,
                tabsize: 2,
                placeholder: "Type here...",
                dialogsFade: true,
                toolbar: [
                    ['style', ['style']],
                    ['font', ['strikethrough', 'superscript', 'subscript']],
                    ['font', ['bold', 'italic', 'underline', 'clear']],
                    ['fontsize', ['fontsize']],
                    ['fontname', ['fontname']],
                    ['color', ['color']],
                    ['para', ['ul', 'ol', 'paragraph']],
                    ['height', ['height']]
                    ['table', ['table']],
                    ['insert', ['link', 'picture', 'video']],
                    ['view', ['fullscreen', 'codeview', 'help']]
                ],
                callbacks:
                {
                    //restore from localStorage
                    onInit: function(e)
                    {
                        $('.js-summernote').summernote("code", localStorage.getItem("summernoteData"));
                    },
                    onChange: function(contents, $editable)
                    {
                        clearInterval(interval);
                        timer();
                    }
                }
            });

            //load emojis
            $.ajax(
            {
                url: 'https://api.github.com/emojis',
                async: false
            }).then(function(data)
            {
                window.emojis = Object.keys(data);
                window.emojiUrls = data;
            });

            //init emoji example
            $(".js-hint2emoji").summernote(
            {
                height: 100,
                toolbar: false,
                placeholder: 'type starting with : and any alphabet',
                hint:
                {
                    match: /:([\-+\w]+)$/,
                    search: function(keyword, callback)
                    {
                        callback($.grep(emojis, function(item)
                        {
                            return item.indexOf(keyword) === 0;
                        }));
                    },
                    template: function(item)
                    {
                        var content = emojiUrls[item];
                        return '<img src="' + content + '" width="20" /> :' + item + ':';
                    },
                    content: function(item)
                    {
                        var url = emojiUrls[item];
                        if (url)
                        {
                            return $('<img />').attr('src', url).css('width', 20)[0];
                        }
                        return '';
                    }
                }
            });

            //init mentions example
            $(".js-hint2mention").summernote(
            {
                height: 100,
                toolbar: false,
                placeholder: "type starting with @",
                hint:
                {
                    mentions: ['jayden', 'sam', 'alvin', 'david'],
                    match: /\B@(\w*)$/,
                    search: function(keyword, callback)
                    {
                        callback($.grep(this.mentions, function(item)
                        {
                            return item.indexOf(keyword) == 0;
                        }));
                    },
                    content: function(item)
                    {
                        return '@' + item;
                    }
                }
            });

        });

    </script>

<script type="text/javascript">
   $(".show-table").click(function(){
       $(".hide-table").show();
   });

</script>
<style>
   @media print {
   /*body * {*/
   /*	visibility: hidden;*/
   /*}*/
   .modal-content * {
   visibility: visible;
   overflow: visible;
   }
   .main-page  {
   display: none!important;
   }
   .modal {
   position: absolute;
   left: 0;
   top:-130px;
   right:0;
   margin: 0;
   padding: 0;
   /*min-height: 550px;*/
   /*visibility: visible;*/
   overflow: visible !important; /* Remove scrollbar for printing. */
   font-size:20px!important;
   }
   .modal-dialog {
   /*visibility: visible !important;*/
   overflow: visible !important; /* Remove scrollbar for printing. */
   }
   body{
   position:relative;
   }
   .no-print ,.page-content{
   display:none!important;
   }
   }
</style>
<!-- Search Selecet -->
<script>
   $(document).ready(function () {
       $(function () {
           $(".select2").select2();

           $(".select2-placeholder-multiple").select2({
               placeholder: "Select State",
           });
           $(".js-hide-search").select2({
               minimumResultsForSearch: 1 / 0,
           });
           $(".js-max-length").select2({
               maximumSelectionLength: 2,
               placeholder: "Select maximum 2 items",
           });
           $(".select2-placeholder").select2({
               placeholder: "Select a state",
               allowClear: true,
           });

           $(".js-select2-icons").select2({
               minimumResultsForSearch: 1 / 0,
               templateResult: icon,
               templateSelection: icon,
               escapeMarkup: function (elm) {
                   return elm;
               },
           });

           function icon(elm) {
               elm.element;
               return elm.id ? "<i class='" + $(elm.element).data("icon") + " mr-2'></i>" + elm.text : elm.text;
           }

           $("#Emp").select2({
               placeholder: "select...",
               ajax: {
                   type: "GET",
                   dataType: "json",
                   url: "AllEmps",
                   processResults: function (data) {
                       return {
                           results: $.map(data, function (obj, index) {
                               return { id: index, text: obj };
                           }),
                       };

                       console.log(data);
                   },
                   data: function (params) {
                       var query = {
                           search: params.term,
                       };
                       if (params.term == "*") query.items = [];
                       return { json: JSON.stringify(query) };
                   },
               },
           });

           $("#Emp").on("select2:select", function (e) {
               console.log("select done", e.params.data);
           });
       });
   });
</script>
@endpush
