Add activity logging to most of the endpoints

This commit is contained in:
DaneEveritt 2022-05-29 19:26:28 -04:00
parent 287fd60891
commit 9b7af02690
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
11 changed files with 170 additions and 30 deletions

View file

@ -9,6 +9,7 @@ use Illuminate\Http\Response;
use Pterodactyl\Models\Server;
use Pterodactyl\Models\Schedule;
use Illuminate\Http\JsonResponse;
use Pterodactyl\Facades\Activity;
use Pterodactyl\Helpers\Utilities;
use Pterodactyl\Exceptions\DisplayException;
use Pterodactyl\Repositories\Eloquent\ScheduleRepository;
@ -83,6 +84,11 @@ class ScheduleController extends ClientApiController
'next_run_at' => $this->getNextRunAt($request),
]);
Activity::event('server:schedule.create')
->subject($model)
->property('name', $model->name)
->log();
return $this->fractal->item($model)
->transformWith($this->getTransformer(ScheduleTransformer::class))
->toArray();
@ -141,6 +147,11 @@ class ScheduleController extends ClientApiController
$this->repository->update($schedule->id, $data);
Activity::event('server:schedule.update')
->subject($schedule)
->property(['name' => $schedule->name, 'active' => $active])
->log();
return $this->fractal->item($schedule->refresh())
->transformWith($this->getTransformer(ScheduleTransformer::class))
->toArray();
@ -158,6 +169,8 @@ class ScheduleController extends ClientApiController
{
$this->service->handle($schedule, true);
Activity::event('server:schedule.execute')->subject($schedule)->property('name', $schedule->name)->log();
return new JsonResponse([], JsonResponse::HTTP_ACCEPTED);
}
@ -170,6 +183,8 @@ class ScheduleController extends ClientApiController
{
$this->repository->delete($schedule->id);
Activity::event('server:schedule.delete')->subject($schedule)->property('name', $schedule->name)->log();
return new JsonResponse([], Response::HTTP_NO_CONTENT);
}