221 lines
8.1 KiB
PHP
221 lines
8.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\API;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
use App\Models\ManageShortClips;
|
|
use App\Models\ShortClipsLikes;
|
|
use Illuminate\Support\Facades\Log;
|
|
//use App\Models\User;
|
|
use Validator;
|
|
use db;
|
|
|
|
class ShortClipsController extends Controller {
|
|
|
|
// public function store_short_clips(Request $req) {
|
|
//
|
|
// $validator = Validator::make($req->all(), [
|
|
// 'video_title' => 'required',
|
|
// 'video_description' => 'required',
|
|
// 'video_url' => 'required',
|
|
// ]);
|
|
// if ($validator->fails()) {
|
|
// return response()->json([
|
|
// 'error' => $validator->errors()], 401);
|
|
// }
|
|
// $shortclips = new ManageShortClips();
|
|
// $shortclips->video_title = $req->input('video_title');
|
|
// $shortclips->video_description = $req->input('video_description');
|
|
// $shortclips->video_url = $req->input('video_url');
|
|
// $shortclips->thumbnail = $req->input('thumbnail');
|
|
// $storeclips = $shortclips->save();
|
|
// if ($storeclips == 1) {
|
|
// return response()->json([
|
|
// 'success' => true,
|
|
// 'status' => 200,
|
|
// 'message' => 'Short Clips Added Successfully',
|
|
// ]);
|
|
// } else {
|
|
// return response()->json([
|
|
// 'success' => true,
|
|
// 'error' => 400,
|
|
// 'message' => 'Please Try Again',
|
|
// ]);
|
|
// }
|
|
// }
|
|
|
|
public function like_short_clips(Request $request) {
|
|
try {
|
|
// print_r(User::first()->user);exit;
|
|
$token = readHeaderToken();
|
|
if ($token) {
|
|
$user_id = $token['sub'];
|
|
// dd($user_id);
|
|
// check validation
|
|
$validator = Validator::make($request->all(), [
|
|
'short_clips_id' => 'required',
|
|
]);
|
|
if ($validator->fails()) {
|
|
return response()->json([
|
|
'error' => $validator->errors()], 401);
|
|
}
|
|
// check validation end
|
|
$like = ShortClipsLikes::where('user_id', $user_id)
|
|
->where('short_clips_id', $request->short_clips_id)
|
|
->first();
|
|
|
|
if (!empty($like)) {
|
|
if ($like->is_like == '0') {
|
|
$like->is_like = '1';
|
|
$like->is_active = '0';
|
|
$like->update();
|
|
$manage_likes = ManageShortClips::where('id', $request->short_clips_id)->first();
|
|
if ($manage_likes->likes > 0) {
|
|
$manage_likes->likes = $manage_likes->likes - 1;
|
|
$manage_likes->update();
|
|
}
|
|
|
|
return response()->json([
|
|
'message' => 'you unliked'
|
|
], 200);
|
|
} else {
|
|
$like->is_like = '0';
|
|
$like->is_active = '1';
|
|
$like->update();
|
|
$manage_likes = ManageShortClips::where('id', $request->short_clips_id)->first();
|
|
$manage_likes->likes = $manage_likes->likes + 1;
|
|
$manage_likes->update();
|
|
|
|
|
|
|
|
return response()->json([
|
|
'message' => 'you liked'
|
|
], 200);
|
|
}
|
|
} else {
|
|
$like = new ShortClipsLikes();
|
|
$like->user_id = $user_id;
|
|
$like->is_active = '1';
|
|
$like->short_clips_id = $request->short_clips_id;
|
|
if ($like->save()) {
|
|
$manage_likes = ManageShortClips::where('id', $request->short_clips_id)->first();
|
|
$manage_likes->likes = $manage_likes->likes + 1;
|
|
$manage_likes->update();
|
|
return response()->json([
|
|
'message' => 'You Like a post',
|
|
], 201);
|
|
} else {
|
|
return response()->json([
|
|
'message' => "please try again"
|
|
], 500);
|
|
}
|
|
}
|
|
return response()->json([
|
|
'success' => true,
|
|
'message' => 'likes added successfully.',
|
|
'result' => $data
|
|
]);
|
|
} else {
|
|
return response()->json([
|
|
'success' => false,
|
|
'message' => 'Authentication failed.',
|
|
]);
|
|
}
|
|
} catch (\Exception $e) {
|
|
\Log::error("User data listing Failed : " . $e->getMessage());
|
|
return response()->json([
|
|
'success' => false,
|
|
'message' => 'Something Went wrong.',
|
|
]);
|
|
}
|
|
}
|
|
|
|
|
|
public function get_short_clips_by_id($id) {
|
|
// print_r("dfghjk");
|
|
$get_short_clips = ManageShortClips::find($id);
|
|
// print_r($get_short_clips);
|
|
// exit;
|
|
}
|
|
|
|
public function update_short_clips(Request $request) {
|
|
|
|
$validator = Validator::make($request->all(), [
|
|
'likes' => 'required',
|
|
]);
|
|
if ($validator->fails()) {
|
|
return response()->json([
|
|
'error' => $validator->errors()], 401);
|
|
}
|
|
$shortclips = ManageShortClips();
|
|
$shortclips->likes = $req->input('likes');
|
|
|
|
$storeclips = $shortclips->save();
|
|
if ($storeclips == 1) {
|
|
return response()->json([
|
|
'success' => true,
|
|
'status' => 200,
|
|
'message' => 'Short Clips Added Successfully',
|
|
]);
|
|
} else {
|
|
return response()->json([
|
|
'success' => true,
|
|
'error' => 400,
|
|
'message' => 'Please Try Again',
|
|
]);
|
|
}
|
|
}
|
|
|
|
public function get_short_clips() {
|
|
$token = readHeaderToken();
|
|
if ($token) {
|
|
// $userid = auth()->user();
|
|
|
|
$shortdata = ManageShortClips::where('is_active','1')->get();
|
|
|
|
foreach ($shortdata as $k => $val) {
|
|
|
|
$shortdata[$k]['thumbnail'] = ListingImageUrl('short_clips', $val['thumbnail']);
|
|
}
|
|
// print_r($shortdata);
|
|
// exit;
|
|
return response([
|
|
'user' => $shortdata,
|
|
// 'token' => $user->createToken('secret')->plainTextToken
|
|
], 200);
|
|
}
|
|
}
|
|
|
|
public function get_short_clips_likes(){
|
|
// try {
|
|
// print_r(User::first()->user);exit;
|
|
$token = readHeaderToken();
|
|
if ($token) {
|
|
$user_id = $token['sub'];
|
|
|
|
$data = ShortClipsLikes::with('shortClicpLikes')->where('user_id', $user_id)->where('is_active','1')->get();
|
|
|
|
return response()->json([
|
|
'success' => true,
|
|
'message' => 'Data fetched successfully.',
|
|
'result' => $data
|
|
]);
|
|
} else {
|
|
return response()->json([
|
|
'success' => false,
|
|
'message' => 'Authentication failed.',
|
|
]);
|
|
}
|
|
// } catch (\Exception $e) {
|
|
// \Log::error("User data listing Failed : " . $e->getMessage());
|
|
// return response()->json([
|
|
// 'success' => false,
|
|
// 'message' => 'Something Went wrong.',
|
|
// ]);
|
|
// }
|
|
}
|
|
|
|
|
|
}
|