161 lines
8.8 KiB
PHP
161 lines
8.8 KiB
PHP
@extends('home')
|
|
|
|
@section('title') Mój Panel - Obecności @endsection
|
|
|
|
@section('user_content')
|
|
<div class="row justify-content-center">
|
|
<div class="col-md-12">
|
|
<div class="card-header custom-header">
|
|
<h4> Wszystkie obecności: ({{ $attendances->count() }}) </h4>
|
|
<button type="button" class="btn btn-primary btn-custom add-attendance-btn"> Dodaj nowy wpis </button>
|
|
</div>
|
|
|
|
<div class="card-body add-attendance">
|
|
<h4 class="card-header"> Dodaj obecność </h4>
|
|
<form method="POST" action="{{ route('user_add_attendance') }}" class="col-md-12">
|
|
@csrf
|
|
|
|
<div class="form-group row">
|
|
<label for="classes_id" class="col-md-4 col-form-label text-md-right">{{ __('Zajęcia') }}</label>
|
|
|
|
<div class="col-md-6">
|
|
<select id="classes_id" class="form-control @error('classes_id') is-invalid @enderror" name="classes_id" required>
|
|
@foreach ($classes as $classes_item)
|
|
<option value="{{ $classes_item->id }}">{{ App\Subject::find(App\Classes::find($classes_item->id)->subject_id)->name }},
|
|
{{ App\Subject::find(App\Classes::find($classes_item->id)->subject_id)->type }},
|
|
{{ App\Classes::find($classes_item->id)-> date }} {{ App\Subject::find(App\Classes::find($classes_item->id)->subject_id)->time }}
|
|
</option>
|
|
@endforeach
|
|
</select>
|
|
|
|
@error('classes_id')
|
|
<span class="invalid-feedback" role="alert">
|
|
<strong>{{ $message }}</strong>
|
|
</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<label for="student_id" class="col-md-4 col-form-label text-md-right">{{ __('Nr indeksu studenta') }}</label>
|
|
|
|
<div class="col-md-6">
|
|
<input id="student_id" type="number" class="form-control @error('student_id') is-invalid @enderror" name="student_id" value="{{ old('student_id') }}" required autocomplete="student_id" autofocus>
|
|
|
|
@error('student_id')
|
|
<span class="invalid-feedback" role="alert">
|
|
<strong>{{ $message }}</strong>
|
|
</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<label for="student_name" class="col-md-4 col-form-label text-md-right">{{ __('Imię studenta') }}</label>
|
|
|
|
<div class="col-md-6">
|
|
<input id="student_name" type="text" class="form-control @error('student_name') is-invalid @enderror" name="student_name" value="{{ old('student_name') }}" required autocomplete="student_name">
|
|
|
|
@error('student_name')
|
|
<span class="invalid-feedback" role="alert">
|
|
<strong>{{ $message }}</strong>
|
|
</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<label for="student_surname" class="col-md-4 col-form-label text-md-right">{{ __('Nazwisko studenta') }}</label>
|
|
|
|
<div class="col-md-6">
|
|
<input id="student_surname" type="text" class="form-control @error('student_surname') is-invalid @enderror" name="student_surname" value="{{ old('student_surname') }}" required autocomplete="student_surname">
|
|
|
|
@error('student_surname')
|
|
<span class="invalid-feedback" role="alert">
|
|
<strong>{{ $message }}</strong>
|
|
</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row">
|
|
<label for="seat_number" class="col-md-4 col-form-label text-md-right">{{ __('Nr miejsca') }}</label>
|
|
|
|
<div class="col-md-6">
|
|
<input id="seat_number" type="number" class="form-control @error('seat_number') is-invalid @enderror" name="seat_number" value="{{ old('seat_number') }}" required autocomplete="seat_number" autofocus>
|
|
|
|
@error('seat_number')
|
|
<span class="invalid-feedback" role="alert">
|
|
<strong>{{ $message }}</strong>
|
|
</span>
|
|
@enderror
|
|
</div>
|
|
</div>
|
|
|
|
<div class="form-group row mb-0">
|
|
<div class="col-md-6 offset-md-4">
|
|
<button type="submit" class="btn btn-primary">
|
|
{{ __('Dodaj') }}
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
@if ($attendances->count() > 0)
|
|
<div class="card-body">
|
|
<span> Grupuj: </span>
|
|
<a href="{{ route('user_attendances', ['classes_id']) }}" class="btn btn-primary"> po nazwie zajęć </a>
|
|
<a href="{{ route('user_attendances', ['student_id_number']) }}" class="btn btn-primary"> po numerze indeksu </a>
|
|
<a href="{{ route('user_attendances', ['seat_number']) }}" class="btn btn-primary"> po numerze miejsca </a>
|
|
</div>
|
|
<div class="card-body">
|
|
@foreach ($attendances_grouped as $attendances_group_name => $attendances_list)
|
|
@if($attendances_group_name)
|
|
@if($grouped_by == 'classes_id')
|
|
<h5 class="card-title"> {{ App\Subject::find(App\Classes::find($attendances_group_name)->subject_id)->name }},
|
|
{{ App\Classes::find($attendances_group_name)-> date }} {{ App\Subject::find(App\Classes::find($attendances_group_name)->subject_id)->time }}
|
|
({{ $attendances_list->count() }}) </h5>
|
|
@else
|
|
<h5 class="card-title"> {{ $attendances_group_name }} ({{ $attendances_list->count() }}) </h5>
|
|
@endif
|
|
@else
|
|
<h5 class="card-title"> Inne ({{ $attendances_list->count() }})</h5>
|
|
@endif
|
|
|
|
<table class="table table-striped subjects-table">
|
|
<tr class="thead-dark">
|
|
<th> Nazwa zajęć </th>
|
|
<th> Nr indeksu </th>
|
|
<th> Imię studenta </th>
|
|
<th> Nazwisko studenta </th>
|
|
<th> Nr miejsca </th>
|
|
<th></th>
|
|
<th></th>
|
|
</tr>
|
|
@foreach ($attendances_list as $attendance)
|
|
<tr>
|
|
<td> {{ App\Subject::find(App\Classes::find($attendance->classes_id)->subject_id)->name }},
|
|
{{ App\Classes::find($attendance->classes_id)-> date }} {{ App\Subject::find(App\Classes::find($attendance->classes_id)->subject_id)->time }}, sala {{ App\Room::find(App\Subject::find(App\Classes::find($attendance->classes_id)->subject_id)->room_id)->name }} </td>
|
|
<td> {{ $attendance->student_id_number }} </td>
|
|
<td> {{ $attendance->student_name}}</td>
|
|
<td> {{ $attendance->student_surname}}</td>
|
|
<td> {{ $attendance->seat_number }} </td>
|
|
<td>
|
|
<a href="{{ route('user_delete_attendance', [$attendance->id]) }}" name="delete-attendance-btn" class="btn btn-danger"> Usuń </a>
|
|
</td>
|
|
</tr>
|
|
@endforeach
|
|
</table>
|
|
@endforeach
|
|
</div>
|
|
@else
|
|
<div class="card-body">
|
|
<p> Brak zarejestrowantch obecności. </p>
|
|
</div>
|
|
@endif
|
|
|
|
</div>
|
|
</div>
|
|
@endsection
|