File "SiteSettingApiController.php"
Full Path: /home/clickysoft/public_html/jmapi5.clickysoft.net/app/Http/Controllers/Api/V1/Admin/SiteSettingApiController.php
File size: 2.55 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace App\Http\Controllers\Api\V1\Admin;
use App\Http\Controllers\Controller;
use App\Http\Requests\Admin\StoreSiteSettingRequest;
use App\Http\Requests\Admin\UpdateSiteSettingRequest;
use App\Http\Resources\Admin\SiteSettingResource;
use App\Models\SiteSetting;
use Gate;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class SiteSettingApiController extends Controller
{
public function index(Request $request)
{
abort_if(Gate::denies('site_setting_access'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$settings = SiteSetting::when($request->filled('key'), function ($query) use ($request){
$query->where('key', 'like', "%{$request->get('key')}%");
})->when($request->filled('value'), function ($query) use ($request){
$query->where('value', 'like', "%{$request->get('value')}%");
})->orderBy('value')
->get();
SiteSettingResource::withoutWrapping();
return SiteSettingResource::collection($settings);
}
public function store(StoreSiteSettingRequest $request)
{
$site_setting = SiteSetting::create($request->all());
return (new SiteSettingResource($site_setting))
->response()
->setStatusCode(Response::HTTP_CREATED);
}
public function show(SiteSetting $site_setting)
{
abort_if(Gate::denies('site_setting_show'), Response::HTTP_FORBIDDEN, '403 Forbidden');
return new SiteSettingResource($site_setting);
}
public function update(UpdateSiteSettingRequest $request, SiteSetting $site_setting)
{
$site_setting->update($request->validated());
return (new SiteSettingResource($site_setting))
->response()
->setStatusCode(Response::HTTP_CREATED);
}
/*public function destroy(SiteSetting $site_setting)
{
abort_if(Gate::denies('site_setting_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden');
try {
$site_setting->delete();
return response()
->json(['message' => 'Site setting deleted successfully'], Response::HTTP_OK);
}catch (\Exception $e){
\Log::channel('db_errors')->info('Record Deletion Error : Site Setting -> '.$site_setting->id);
\Log::channel('db_errors')->info($e->getMessage());
return response()
->json([
'message' => "Record not deleted.",
'errors' => ["error" => ["Unable to delete site setting."]]
], Response::HTTP_INTERNAL_SERVER_ERROR);
}
}*/
}