This commit is contained in:
Neerholt 2020-08-17 12:24:49 +02:00
commit 8bba60fa5a
8 changed files with 184 additions and 22 deletions

View File

@ -61,7 +61,7 @@ class LocationController extends Controller
// If there already is a washing machine with that name, then don't add it
if (count($locations) > 0)
return redirect()->route("locations.store")->with('NameExists', '<p><b>Der findes allerede en lokation med det navn!</b></p>');
return redirect()->route("locations.index");
else { // Else - Add it
$location->save();
$locations = Location::query()->paginate($request->input("limit", 20));
@ -111,7 +111,7 @@ class LocationController extends Controller
// If there already is a washing machine with that name, then don't change it
if (count($allMachines) > 0)
return redirect()->route("locations.store")->with('NameExists', '<p><b>Der findes allerede en lokation med det navn!</b></p>');
return redirect()->route("locations.index");
else { // Else - Change the name
$location->update($data);
$location->save();
@ -124,12 +124,15 @@ class LocationController extends Controller
/**
* Remove the specified resource from storage.
*
* @param \App\Location $location
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy(Location $location)
public function destroy($id)
{
$locations = Location::find($id);
$locations->delete();
return redirect()->route("locations.index");
}
public function nameCheck(Request $request){
@ -139,4 +142,10 @@ class LocationController extends Controller
}
}
public function nameCheckUpdate(Request $request){
$locations = Location::query()->where('name', 'LIKE',$request->nameCheck)->where('id', '!=', $request->id)->get();
if(count($locations) > 0 && $request->nameCheck !== NULL){
return 1;
}
}
}

View File

@ -70,7 +70,7 @@ class WashingMachineController extends Controller
// If there already is a washing machine with that name, then don't add it
if (count($allMachines) > 0)
return redirect()->route("washing-machines.store")->with('WashingNameExists', '<p><b>Der findes allerede en vaskemaskine med det navn!</b></p>');
return redirect()->route("washing-machines.store");
else { // Else - Add it
$machine->save();
$machines = WashingMachine::query()->paginate($request->input("limit", 20));
@ -127,7 +127,7 @@ class WashingMachineController extends Controller
// If there already is a washing machine with that name, then don't change it
if (count($allMachines) > 0)
return redirect()->route("washing-machines.store")->with('WashingNameExists', '<p><b>Der findes allerede en vaskemaskine med det navn!</b></p>');
return redirect()->route("washing-machines.store");
else { // Else - Change the name
$machine->update($data);
$machine->save();
@ -154,14 +154,17 @@ class WashingMachineController extends Controller
return redirect()->route("washing-machines.index");
}
public function nameCheck(Request $request){
$washing = WashingMachine::query()->where('name', 'LIKE',$request->nameCheck)->get();
$washing = WashingMachine::query()->where('name', 'LIKE',$request->nameCheck)->where('location_id', '=', $request->location)->get();
if(count($washing) > 0 && $request->nameCheck !== NULL){
return 1;
}
}
public function nameCheckUpdate(Request $request){
$washing = WashingMachine::query()->where('name', 'LIKE',$request->nameCheck)->where('location_id', '=', $request->location)->where('id', '!=', $request->id)->get();
if(count($washing) > 0 && $request->nameCheck !== NULL){
return 1;
}
}
}

View File

@ -30,8 +30,6 @@
);
});
//Dont delete me, if the user reloads the pages with text in the text-box this code runs.
$(document).ready(function () {
$value = $('#name').val();
@ -83,7 +81,5 @@
}
});
})
</script>
@endsection

View File

@ -15,8 +15,9 @@
@csrf
@method("put")
<label for="name">Lokationsnavn:</label>
<label hidden id="error" for="errormesseages">Lokation findes allerede</label>
<input type="text" name="name" id="name" value="{{ $location->name }}" required>
<input type="submit" class="btn btn-dark text-white" value="Rediger">
<input type="submit" id="disable" class="btn btn-dark text-white" value="Rediger">
</form>
@endsection
@section("scripts")
@ -29,5 +30,57 @@
}
);
});
//Dont delete me, if the user reloads the pages with text in the text-box this code runs.
$(document).ready(function () {
$value = $('#name').val();
$.ajax({
type: 'get',
url: '{{route('locations.nameCheckUpdate')}}',
data: {'nameCheck':$value, 'id':{{$location->id}}},
success:function (data) {
console.log(data);
if(data){
$("#error").show(100);
$("#error").css('color', 'red');
$("#disable").prop('disabled', true);
$('#disable').css('cursor','not-allowed');
}else{
$("#error").hide();
$("#disable").prop('disabled', false);
$('#disable').css('cursor','pointer');
}
},
error:function (data) {
console.log(data);
}
});
});
$('#name').on('keyup', function () {
$value = $(this).val();
$.ajax({
type: 'get',
url: '{{route('locations.nameCheckUpdate')}}',
data: {'nameCheck':$value, 'id':{{$location->id}}},
success:function (data) {
if(data){
$("#error").show(100);
$("#error").css('color', 'red');
$("#disable").prop('disabled', true);
$('#disable').css('cursor','not-allowed');
}else{
$("#error").hide();
$("#disable").prop('disabled', false);
$('#disable').css('cursor','pointer');
}
},
error:function (data) {
console.log(data);
}
});
})
</script>
@endsection

View File

@ -14,7 +14,7 @@
<form method="post" action="{{ route("washing-machines.store") }}">
@csrf
<label for="name_first">Vaskemaskine Navn:</label>
<label hidden id="error" for="errormesseages">Vaskemaskinen findes allerede</label>
<label hidden id="error" for="errormesseages">Vaskemaskinen med den lokation findes allerede</label>
<input type="text" name="name" id="name" max="60" placeholder="Vaskemaskine nr. 1" required>
<label for="location_id">Lokation:</label>
<select name="location_id" id="location_id" class="mb-2" required>
@ -41,15 +41,13 @@
);
});
//Dont delete me, if the user reloads the pages with text in the text-box this code runs.
$(document).ready(function () {
$value = $('#name').val();
$.ajax({
type: 'get',
url: '{{route('washing-machines.nameCheck')}}',
data: {'nameCheck':$value},
data: {'nameCheck':$value, 'location': $('#location_id').val()},
success:function (data) {
console.log(data);
if(data){
@ -75,7 +73,7 @@
$.ajax({
type: 'get',
url: '{{route('washing-machines.nameCheck')}}',
data: {'nameCheck':$value},
data: {'nameCheck':$value, 'location': $('#location_id').val()},
success:function (data) {
if(data){
$("#error").show(100);
@ -95,5 +93,29 @@
});
})
$('#location_id').on('change', function () {
$value = $('#name').val();
$.ajax({
type: 'get',
url: '{{route('washing-machines.nameCheck')}}',
data: {'nameCheck':$value, 'location': $('#location_id').val()},
success:function (data) {
if(data){
$("#error").show(100);
$("#error").css('color', 'red');
$("#disable").prop('disabled', true);
$('#disable').css('cursor','not-allowed');
}else{
$("#error").hide();
$("#disable").prop('disabled', false);
$('#disable').css('cursor','pointer');
}
},
error:function (data) {
console.log(data);
}
});
})
</script>
@endsection

View File

@ -14,6 +14,7 @@
@csrf
@method("put")
<label for="name_first">Vaskemaskine Navn:</label>
<label hidden id="error" for="errormesseages">Vaskemaskinen med den lokation findes allerede</label>
<input type="text" name="name" id="name" max="60" value="{{$machine->name}}" required>
<select class="w-100" name="location_id" id="location_id" class="mb-2" required>
<option disabled> -- Vælg Lokation -- </option>
@ -25,7 +26,7 @@
<option {{ $selected }} value="{{ $location->id }}">{{ $location->name }}</option>
@endforeach
</select>
<input type="submit" class="btn btn-dark text-white" value="Rediger">
<input type="submit" id="disable" class="btn btn-dark text-white" value="Rediger">
</form>
@endsection
@section("scripts")
@ -38,5 +39,82 @@
}
);
});
//Dont delete me, if the user reloads the pages with text in the text-box this code runs.
$(document).ready(function () {
$value = $('#name').val();
$.ajax({
type: 'get',
url: '{{route('washing-machines.nameCheckUpdate')}}',
data: {'nameCheck':$value, 'location': $('#location_id').val(), 'id': {{$machine->id}}},
success:function (data) {
console.log(data);
if(data){
$("#error").show(100);
$("#error").css('color', 'red');
$("#disable").prop('disabled', true);
$('#disable').css('cursor','not-allowed');
}else{
$("#error").hide();
$("#disable").prop('disabled', false);
$('#disable').css('cursor','pointer');
}
},
error:function (data) {
console.log(data);
}
});
});
$('#name').on('keyup', function () {
$value = $(this).val();
$.ajax({
type: 'get',
url: '{{route('washing-machines.nameCheckUpdate')}}',
data: {'nameCheck':$value, 'location': $('#location_id').val(), 'id': {{$machine->id}}},
success:function (data) {
if(data){
$("#error").show(100);
$("#error").css('color', 'red');
$("#disable").prop('disabled', true);
$('#disable').css('cursor','not-allowed');
}else{
$("#error").hide();
$("#disable").prop('disabled', false);
$('#disable').css('cursor','pointer');
}
},
error:function (data) {
console.log(data);
}
});
})
$('#location_id').on('change', function () {
$value = $('#name').val();
$.ajax({
type: 'get',
url: '{{route('washing-machines.nameCheckUpdate')}}',
data: {'nameCheck':$value, 'location': $('#location_id').val(), 'id': {{$machine->id}}},
success:function (data) {
if(data){
$("#error").show(100);
$("#error").css('color', 'red');
$("#disable").prop('disabled', true);
$('#disable').css('cursor','not-allowed');
}else{
$("#error").hide();
$("#disable").prop('disabled', false);
$('#disable').css('cursor','pointer');
}
},
error:function (data) {
console.log(data);
}
});
})
</script>
@endsection

View File

@ -13,7 +13,6 @@
<div class="row align-items-center">
<a class="btn btn-inline btn-sde-blue mb-0" href="{{ route('washing-machines.create') }}"><img src="{{ asset('/images/icons/plus.svg') }}" alt="Create">Opret Vaskemaskine</a>
</div>
{!! session()->get('WashingNameExists') !!}
<table class="tbl mt-2">
<tr>
<th>Navn</th>

View File

@ -72,6 +72,8 @@ Route::get("/roleCheckUpdate", "RolesController@nameCheckUpdate")->name("roles.n
Route::get("/guidesCheckUpdate", "GuideController@nameCheckUpdate")->name("guides.nameCheckUpdate");
Route::get("/newsCheckUpdate", "NewsController@nameCheckUpdate")->name("news.nameCheckUpdate");
Route::get("/menuplanCheckUpdate", "MenuPlanController@nameCheckUpdate")->name("menuplans.nameCheckUpdate");
Route::get("/locationsCheckUpdate", "LocationController@nameCheckUpdate")->name("locations.nameCheckUpdate");
Route::get("/washingCheckUpdate", "WashingMachineController@nameCheckUpdate")->name("washing-machines.nameCheckUpdate");