ÿØÿà JFIF  H H ÿÛ C   GIF89; Eú tiket mi chék chéúfetál .

Eú tiket mi chék chéúfetál .

System: Linux srv913213 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64

Current Path : /var/www/yapcute.com/app/Http/Controllers/API/
Upload File :
Current File : /var/www/yapcute.com/app/Http/Controllers/API/WalletController.php

<?php

namespace App\Http\Controllers\API;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Illuminate\Validation\Rule;
use Validator;
use File;
use Session;
use DB;
use Log;
use App\Admin;
use App\Common;
use App\User;
use App\Post;
use App\CoinRate;
use App\CoinPlan;
use App\Gifts;
use App\GlobalSettings;
use App\RewardingAction;
use App\Notification;
use App\RedeemRequest;

class WalletController extends Controller
{
    public function addCoin(Request $request)
    {
        $user_id = $request->user()->user_id;

        if (empty($user_id)) {
            $msg = "user id is required";
            return response()->json(['success_code' => 401, 'response_code' => 0, 'response_message' => $msg]);
        }

        $headers = $request->headers->all();

        $verify_request_base = Admin::verify_request_base($headers);

        if (isset($verify_request_base['status']) && $verify_request_base['status'] == 401) {
            return response()->json(['success_code' => 401, 'message' => "Unauthorized Access!"]);
            exit();
        }

        $rules = [
            'rewarding_action_id' => 'required',
        ];

        $validator = Validator::make($request->all(), $rules);

        if ($validator->fails()) {
            $messages = $validator->errors()->all();
            $msg = $messages[0];
            return response()->json(['status' => 401, 'message' => $msg]);
        }
        $rewarding_action_id = $request->get('rewarding_action_id');

        $settings = GlobalSettings::first();
        $coin = 0;

        if ($rewarding_action_id == 3) {
            $insert_coin = User::where('user_id', $user_id)->increment('upload_video', $settings->reward_video_upload);
            $coin = $settings->reward_video_upload;
        }
        $wallet_update = User::where('user_id', $user_id)->increment('my_wallet', $coin);
        $total_received = User::where('user_id', $user_id)->increment('total_received', $coin);

        if ($insert_coin) {
            return response()->json(['status' => 200, 'message' => "Coin Added Successfully."]);
        } else {
            return response()->json(['status' => 401, 'message' => "Error While Add Coin."]);
        }
    }

    public function sendCoin(Request $request)
    {


        $user_id = $request->user()->user_id;
        $full_name = $request->user()->full_name;

        if (empty($user_id)) {
            $msg = "user id is required";
            return response()->json(['success_code' => 401, 'response_code' => 0, 'response_message' => $msg]);
        }

        $headers = $request->headers->all();

        $verify_request_base = Admin::verify_request_base($headers);

        if (isset($verify_request_base['status']) && $verify_request_base['status'] == 401) {
            return response()->json(['success_code' => 401, 'message' => "Unauthorized Access!"]);
            exit();
        }

        $rules = [
            'to_user_id' => 'required',
            'coin' => 'required',
        ];

        $validator = Validator::make($request->all(), $rules);

        if ($validator->fails()) {
            $messages = $validator->errors()->all();
            $msg = $messages[0];
            return response()->json(['status' => 401, 'message' => $msg]);
        }
        $to_user_id = $request->get('to_user_id');
        $coin = $request->get('coin');

        $userData =  User::select('my_wallet', 'spen_in_app', 'check_in', 'upload_video', 'from_fans', 'purchased')->where('user_id', $user_id)->first();
        $wallet = $userData['my_wallet'];

        if ($wallet >= $coin) {
            $count_update = User::where('user_id', $user_id)->where('my_wallet', '>', $coin)->decrement('my_wallet', $coin);
            $total_send = User::where('user_id', $user_id)->increment('total_send', $coin);

            $wallet_update = User::where('user_id', $to_user_id)->increment('from_fans', $coin);
            $wallet_update = User::where('user_id', $to_user_id)->increment('my_wallet', $coin);

            $total_received = User::where('user_id', $to_user_id)->increment('total_received', $coin);

            $noti_user_id = $to_user_id;

            $userData =  User::where('user_id', $noti_user_id)->first();
            $platform = $userData['platform'];
            $device_token = $userData['device_token'];
            $message = $full_name . ' sent you ' . $coin . ' Stars';

            $notificationdata = array(
                'sender_user_id' => $user_id,
                'received_user_id' => $noti_user_id,
                'notification_type' => 4,
                'item_id' => $user_id,
                'message' => $message,
            );

            Notification::insert($notificationdata);
            $notification_title = "Shortzz";
            $is_send = Common::send_push($device_token, $notification_title, $message, $platform);

            return response()->json(['status' => 200, 'message' => "Coin Send Successfully."]);
        } else {
            return response()->json(['status' => 401, 'message' => "You have Insufficient Wallet Balance."]);
        }
    }

