Files
wticreatorstudio/Modules/Frontend/Http/Controllers/SocialMediaController.php
T

85 lines
2.3 KiB
PHP

<?php
namespace Modules\Frontend\Http\Controllers;
use Illuminate\Contracts\Support\Renderable;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Modules\Frontend\Facades\SocialMedias;
use Modules\Frontend\Http\Requests\ProcessSocialMediaRequest;
use Modules\Frontend\Repositories\SocialMediaRepository;
class SocialMediaController extends Controller
{
protected $repository;
public function __construct()
{
$this->repository = new SocialMediaRepository();
}
public function index()
{
$items = $this->repository->all();
return response()->json([
'items' => $items,
]);
}
public function store(ProcessSocialMediaRequest $request)
{
$result = $this->repository->create($request->name, $request->url, $request->icon);
if ($result) {
return response()->json([
'message' => __('frontend::common.social-media-saved'),
]);
}
return response()->json([
'message' => __('frontend::common.store-social-media-failed'),
], 400);
}
public function update(ProcessSocialMediaRequest $request)
{
$result = $this->repository->update($request->id, $request->name, $request->url, $request->icon);
if ($result) {
return response()->json([
'message' => __('frontend::common.social-media-updated'),
'section' => $result,
]);
}
return response()->json([
'message' => __('frontend::common.update-social-media-failed'),
], 400);
}
public function destroy(ProcessSocialMediaRequest $request)
{
$result = $this->repository->destroy($request->id);
if ($result) {
return response()->json([
'message' => __('frontend::common.social-media-deleted'),
]);
}
return response()->json([
'message' => __('frontend::common.delete-social-media-failed'),
], 400);
}
public function updateShareableNetworks(Request $request)
{
SocialMedias::updateShareableNetworks($request->items);
return response()->json([
'message' => __('frontend::common.shareable-networks-updated'),
]);
}
}