2020-07-14 23:04:51 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
|
|
|
|
use Illuminate\Http\Request;
|
2020-07-25 01:49:49 +00:00
|
|
|
use App\Services\MediaTagService;
|
2020-07-14 23:04:51 +00:00
|
|
|
use App\MediaTag;
|
2020-07-25 01:49:49 +00:00
|
|
|
use App\Notification;
|
2020-07-14 23:04:51 +00:00
|
|
|
use App\Profile;
|
|
|
|
use App\UserFilter;
|
|
|
|
use App\User;
|
|
|
|
use Illuminate\Support\Str;
|
|
|
|
|
|
|
|
class MediaTagController extends Controller
|
|
|
|
{
|
2020-07-25 01:49:49 +00:00
|
|
|
public function __construct()
|
|
|
|
{
|
|
|
|
$this->middleware('auth');
|
|
|
|
}
|
|
|
|
|
2020-07-14 23:04:51 +00:00
|
|
|
public function usernameLookup(Request $request)
|
|
|
|
{
|
2021-01-18 04:27:55 +00:00
|
|
|
abort(404);
|
2020-07-14 23:04:51 +00:00
|
|
|
}
|
2020-07-25 01:49:49 +00:00
|
|
|
|
|
|
|
public function untagProfile(Request $request)
|
|
|
|
{
|
|
|
|
abort_if(!$request->user(), 403);
|
|
|
|
|
|
|
|
$this->validate($request, [
|
|
|
|
'status_id' => 'required',
|
|
|
|
'profile_id' => 'required'
|
|
|
|
]);
|
|
|
|
|
|
|
|
$user = $request->user();
|
|
|
|
$status_id = $request->input('status_id');
|
|
|
|
$profile_id = (int) $request->input('profile_id');
|
|
|
|
|
|
|
|
abort_if((int) $user->profile_id !== $profile_id, 400);
|
|
|
|
|
|
|
|
$tag = MediaTag::whereStatusId($status_id)
|
|
|
|
->whereProfileId($profile_id)
|
|
|
|
->first();
|
|
|
|
|
|
|
|
if(!$tag) {
|
|
|
|
return [];
|
|
|
|
}
|
|
|
|
Notification::whereItemType('App\MediaTag')
|
|
|
|
->whereItemId($tag->id)
|
|
|
|
->whereProfileId($profile_id)
|
|
|
|
->whereAction('tagged')
|
|
|
|
->delete();
|
|
|
|
|
|
|
|
MediaTagService::untag($status_id, $profile_id);
|
|
|
|
|
|
|
|
return [200];
|
|
|
|
|
|
|
|
}
|
2020-07-14 23:04:51 +00:00
|
|
|
}
|