    public function purchaseCoin(Request $request)
    {


        $user_id = $request->user()->user_id;
        $full_name = $request->user()->full_name;

        if (empty($user_id)) {
            $msg = "user id is required";
            return response()->json(['success_code' => 401, 'response_code' => 0, 'response_message' => $msg]);
        }

        $headers = $request->headers->all();

        $verify_request_base = Admin::verify_request_base($headers);

        if (isset($verify_request_base['status']) && $verify_request_base['status'] == 401) {
            return response()->json(['success_code' => 401, 'message' => "Unauthorized Access!"]);
            exit();
        }

        $rules = [
            'coin' => 'required',
        ];

        $validator = Validator::make($request->all(), $rules);

        if ($validator->fails()) {
            $messages = $validator->errors()->all();
            $msg = $messages[0];
            return response()->json(['status' => 401, 'message' => $msg]);
        }

        $coin = $request->get('coin');

        $count_update = User::where('user_id', $user_id)->increment('purchased', $coin);
        $wallet_update = User::where('user_id', $user_id)->increment('my_wallet', $coin);
        $total_received = User::where('user_id', $user_id)->increment('total_received', $coin);

        return response()->json(['status' => 200, 'message' => "Coin Purchased Successfully."]);
    }

    public function getMyWalletCoin(Request $request)
    {


        $user_id = $request->user()->user_id;

        if (empty($user_id)) {
            $msg = "user id is required";
            return response()->json(['success_code' => 401, 'response_code' => 0, 'response_message' => $msg]);
        }

        $headers = $request->headers->all();

        $verify_request_base = Admin::verify_request_base($headers);

        if (isset($verify_request_base['status']) && $verify_request_base['status'] == 401) {
            return response()->json(['success_code' => 401, 'message' => "Unauthorized Access!"]);
            exit();
        }

        $data = User::select('total_received', 'total_send', 'my_wallet', 'spen_in_app', 'check_in', 'upload_video', 'from_fans', 'purchased')->where('user_id', $user_id)->first();

        $data['total_received'] = $data->total_received ? (int)$data->total_received : 0;
        $data['total_send'] = $data->total_send ? (int)$data->total_send : 0;
        $data['my_wallet'] = $data->my_wallet ? (int)$data->my_wallet : 0;
        $data['spen_in_app'] = $data->spen_in_app ? (int)$data->spen_in_app : 0;
        $data['check_in'] = $data->check_in ? (int)$data->check_in : 0;
        $data['upload_video'] = $data->upload_video ? (int)$data->upload_video : 0;
        $data['from_fans'] = $data->from_fans ? (int)$data->from_fans : 0;
        $data['purchased'] = $data->purchased ? (int)$data->purchased : 0;

        if (!empty($data)) {
            return response()->json(['status' => 200, 'message' => "My Wallet Data Get Successfully.", 'data' => $data]);
        } else {
            return response()->json(['status' => 401, 'message' => "No Data Found.", 'data' => $data]);
        }
    }

    public function getCoinPlanList(Request $request)
    {


        $user_id = $request->user()->user_id;

        if (empty($user_id)) {
            $msg = "user id is required";
            return response()->json(['success_code' => 401, 'response_code' => 0, 'response_message' => $msg]);
        }

        $headers = $request->headers->all();

        $verify_request_base = Admin::verify_request_base($headers);

        if (isset($verify_request_base['status']) && $verify_request_base['status'] == 401) {
            return response()->json(['success_code' => 401, 'message' => "Unauthorized Access!"]);
            exit();
        }

        $data = CoinPlan::get();

        if (!empty($data)) {
            return response()->json(['status' => 200, 'message' => "Coin Plan Data Get Successfully.", 'data' => $data]);
        } else {
            return response()->json(['status' => 401, 'message' => "No Data Found.", 'data' => $data]);
        }
    }

    public function redeemRequest(Request $request)
    {


        $user_id = $request->user()->user_id;
        $full_name = $request->user()->full_name;

        if (empty($user_id)) {
            $msg = "user id is required";
            return response()->json(['success_code' => 401, 'response_code' => 0, 'response_message' => $msg]);
        }

        $headers = $request->headers->all();

        $verify_request_base = Admin::verify_request_base($headers);

        if (isset($verify_request_base['status']) && $verify_request_base['status'] == 401) {
            return response()->json(['success_code' => 401, 'message' => "Unauthorized Access!"]);
            exit();
        }

        $rules = [
            'amount' => 'required',
            'redeem_request_type' => 'required',
            'account' => 'required',
        ];

        $validator = Validator::make($request->all(), $rules);

        if ($validator->fails()) {
            $messages = $validator->errors()->all();
            $msg = $messages[0];
            return response()->json(['status' => 401, 'message' => $msg]);
        }
        $coin = $request->get('coin') ? $request->get('coin') : 0;
        $amount = $request->get('amount');
        $redeem_request_type = $request->get('redeem_request_type');
        $account = $request->get('account');

        $data = array('redeem_request_type' => $redeem_request_type, 'account' => $account, 'amount' => $amount, 'user_id' => $user_id);
        $insert = RedeemRequest::insert($data);

        $update_data = array(
            'total_received' => 0,
            'total_send' => 0,
            'my_wallet' => 0,
            'spen_in_app' => 0,
            'check_in' => 0,
            'upload_video' => 0,
            'from_fans' => 0,
            'purchased' => 0
        );

        $count_update = User::where('user_id', $user_id)->update($update_data);
        if ($insert) {
            return response()->json(['status' => 200, 'message' => "Redeem Request Successfully."]);
        } else {
            return response()->json(['status' => 401, 'message' => "Redeem Request Failed."]);
        }
    }
}

xxxxx1.0, XXX xxxx
SPECIMENT MINI SHELL - RECODED FROM PHANTOM GHOST