Feature/discord bot logs #16

Merged
nomadjimbob merged 9 commits from feature/discord-bot-logs into main 2023-02-03 00:28:15 +00:00
2 changed files with 42 additions and 0 deletions
Showing only changes of commit 4ec4b5b10b - Show all commits

View File

@@ -0,0 +1,41 @@
<?php
namespace App\Http\Controllers\Api;
use Illuminate\Http\Request;
class LogController extends ApiController
{
/**
* ApplicationController constructor.
*/
public function __construct()
{
$this->middleware('auth:sanctum')
->only(['show']);
}
/**
* Display the specified resource.
*
* @param Request $request The log request.
* @return \Illuminate\Http\Response
*/
public function show(Request $request)
{
if($request->has('name') && $request->user()?->hasPermission('logs/' . $request->get('name'))) {
switch(strtolower($request->has('name'))) {
case 'discord':
$contents = '';
$filePath = '/opt/discordbot/discordbot.log';
if(file_exists($filePath) === true) {
$contents = file_get_contents($filePath);
}
return $this->respondJson(['log' => $contents]);
}
}
return $this->respondForbidden();
}
}

View File

@@ -42,6 +42,7 @@ Route::delete('subscriptions', [SubscriptionController::class, 'destroyByEmail']
Route::post('/contact', [ContactController::class, 'send']);
Route::get('/logs/{name}', [LogController::class, 'show']);
Route::middleware('auth:sanctum')->group(function () {
Route::post('/logout', [AuthController::class, 'logout']);