File: /var/www/vhost/disk-apps/qas.sports-crowd.com/app/Http/Controllers/Api/AcademyNewsApiController.php
<?php
namespace App\Http\Controllers\Api;
use App\AcademyNew;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Storage;
class AcademyNewsApiController extends Controller
{
public function create(Request $request)
{
if ($request['file']) {
$file = $request['file'];
$extension = explode('/', mime_content_type($file))[1];
$filenametostore = 'academy_new_' . base64_encode(random_bytes(4)) . '.' . $extension;
list($baseType, $file) = explode(';', $file);
list(, $file) = explode(',', $file);
$file = base64_decode($file);
if (Storage::disk('s3')->exists(config('s3.academy') . '/academy_news/' . $filenametostore)) {
Storage::disk('s3')->delete(config('s3.academy') . '/academy_news/' . $filenametostore);
}
Storage::disk('s3')->put(config('s3.academy') . '/academy_news/' . $filenametostore, fopen($request['file'], 'r+'), 'public');
$url = config('filesystems.disks.s3.url') . '/academy/academy_news/' . $filenametostore;
$request['file'] = $url;
}
AcademyNew::create($request->all());
return response(array(
"r" => true,
"type" => "success",
"title" => "",
"m" => __('messages.created_successfully'),
"data" => null
));
}
public function getByAcademyUser($academyUserId){
$academyNews = AcademyNew::where('academy_user_id', $academyUserId)->get();
return response(array(
"r" => true,
"type" => "success",
"data" => $academyNews
));
}
}