snipe-it/app/Http/Controllers/Api/NotesController.php

35 lines
988 B
PHP
Raw Normal View History

<?php
namespace App\Http\Controllers\Api;
use App\Events\NoteAdded;
use App\Helpers\Helper;
use App\Http\Controllers\Controller;
use App\Models\Asset;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
2024-09-25 15:54:30 -07:00
use Illuminate\Validation\Rule;
class NotesController extends Controller
{
public function store(Request $request)
{
2024-09-25 15:54:30 -07:00
$validated = $request->validate([
'note' => 'required|string|max:500',
'type' => [
'required',
Rule::in(['asset']),
],
]);
$item = Asset::findOrFail($request->input("id"));
$this->authorize('update', $item);
2024-09-25 15:54:30 -07:00
// This can be made dynamic by using $request->input('type') to determine which model type to add the note to.
// For now, we are only placing this on Assets
event(new NoteAdded($item, Auth::user(), $validated['note']));
return response()->json(Helper::formatStandardApiResponse('success'));
}
2024-09-26 12:13:36 -07:00
}