Uname:Linux machinox-server 6.17.0-1013-aws #13~24.04.1-Ubuntu SMP Fri Apr 24 21:36:58 UTC 2026 aarch64

Base Dir : /var/www/machinox.in

User : root


403WebShell
403Webshell
Server IP : 13.235.167.51  /  Your IP : 216.73.217.116
Web Server : Apache
System : Linux machinox-server 6.17.0-1013-aws #13~24.04.1-Ubuntu SMP Fri Apr 24 21:36:58 UTC 2026 aarch64
User : root ( 0)
PHP Version : 8.2.29
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/app.machinox.in/app/Http/Controllers/WebService/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/app.machinox.in/app/Http/Controllers/WebService/TransactionController.php
<?php

namespace App\Http\Controllers\WebService;

use App\Actions\WebService\TransactionAction;
use App\Helpers\RazorpayHelper;
use App\Http\Controllers\Controller;
use App\Http\Requests\WebService\TransactionRequest;
use App\Models\Boost;
use App\Models\BoostAd;
use App\Models\SubscriptionPlan;
use App\Models\Transaction;
use App\Models\UserSubscription;
use App\Traits\SubscriptionTrait;
use Carbon\Carbon;
use Exception;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Http;
use Illuminate\Support\Facades\Log;

class TransactionController extends Controller
{
    use SubscriptionTrait;

    public function doPayment(Request $request)
    {
        try {
            DB::beginTransaction();
            $razPaymentId = $request->input("razorpay_payment_id");
            $currency = $request->input("currency");
            $ad_id = $request->input("ad_id", null);

            $transInfo = Transaction::where('uuid', $request->input("trx_id"))
                ->where('user_id', USER_ID())
                ->first();
            
            if (!$transInfo) {
                throw new Exception(trans("messages.TRANSACTION_NOT_FOUND"));
            }
            if ($currency === "INR" && $transInfo->trx_amount > 0) {
                if (is_null($razPaymentId)) {
                    throw new Exception(trans("messages.RAZORPAY_PAYMENT_ID_IS_REQUIRED"));
                }
                $paymentInfo = RazorpayHelper::getPaymentDetails($razPaymentId);
                Log::info('Razorpay Payment Fetched   >>>>>>>>>>>', ['payment' => $paymentInfo]);

                if (!$paymentInfo) {
                    $this->markRazorPayFailed($transInfo, null);
                    throw new Exception(trans("messages.PAYMENT_FAILED"));
                }

                if ($paymentInfo->status === 'captured') {
                    $amountInPaise = $paymentInfo->amount;
                    $amountInRupees = $amountInPaise / 100;
                    $transInfo->payment_status = 'SUCCESS';
                    $transInfo->trx_amount = $amountInRupees;
                    $transInfo->razorpay_payment_id = data_get($paymentInfo, 'id');
                    $transInfo->trx_pay_mode =  data_get($paymentInfo, 'method');
                    $transInfo->save();
                    if ($transInfo->type == 'BOOST') {
                        $this->setBoost($transInfo);
                    } else if ($transInfo->type == 'SEEKER') {
                        $this->setSeekerSubscription($transInfo);
                    } else {
                        
                        $this->setUserSubscription($transInfo, $ad_id);
                    }
                    $transInfo->trx_status = 'SUCCESS';
                    $transInfo->trx_date_time = now();
                    $transInfo->save();
                    DB::commit();
                    return response()->json(['success' => true, 'message' => trans("messages.PAYMENT_SUCCESSFUL")]);
                } else if ($paymentInfo->status == 'failed') {
                    $this->markRazorPayFailed($transInfo, $paymentInfo);
                    DB::commit();
                    throw new Exception(trans("messages.PAYMENT_FAILED"));
                } else {
                    DB::commit();
                    return response()->json(['success' => true, 'message' => "We're working on your payment. It will take sometime."]);
                }
            }
        } catch (\Throwable $th) {
            DB::rollBack();
            throw new Exception($th->getMessage() . "" . $th->getLine() . "" . $th->getFile(), 500);
        }
    }

    private function markRazorPayFailed(Transaction $transaction, $paymentInfo)
    {
        $amountInPaise = $paymentInfo->amount;
        $amountInRupees = $amountInPaise / 100;
        Log::info("Razorpay Payment Failed", (array) $paymentInfo);
        $transaction->trx_amount =  $amountInRupees;
        $transaction->trx_date_time = now();
        $transaction->payment_status = 'FAILED';
        $transaction->razorpay_payment_id = data_get($paymentInfo, 'id');
        $transaction->trx_pay_mode =  data_get($paymentInfo, 'method');
        $transaction->trx_status = 'FAILED';
        $transaction->save();
    }

    public function testOrder()
    {
        try {
            $test = RazorpayHelper::createTestOrder();
            return $this->sendSuccess(trans('messages.OK'), $test);
        } catch (Exception $e) {
            return $this->sendError($e->getMessage());
        }
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit