v1.3.0 - Implemented DataTables

This commit is contained in:
frederikpyt
2020-09-18 10:04:33 +02:00
parent 2a2511daf4
commit 9096f64569
52 changed files with 34435 additions and 445 deletions
@@ -14,28 +14,9 @@
@if(auth()->user()->can('contact.create'))
<a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('contacts.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Kontakt</a>
@endif
<form method="post" action="{{ route("users.store") }}">
@csrf
<input type="text" class="form-controller" id="search" name="search" placeholder="Søg på navn,titel,email,tf">
</form>
<button id="filterButton" type="button" class="btn btn-sde-blue mb-0">Filter</button>
</div>
<div id="showHideCheckbox" class="mt-1">
<input class="checkbox-inline" type="checkbox" name="checkbox" id="navn" value="navn">
<label for="navn">Navn</label>
<input class="checkbox-inline" type="checkbox" name="checkbox" id="titel" value="titel">
<label for="efternavn">Titel</label>
<input class="checkbox-inline" type="checkbox" name="checkbox" id="email" value="email">
<label for="efternavn">Email</label>
<input class="checkbox-inline" type="checkbox" name="checkbox" id="tf" value="tf">
<label for="efternavn">Telefon</label>
</div>
<div id="showHideCheckboxs" style="margin-bottom: -36px">
</div>
<table class="tbl mt-2">
<tr>
<table class="tbl mt-2" id="table_id">
<thead>
<th>Kontakt Navn</th>
<th>Titel</th>
<th>E-mail</th>
@@ -46,79 +27,39 @@
@if(auth()->user()->can('contact.delete'))
<th style="width: 1em;"><img class="w-100" src="{{ asset('/images/icons/trashcan.svg') }}" alt="Delete"></th>
@endif
</tr>
@foreach($contacts as $contact)
<tr>
<td>{{ $contact->contactname }}</td>
<td>{{ $contact->title }}</td>
<td>{{ $contact->email }}</td>
<td>{{ $contact->phone }}</td>
@if(auth()->user()->can('contact.edit'))
<td><a href="{{ route("contacts.edit", [ "contact" => $contact ]) }}"><img class="w-100" src="{{ asset('/images/icons/pencil-dark.svg') }}" alt="Update"></a></td>
@endif
@if(auth()->user()->can('contact.delete'))
<td><form method="post" action="{{ route("contacts.destroy", [ "contact" => $contact ]) }}" class="w-100 nostyle">
@csrf
@method("delete")
</thead>
<tbody>
@foreach($contacts as $contact)
<tr>
<td>{{ $contact->contactname }}</td>
<td>{{ $contact->title }}</td>
<td>{{ $contact->email }}</td>
<td>{{ $contact->phone }}</td>
@if(auth()->user()->can('contact.edit'))
<td><a href="{{ route("contacts.edit", [ "contact" => $contact ]) }}"><img class="w-100" src="{{ asset('/images/icons/pencil-dark.svg') }}" alt="Update"></a></td>
@endif
@if(auth()->user()->can('contact.delete'))
<td><form method="post" action="{{ route("contacts.destroy", [ "contact" => $contact ]) }}" class="w-100 nostyle">
@csrf
@method("delete")
<button class="w-100 nostyle" onclick="return confirm('Are you sure you want to delete?');" type="submit"><img class="w-100 cursor-pointer" src="{{ asset('/images/icons/trashcan-dark.svg') }}" alt="Delete"></button>
</form>
</td>
@endif
</tr>
@endforeach
<button class="w-100 nostyle" onclick="return confirm('Are you sure you want to delete?');" type="submit"><img class="w-100 cursor-pointer" src="{{ asset('/images/icons/trashcan-dark.svg') }}" alt="Delete"></button>
</form>
</td>
@endif
</tr>
@endforeach
</tbody>
</table>
{{ $contacts->links() }}
<script>
$('#search').on('keyup', function () {
$value = $(this).val();
$checkboxValue = $( "input:checked" ).val();
$.ajax({
type: 'get',
url: '{{route('contacts.search')}}',
data: {'search':$value, 'isCheck': $checkboxValue},
success:function (data) {
console.log($checkboxValue);
$('tbody').html(data);
},
error:function (data) {
console.log(data);
}
});
})
</script>
<script>
$(document).ready(function(){
$("input:checkbox").on('click', function() {
var $box = $(this);
if ($box.is(":checked")) {
var group = "input:checkbox[name='" + $box.attr("name") + "']";
$(group).prop("checked", false);
$box.prop("checked", true);
} else {
$box.prop("checked", false);
}
});
});
//Show hide search filter
$('#showHideCheckbox').hide();
$('#showHideCheckboxs').hide();
$("#filterButton").click(function(){
$('#showHideCheckbox').toggle();
$('#showHideCheckboxs').toggle();
});
</script>
@endsection
@section('scripts')
<script>
$(document).ready( function () {
$('#table_id').DataTable({
columnDefs: [
{ orderable: false, targets: [-1, -2] }
]
});
});
</script>
@endsection