@extends('layouts.app') 
@section('content') 
 
    <div class="container"> 
        <div class="row"> 
            <div class="col-lg-12"> 
      <div class="list-group div-scroll"> 
        @foreach($folders as $folder) 
          <div class="list-group-item"> 
            <a href="?f={{ \Illuminate\Support\Facades\Crypt::encrypt($folder) }}"> 
              <span class="fa fa-folder"></span> {{$folder}} 
            </a> 
            @if ($current_folder == $folder) 
              <div class="list-group folder"> 
                @foreach($folder_files as $file) 
                  <a href="?l={{ \Illuminate\Support\Facades\Crypt::encrypt($file) }}&f={{ \Illuminate\Support\Facades\Crypt::encrypt($folder) }}" 
                    class="list-group-item @if ($current_file == $file) llv-active @endif"> 
                    {{$file}} 
                  </a> 
                @endforeach 
              </div> 
            @endif 
          </div> 
        @endforeach 
        @foreach($files as $file) 
          <a href="?l={{ \Illuminate\Support\Facades\Crypt::encrypt($file) }}" 
             class="list-group-item @if ($current_file == $file) llv-active @endif"> 
            {{$file}} 
          </a> 
        @endforeach 
      </div> 
    </div> 
    <div class="col-10 table-container"> 
      @if ($logs === null) 
        <div> 
          Log file >50M, please download it. 
        </div> 
      @else 
        <table id="table-log" class="table table-striped" data-ordering-index="{{ $standardFormat ? 2 : 0 }}"> 
          <thead> 
          <tr> 
            @if ($standardFormat) 
              <th>Level</th> 
              <th>Context</th> 
              <th>Date</th> 
            @else 
              <th>Line number</th> 
            @endif 
            <th>Content</th> 
          </tr> 
          </thead> 
          <tbody> 
 
          @foreach($logs as $key => $log) 
            <tr data-display="stack{{{$key}}}"> 
              @if ($standardFormat) 
                <td class="nowrap text-{{{$log['level_class']}}}"> 
                  <span class="fa fa-{{{$log['level_img']}}}" aria-hidden="true"></span>  {{$log['level']}} 
                </td> 
                <td class="text">{{$log['context']}}</td> 
              @endif 
              <td class="date">{{{$log['date']}}}</td> 
              <td class="text"> 
                @if ($log['stack']) 
                  <button type="button" 
                          class="float-right expand btn btn-outline-dark btn-sm mb-2 ml-2" 
                          data-display="stack{{{$key}}}"> 
                    <span class="fa fa-search"></span> 
                  </button> 
                @endif 
                {{{$log['text']}}} 
                @if (isset($log['in_file'])) 
                  <br/>{{{$log['in_file']}}} 
                @endif 
                @if ($log['stack']) 
                  <div class="stack" id="stack{{{$key}}}" 
                       style="display: none; white-space: pre-wrap;">{{{ trim($log['stack']) }}} 
                  </div> 
                @endif 
              </td> 
            </tr> 
          @endforeach 
 
          </tbody> 
        </table> 
      @endif 
      <div class="p-3"> 
        @if($current_file) 
          <a href="?dl={{ \Illuminate\Support\Facades\Crypt::encrypt($current_file) }}{{ ($current_folder) ? '&f=' . \Illuminate\Support\Facades\Crypt::encrypt($current_folder) : '' }}"> 
            <span class="fa fa-download"></span> Download file 
          </a> 
          - 
          <a id="clean-log" href="?clean={{ \Illuminate\Support\Facades\Crypt::encrypt($current_file) }}{{ ($current_folder) ? '&f=' . \Illuminate\Support\Facades\Crypt::encrypt($current_folder) : '' }}"> 
            <span class="fa fa-sync"></span> Clean file 
          </a> 
          - 
          <a id="delete-log" href="?del={{ \Illuminate\Support\Facades\Crypt::encrypt($current_file) }}{{ ($current_folder) ? '&f=' . \Illuminate\Support\Facades\Crypt::encrypt($current_folder) : '' }}"> 
            <span class="fa fa-trash"></span> Delete file 
          </a> 
          @if(count($files) > 1) 
            - 
            <a id="delete-all-log" href="?delall=true{{ ($current_folder) ? '&f=' . \Illuminate\Support\Facades\Crypt::encrypt($current_folder) : '' }}"> 
              <span class="fa fa-trash-alt"></span> Delete all files 
            </a> 
          @endif 
        @endif 
      </div> 
    </div> 
    <div align="center" style="font-size:14px !important; color:#adadad !important;">Laravel Log Viewer | by Rap2h</div> 
    </div> 
</div> 
<!-- jQuery for Bootstrap --> 
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" 
        integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" 
        crossorigin="anonymous"></script> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" 
        integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" 
        crossorigin="anonymous"></script> 
<!-- FontAwesome --> 
<script defer src="https://use.fontawesome.com/releases/v5.0.6/js/all.js"></script> 
<!-- Datatables --> 
<script type="text/javascript" src="https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script> 
<script type="text/javascript" src="https://cdn.datatables.net/1.10.16/js/dataTables.bootstrap4.min.js"></script> 
<script> 
  $(document).ready(function () { 
    $('.table-container tr').on('click', function () { 
      $('#' + $(this).data('display')).toggle(); 
    }); 
    $('#table-log').DataTable({ 
      "order": [$('#table-log').data('orderingIndex'), 'desc'], 
      "stateSave": true, 
      "stateSaveCallback": function (settings, data) { 
        window.localStorage.setItem("datatable", JSON.stringify(data)); 
      }, 
      "stateLoadCallback": function (settings) { 
        var data = JSON.parse(window.localStorage.getItem("datatable")); 
        if (data) data.start = 0; 
        return data; 
      } 
    }); 
    $('#delete-log, #clean-log, #delete-all-log').click(function () { 
      return confirm('Are you sure?'); 
    }); 
  }); 
</script> 
@endsection
 
 |