diff options
| author | Mateja <mail@matejamaric.com> | 2020-11-01 18:38:02 +0100 | 
|---|---|---|
| committer | Mateja <mail@matejamaric.com> | 2020-11-01 18:38:02 +0100 | 
| commit | 8fee1d776d8f2f538968b1d761dfbbfd3e52ae27 (patch) | |
| tree | 7c958ac82840a278236ec6dda81131e38a52a42e | |
| parent | 0ce5bbcc443b9da12e5233a481f2ef15017ee891 (diff) | |
| download | yota-laravel-8fee1d776d8f2f538968b1d761dfbbfd3e52ae27.tar.gz yota-laravel-8fee1d776d8f2f538968b1d761dfbbfd3e52ae27.zip | |
Editing signs buggy...
| -rw-r--r-- | app/Http/Controllers/SpecialCallsController.php | 26 | ||||
| -rw-r--r-- | resources/views/pages/callsigns.blade.php | 2 | ||||
| -rw-r--r-- | resources/views/pages/editsign.blade.php | 42 | ||||
| -rw-r--r-- | routes/web.php | 5 | 
4 files changed, 74 insertions, 1 deletions
| diff --git a/app/Http/Controllers/SpecialCallsController.php b/app/Http/Controllers/SpecialCallsController.php index 073bf6e..3d6f2b9 100644 --- a/app/Http/Controllers/SpecialCallsController.php +++ b/app/Http/Controllers/SpecialCallsController.php @@ -131,4 +131,30 @@ class SpecialCallsController extends Controller      {          return Redirect::back();      } + +    public function edit(Request $request, int $id) +    { +        $data = SpecialCall::findOrFail($id); +        return view('pages.editsign', compact('data')); +    } +     +    public function editForm(Request $request, int $id) +    { +        $rules = [ 'sign' => 'required' ]; +        $messages = [ 'sign.required' => 'You need to provide a callsign!' ]; +        $validator = Validator::make($request->all(), $rules, $messages); + +        if ($validator->fails()) { +            return Redirect::back() +                ->withErrors($validator) +                ->withInput(); +        } + +        $data = SpecialCall::findOrFail($id); +        $data->sign = strtoupper($request->sign); +        $data->description = $request->description; +        $data->saveOrFail(); + +        return Redirect::back()->with('statusE', 'Callsign edited.'); +    }  } diff --git a/resources/views/pages/callsigns.blade.php b/resources/views/pages/callsigns.blade.php index b4814bb..31d7ccf 100644 --- a/resources/views/pages/callsigns.blade.php +++ b/resources/views/pages/callsigns.blade.php @@ -12,7 +12,7 @@                  @foreach ($data as $row)                      <tr>                          <td class="align-middle">{{ $row->sign }}</td> -                        <td><button class="btn btn-warning">Edit</button></td> +                        <td><a href="{{ route('edit', $row->id) }}" class="btn btn-warning">Edit</a></td>                          <td><button class="btn btn-danger">Delete</button></td>                      </tr>                  @endforeach diff --git a/resources/views/pages/editsign.blade.php b/resources/views/pages/editsign.blade.php new file mode 100644 index 0000000..9f1f5ee --- /dev/null +++ b/resources/views/pages/editsign.blade.php @@ -0,0 +1,42 @@ +@extends('layouts.app') + +@section('title', 'Edit callsign') + +@section('navbar', View::make('inc.special_navbar')) + +@section('content') +    <h3 class="mt-2">Edit Callsign:</h3> +    @if (session('status')) +      <div class="alert alert-success"> +        {{ session('status') }} +      </div> +    @endif +    <form action="{{ route('editForm', 1) }}" method="POST"> +        @csrf +        <div class="form-group"> +            <label for="Sign">Special Callsign:</label> +            <input type="text" name="sign" value="{{ $data->sign }}" id="Sign" class="form-control"> +            @error('sign') +              <div class="alert alert-danger mt-2">{{ $message }}</div> +            @enderror +        </div> +        <div class="form-group"> +            <label for="editor">Description:</label> +            <textarea name="description" id="editor" class="form-control">{{ $data->description }}</textarea> +        </div> +        <div class="form-group"> +            <input type="submit" name="submit" value="Edit callsign" class="btn btn-primary"> +            <input type="submit" name="submit" value="Cancel" class="btn btn-secondary"> +        </div> +    </form> +@endsection + +@section('scripts') +<script src="https://cdn.ckeditor.com/ckeditor5/23.1.0/classic/ckeditor.js"></script> +<script> +ClassicEditor.create(document.querySelector('#editor')) +    .catch(error => { +        console.error( error ); +    }); +</script> +@endsection diff --git a/routes/web.php b/routes/web.php index 1d04dbf..1f9f47f 100644 --- a/routes/web.php +++ b/routes/web.php @@ -46,6 +46,11 @@ Route::get('/special-calls/add', [SpecialCallsController::class, 'add'])->name('  Route::post('/special-calls/add', [SpecialCallsController::class, 'addForm'])->name('addSignForm')      ->middleware(['auth']); +Route::get('/special-calls/edit/{id}', [SpecialCallsController::class, 'edit'])->name('edit') +    ->middleware(['auth']); +Route::post('/special-calls/edit/{id}', [SpecialCallsController::class, 'editForm'])->name('editForm') +    ->middleware(['auth']); +  Route::get('/special-calls/reservations', [SpecialCallsController::class, 'reservations'])->name('reservations')      ->middleware(['auth']); | 
