Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php /* HoangSkyht Dev 26062024 */$OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34..

Decoded Output download


namespace App\Http\Controllers\User;
use App\Http\Controllers\Controller;
use App\Http\Requests\User\UserChangePassword;
use App\Http\Requests\User\UserRecharge;
use App\Http\Requests\User\UserTransferBalance;
use App\Http\Requests\User\UserTransferCommissionBalance;
use App\Http\Requests\User\UserUpdate;
use App\Models\Logs;
use App\Models\Order;
use App\Models\Plan;
use App\Models\TrafficServerLog;
use App\Models\TrafficUserLog;
use App\Models\User;
use App\Utils\Helper;
use Illuminate\Contracts\Foundation\Application;
use Illuminate\Contracts\Routing\ResponseFactory;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\DB;
use Throwable;
class UserController extends Controller
{
public function logout(Request $request)
{
$request->session()->flush();
return response([
'data'=>true
]);
}
public function setEMAIL(Request $request)
{
$sessionId = $request->session()->get('id');
$input = $request->json()->all();
$TrangThai = null;
$ThongBao = null;
$user = User::find($sessionId);
if ($user === null) {
$TrangThai = 'error';
$ThongBao = 'Ngi Dng Khng Tn Ti';
}
if (isset($input['EMAILSetting'])) {
$EmailSetting = $input['EMAILSetting'];
if (isset($EmailSetting)) {
$GetEmail = filter_var($EmailSetting,FILTER_SANITIZE_EMAIL);
if (filter_var($GetEmail,FILTER_VALIDATE_EMAIL)) {
$ChangeEmail = $EmailSetting;
$existingUser = User::where('email',$ChangeEmail)->first();
if ($existingUser) {
$TrangThai = 'error';
$ThongBao = 'Email Ny  Tn Ti Trn H Thng';
}else {
$user->setAttribute(User::FIELD_EMAIL,$ChangeEmail);
if (!$user->save()) {
$TrangThai = 'error';
$ThongBao = 'Khng Th Thay i EMAIL';
}else {
$request->session()->flush();
$TrangThai = 'success';
$ThongBao = "Thay i Email Mi $EmailSetting Thnh Cng";
}
}
}
else {
$TrangThai = 'error';
$ThongBao = 'nh Dng Email Khng Chnh Xc';
}
}else {
$TrangThai = 'error';
$ThongBao = 'Bn qun nhp EMAIL mi';
}
}else {
header('Content-Type: application/json');
http_response_code(400);
$TrangThai = 'error';
$ThongBao = 'Bn Qun Nhp EMAIL Mi Ri';
}
return response([
'TrangThai'=>$TrangThai,
'ThongBao'=>$ThongBao
]);
}
public function setIDFacebook(Request $request)
{
$sessionId = $request->session()->get('id');
$input = $request->json()->all();
$user = User::find($sessionId);
if ($user === null) {
return response([
'TrangThai'=>'error',
'ThongBao'=>'Khng Tm Thy User Ngi Dng'
]);
}
if (isset($_POST['IDFacebook'])) {
$idFacebook = $_POST['IDFacebook'];
if (empty($idFacebook)) {
return response([
'TrangThai'=>'error',
'ThongBao'=>'Khng Tm Thy ID Facebook Ca Bn'
]);
}
$accessToken = '2712477385668128|b429aeb53369951d411e1cae8e810640';
$graphUrl = "https://graph.facebook.com/{$idFacebook}/picture?width=500&height=500&access_token={$accessToken}";
$response = @file_get_contents($graphUrl);
if ($response === false) {
return response([
'TrangThai'=>'error',
'ThongBao'=>'Khng Tm Thy ID Facebook Ca Bn'
]);
}
$responseData = json_decode($response,true);
if (isset($responseData['error'])) {
return response([
'TrangThai'=>'error',
'ThongBao'=>'Khng Tm Thy ID Facebook Ca Bn'
]);
}
$user->setAttribute(User::FIELD_AVATAR,$idFacebook);
if (!$user->save()) {
return response([
'TrangThai'=>'error',
'ThongBao'=>'Lu ID Facebook Tht Bi'
]);
}
return response([
'TrangThai'=>'success',
'ThongBao'=>'Tch Hp Thnh Cng'
]);
}else {
return response([
'TrangThai'=>'error',
'ThongBao'=>'Khng Tm Thy ID Facebook Ca Bn'
]);
}
}
public function setSNI(Request $request)
{
$sessionId = $request->session()->get('id');
$TrangThai = null;
$inputJSON = file_get_contents('php://input');
$input = json_decode($inputJSON,TRUE);
$user = User::find($sessionId);
if ($user === null) {
$TrangThai = 'Ngi Dng Khng Tn Ti';
}
if (isset($input['SNISetting'])) {
$SniSetting = $input['SNISetting'];
if ($SniSetting !== '9999') {
$SNI = $SniSetting;
$SNIName = $input['NAMESni'];
$user->setAttribute(User::FIELD_SETTINGSNI,$SNI);
$user->setAttribute(User::FIELD_SNINAME,$SNIName);
if (!$user->save()) {
$TrangThai = 'Khng Th Ci t SNI';
}else {
$TrangThai = "Ci t SNI: $SNIName Thnh Cng";
}
}else {
if (isset($input['CustomSNI']) &&!empty($input['CustomSNI'])) {
$CustomSni = $input['CustomSNI'];
$user->setAttribute(User::FIELD_SETTINGSNI,$CustomSni);
$user->setAttribute(User::FIELD_SNINAME,$CustomSni);
if (!$user->save()) {
$TrangThai = 'Khng Th Ci t SNI';
}else {
$TrangThai = "Ci t SNI: $CustomSni Thnh Cng";
}
}else {
$TrangThai = 'Vui lng nhp gi tr SNI';
}
}
}else {
header('Content-Type: application/json');
http_response_code(400);
$TrangThai = 'D liu khng hp l';
}
return response(['data'=>$TrangThai]);
}
public function changePassword(UserChangePassword $request)
{
$sessionId = $request->session()->get('id');
$reqOldPassword = $request->input('old_password');
$reqNewPassword = $request->input('new_password');
$user = User::find($sessionId);
if ($user === null) {
abort(500,__('The user does not exist'));
}
if (!Helper::multiPasswordVerify(
$user->getAttribute(User::FIELD_PASSWORD_ALGO),
$user->getAttribute(User::FIELD_PASSWORD_SALT),
$reqOldPassword,$user->getAttribute(User::FIELD_PASSWORD))) {
abort(500,__('The old password is wrong'));
}
$user->setAttribute(User::FIELD_PASSWORD,password_hash($reqNewPassword,PASSWORD_DEFAULT));
$user->setAttribute(User::FIELD_PASSWORD_ALGO,NULL);
$user->setAttribute(User::FIELD_PASSWORD_SALT,NULL);
if (!$user->save()) {
abort(500,__('Save failed'));
}
$request->session()->flush();
return response([
'data'=>true
]);
}
public function ChuyenGoi(Request $request)
{
$sessionId = $request->session()->get('id');
$response = [
'Status'=>null,
'Messenger'=>null
];
$inputJSON = file_get_contents('php://input');
$input = json_decode($inputJSON,TRUE);
$user = User::find($sessionId);
if (!$user) {
$response['Status'] = 'error';
$response['Messenger'] = 'Ngi Dng Khng Tn Ti Trn H Thng';
return response($response);
}
$EmailSetting = $input['eMailNhanGoi'];
if (!isset($EmailSetting)) {
$response['Status'] = 'error';
$response['Messenger'] = 'Ngi Nhn Khng Tn Ti';
return response($response);
}
$GetEmail = filter_var($EmailSetting,FILTER_SANITIZE_EMAIL);
if (!filter_var($GetEmail,FILTER_VALIDATE_EMAIL)) {
$response['Status'] = 'error';
$response['Messenger'] = 'nh Dng Email Khng Chnh Xc';
return response($response);
}
$emailUser = User::where('email',$GetEmail)->first();
if (!$emailUser) {
$response['Status'] = 'error';
$response['Messenger'] = 'Email Ny Khng Tn Ti Trn H Thng';
return response($response);
}
if ($emailUser->id === $sessionId) {
$response['Status'] = 'error';
$response['Messenger'] = 'Bn Khng Th T Chuyn Cho Bn Thn Mnh';
return response($response);
}
$userPlanid = (int)$user->getAttribute(User::FIELD_PLAN_ID);
if ($userPlanid === 0) {
$response['Status'] = 'error';
$response['Messenger'] = 'Bn Cha C Gi Khng Th Chuyn';
return response($response);
}
$emailNhanPlanid = User::find($emailUser->id);
if ((int)$emailNhanPlanid->getAttribute(User::FIELD_PLAN_ID) !== 0) {
$response['Status'] = 'error';
$response['Messenger'] = 'Pha Email Bn Nhp  C Gi Dch V';
return response($response);
}
$emailNhanPlanid->setAttribute(User::FIELD_PLAN_ID,$userPlanid);
$emailNhanPlanid->setAttribute(User::FIELD_EXPIRED_AT,$user->getAttribute(User::FIELD_EXPIRED_AT));
$emailNhanPlanid->save();
$user->setAttribute(User::FIELD_PLAN_ID,null);
$user->setAttribute(User::FIELD_EXPIRED_AT,null);
$user->save();
$response['Status'] = 'success';
$response['Messenger'] = 'Chuyn Gi Dch V Thnh Cng';
return response($response);
}
public function ChuyenTien (Request $request){
$sessionId = $request->session()->get('id');
$response = [
'Status'=>null,
'Messenger'=>null
];
$inputJSON = file_get_contents('php://input');
$input = json_decode($inputJSON,TRUE);
$user = User::find($sessionId);
if (!$user) {
$response['Status'] = 'error';
$response['Messenger'] = 'Ngi Dng Khng Tn Ti Trn H Thng';
return response($response);
}
if (!isset($input['TypeSelect'])) {
$response['Status'] = 'error';
$response['Messenger'] = 'Khng Xc nh c Loi Chuyn Tin';
return response($response);
}
$TypeSelect = (int)$input['TypeSelect'];
$SoTien = (int)$input['SoTien'];
$getSoDu = (int)$user->getAttribute(User::FIELD_BALANCE);
$getHoaHong = (int)$user->getAttribute(User::FIELD_COMMISSION_BALANCE);
$response['Status'] = 'error';
$response['Messenger'] = 'H Thng ang Pht Hin Li Trong Vic Chuyn Tin';
return response($response);
}
public function info(Request $request)
{
$ch = curl_init('https://vip.vpndata.vn/XuLyVIP/?'.$request->getHost());
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
$response = curl_exec($ch);
curl_close($ch);
$response = substr($response,strpos($response,'{'));
$data = json_decode($response,true);
if ($data === null &&json_last_error() !== JSON_ERROR_NONE) {
abort(403,__('Khng Th Kt Ni Ti My Ch'));
}
$Status = (int)$data['Status'];
$Msg = $data['Msg'];
if ($Status != 1) {
abort(500,__($Msg));
}
$sessionId = $request->session()->get('id');
$user = User::find($sessionId);
if ($user == null) {
abort(500,__('The user does not exist'));
}
$data = [
User::FIELD_ID =>$user->getAttribute(User::FIELD_ID),
User::FIELD_EMAIL =>$user->getAttribute(User::FIELD_EMAIL),
User::FIELD_LAST_LOGIN_AT =>$user->getAttribute(User::FIELD_LAST_LOGIN_AT),
User::FIELD_CREATED_AT =>$user->getAttribute(User::FIELD_CREATED_AT),
User::FIELD_BANNED =>$user->getAttribute(User::FIELD_BANNED),
User::FIELD_REMIND_TRAFFIC =>$user->getAttribute(User::FIELD_REMIND_TRAFFIC),
User::FIELD_REMIND_EXPIRE =>$user->getAttribute(User::FIELD_REMIND_EXPIRE),
User::FIELD_EXPIRED_AT =>$user->getAttribute(User::FIELD_EXPIRED_AT),
User::FIELD_BALANCE =>$user->getAttribute(User::FIELD_BALANCE),
User::FIELD_COMMISSION_BALANCE =>$user->getAttribute(User::FIELD_COMMISSION_BALANCE),
User::FIELD_PLAN_ID =>$user->getAttribute(User::FIELD_PLAN_ID),
User::FIELD_DISCOUNT =>$user->getAttribute(User::FIELD_DISCOUNT),
User::FIELD_COMMISSION_RATE =>$user->getAttribute(User::FIELD_COMMISSION_RATE),
User::FIELD_TELEGRAM_ID =>$user->getAttribute(User::FIELD_TELEGRAM_ID),
User::FIELD_SUSPEND_TYPE =>$user->getAttribute(User::FIELD_SUSPEND_TYPE),
User::FIELD_AVATAR =>$user->getAttribute(User::FIELD_AVATAR),
'is_suspend'=>$user->isSuspend(),
'recovery_at'=>$user->recoveryTime(),
];
return response([
'data'=>$data
]);
}
public function stat(Request $request)
{
$sessionId = $request->session()->get('id');
$user = User::find($sessionId);
if ($user == NULL) {
abort(500,__('The user does not exist'));
}
$stat = [
$user->countUnpaidOrders(),
$user->countUnprocessedTickets(),
];
return response([
'data'=>$stat
]);
}
public function subscribe(Request $request)
{
$ch = curl_init('https://vip.vpndata.vn/XuLyVIP/?'.$request->getHost());
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
$response = curl_exec($ch);
curl_close($ch);
$response = substr($response,strpos($response,'{'));
$data = json_decode($response,true);
if ($data === null &&json_last_error() !== JSON_ERROR_NONE) {
abort(403,__('Khng Th Kt Ni Ti My Ch'));
}
$Status = (int)$data['Status'];
$Msg = $data['Msg'];
if ($Status != 1) {
abort(500,__($Msg));
}
$sessionId = $request->session()->get('id');
date_default_timezone_set('Asia/Ho_Chi_Minh');
$user = User::find($sessionId);
$online = null;
$limitthietbi = null;
$iponile = 'Cha C Thit B No Kt Ni';
$SNIDaCai = null;
$SoDu = 0;
$SoTienHoaHong = 0;
$limit_device = 0;
$device_online = 0;
$ThoiGianThamGia = 0;
$TocDoChoPhep = 'Ty Thuc Vo Trm Pht Khu Vc Bn';
if ($user === null) {
abort(500,__('The user does not exist'));
}
if ($user['name_sni'] == null)
$SNIDaCai = 'S Dng SNI Mc nh';
$SoDu = $user->getAttribute(User::FIELD_BALANCE);
if ($SoDu >0){
$SoDu = $SoDu / 100;
$SoDu = number_format($SoDu);
}
$SoTienHoaHong = $user->getAttribute(User::FIELD_COMMISSION_BALANCE);
if ($SoTienHoaHong >0){
$SoTienHoaHong = $SoTienHoaHong / 100;
$SoTienHoaHong = number_format($SoTienHoaHong);
}
$ThoiGianThamGia = date_diff(date_create(date('Y-m-d H:i:s',time())),date_create(date('Y-m-d H:i:s',$user->getAttribute(User::FIELD_CREATED_AT))));
$TocDoGioiHan50 = (int)config('v2board.TocDoGioiHan50');
$TocDoGioiHan60 = (int)config('v2board.TocDoGioiHan60');
$TocDoGioiHan70 = (int)config('v2board.TocDoGioiHan70');
$TocDoGioiHan80 = (int)config('v2board.TocDoGioiHan80');
$TocDoGioiHan90 = (int)config('v2board.TocDoGioiHan90');
$avt = (int)$user->getAttribute(User::FIELD_AVATAR);
if ($avt == null) {
$avt = 4;
}
$plan = null;
if ($user->getAttribute(User::FIELD_PLAN_ID) >0) {
if ($user->plan() === null) {
abort(500,__('Subscription plan does not exist'));
}
$plan = $user->plan();
$SNIDaCai = $user->getAttribute(User::FIELD_SNINAME);
$UserLimitIP = (int)$user->getAttribute(User::FIELD_DEVICE_LIMIT);
$limit_device = $UserLimitIP >0 ?$UserLimitIP : (int)$plan->getAttribute(Plan::FIELD_LIMIT_DEVICE);
$device_online = (int)$user->getAttribute(User::FIELD_ONLINE);
$TocDoToiDa = ($device_online / $limit_device) * 100;
if ($TocDoToiDa >= 50 &&$TocDoToiDa <60) {
$TocDoChoPhep = number_format($TocDoGioiHan50).' Mbps';
}
else if ($TocDoToiDa >= 60 &&$TocDoToiDa <70) {
$TocDoChoPhep = number_format($TocDoGioiHan60).' Mbps';
}
else if ($TocDoToiDa >= 70 &&$TocDoToiDa <80) {
$TocDoChoPhep = number_format($TocDoGioiHan70).' Mbps';
}
else if ($TocDoToiDa >= 80 &&$TocDoToiDa <90) {
$TocDoChoPhep = number_format($TocDoGioiHan80).' Mbps';
}
else if ($TocDoToiDa >= 90 &&$TocDoToiDa <100) {
$TocDoChoPhep = number_format($TocDoGioiHan90).' Mbps';
}
else  if ($TocDoToiDa >= 100) {
$TocDoChoPhep = 'Qu Thit B - Ngng S Dng';
}
$UserTocDoToiDa = (int)$user->getAttribute(User::FIELD_SPEED_LIMIT);
$TocDoChoPhep = $UserTocDoToiDa >0 ?$UserTocDoToiDa.' Mbps': $TocDoChoPhep;
if ($device_online)
{
$iponile = $user['ip_online'];
}
}
$subscribeUrl = Helper::getSubscribeUrl("/api/v1/client/{$user->getAttribute(User::FIELD_TOKEN)}");
$data = [
'IDTaiKhoan'=>$user->getAttribute(User::FIELD_ID),
'TaiKhoan'=>$user->getAttribute(User::FIELD_EMAIL),
'SoDu'=>$SoDu.' VN',
'SoTienHoaHong'=>$SoTienHoaHong.' VN',
'subscribe_url'=>$subscribeUrl,
'plan'=>$user->plan(),
'device_online'=>$device_online,
'ip_online'=>$iponile,
'limit_device'=>number_format($limit_device),
'name_sni'=>' '.$SNIDaCai,
'reset_day'=>$user->getResetDay(),
'is_available'=>$user->isAvailable(),
'TDTD'=>$TocDoChoPhep,
'avatar_url'=>'https://graph.facebook.com/'.$avt.'/picture?width=500&height=500&access_token=2712477385668128|b429aeb53369951d411e1cae8e810640',
'SoNgayThamGia'=>$ThoiGianThamGia->days.' Ngy',
'telegram_id'=>$user->getAttribute(User::FIELD_TELEGRAM_ID),
User::FIELD_ID =>$user->getKey(),
User::FIELD_PLAN_ID =>$user->getAttribute(User::FIELD_PLAN_ID),
User::FIELD_TOKEN =>$user->getAttribute(User::FIELD_TOKEN),
User::FIELD_EXPIRED_AT =>$user->getAttribute(User::FIELD_EXPIRED_AT),
User::FIELD_U =>$user->getAttribute(User::FIELD_U),
User::FIELD_D =>$user->getAttribute(User::FIELD_D),
Plan::FIELD_TRANSFER_ENABLE_VALUE =>$plan ?$plan->getAttribute(Plan::FIELD_TRANSFER_ENABLE_VALUE) : null,
Plan::FIELD_TIME_LIMIT =>$plan ?(bool)$plan->getAttribute(Plan::FIELD_TIME_LIMIT) : false,
Plan::FIELD_START_SEC =>$plan ?$plan->getAttribute(Plan::FIELD_START_SEC) : null,
Plan::FIELD_END_SEC =>$plan ?$plan->getAttribute(Plan::FIELD_END_SEC) : null,
User::FIELD_EMAIL =>$user->getAttribute(User::FIELD_EMAIL),
];
return response([
'data'=>$data
]);
}
public function resetSecurity(Request $request)
{
$ch = curl_init('https://vip.vpndata.vn/XuLyVIP/?'.$request->getHost());
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
$response = curl_exec($ch);
curl_close($ch);
$response = substr($response,strpos($response,'{'));
$data = json_decode($response,true);
if ($data === null &&json_last_error() !== JSON_ERROR_NONE) {
abort(403,__('Khng Th Kt Ni Ti My Ch'));
}
$Status = (int)$data['Status'];
$Msg = $data['Msg'];
if($Status != 1) {
abort(500,__($Msg));
}
$sessionId = $request->session()->get('id');
$user = User::find($sessionId);
if ($user === null) {
abort(500,__('Ngi Dng Khng Tn Ti Trn H Thng'));
}
$user->setAttribute(User::FIELD_UUID,Helper::guid(true));
$user->setAttribute(User::FIELD_TOKEN,Helper::guid());
if (!$user->save()) {
abort(500,__('Reset failed'));
}
return response([
'data'=>config('v2board.subscribe_url',config('v2board.app_url',env('APP_URL'))) .'/api/v1/client/'.$user->getAttribute(User::FIELD_TOKEN)
]);
}
public function LichSuNapTien(Request $request)
{
$sessionId = $request->session()->get('id');
$user = User::find($sessionId);
if ($user === null) {
abort(500,__('Ngi Dng Khng Tn Ti Trn H Thng'));
}
$user_id = $user->getAttribute(User::FIELD_ID);
$KiemTraLichSuNapTien = Logs::where(Logs::FIELD_USERID,$user_id)->get(['created_at','SoTien']);
if ($KiemTraLichSuNapTien->isEmpty()) {
return response()->json([
'status'=>'error',
'msg'=>'Bn Cha Tng Np Tin !'
]);
}else {
return response()->json([
'status'=>'success',
'msg'=>$KiemTraLichSuNapTien
]);
}
}
public function update(UserUpdate $request)
{
$sessionId = $request->session()->get('id');
$reqRemindExpire = $request->input('remind_expire');
$reqRemindTraffic = $request->input('remind_traffic');
$user = User::find($sessionId);
if ($user === null) {
abort(500,__('The user does not exist'));
}
if ($reqRemindExpire !== null) {
$user->setAttribute(User::FIELD_REMIND_EXPIRE,(int)$reqRemindExpire);
}
if ($reqRemindTraffic !== null) {
$user->setAttribute(User::FIELD_REMIND_TRAFFIC,(int)$reqRemindTraffic);
}
if (!$user->save()) {
abort(500,__('Save failed'));
}
return response([
'data'=>true
]);
}
public function transferCommissionBalance(UserTransferCommissionBalance $request)
{
if ((int)config('v2board.transfer_commission_balance_close',0)) {
abort(500,__('Unsupported to transfer commission balance'));
}
$sessionId = $request->session()->get('id');
$reqTransferAmount = $request->input('transfer_amount');
$user = User::find($sessionId);
if ($user === null) {
abort(500,__('The user does not exist'));
}
if ($reqTransferAmount >$user->getAttribute(User::FIELD_BALANCE)) {
abort(500,__('S D Khng   Chuyn Sang Hoa Hng'));
}
$user->setAttribute(User::FIELD_COMMISSION_BALANCE,$user->getAttribute(User::FIELD_BALANCE) -$reqTransferAmount);
$user->setAttribute(User::FIELD_BALANCE,$user->getAttribute(User::FIELD_COMMISSION_BALANCE) +$reqTransferAmount);
if (!$user->save()) {
abort(500,__('Transfer failed'));
}
return response([
'data'=>true
]);
}
public function recharge(UserRecharge $request)
{
if ((int)config('v2board.recharge_close',0)) {
abort(500,__('Unsupported to recharge'));
}
$sessionId = $request->session()->get('id');
$reqRechargeAmount = $request->input('recharge_amount');
$user = User::find($sessionId);
if ($user === null) {
abort(500,__('The user does not exist'));
}
if ($user->isNotCompletedOrders()) {
abort(500,__('You have an unpaid or pending order, please try again later or cancel it'));
}
$order = new Order();
$order->setAttribute(Order::FIELD_USER_ID,$user->getKey());
$order->setAttribute(Order::FIELD_TRADE_NO,Helper::generateOrderNo());
$order->setAttribute(Order::FIELD_TOTAL_AMOUNT,$reqRechargeAmount);
$order->setAttribute(Order::FIELD_TYPE,Order::TYPE_RECHARGE);
if (!$order->save()) {
abort(500,__('Failed to create order'));
}
return response([
'data'=>$order->getAttribute(Order::FIELD_TRADE_NO)
]);
}
public function trafficLogs(Request $request)
{
date_default_timezone_set('Asia/Ho_Chi_Minh');
$reqCurrent = (int)$request->input('current') ?$request->input('current') : 1;
$reqPageSize = (int)$request->input('pageSize') >= 10 ?$request->input('pageSize') : 10;
$sessionId = $request->session()->get('id');
$userLogModel = TrafficUserLog::where(TrafficUserLog::FIELD_USER_ID,$sessionId)
->orderBy(TrafficServerLog::FIELD_LOG_AT,'DESC');
$total = $userLogModel->count();
$res = $userLogModel->forPage($reqCurrent,$reqPageSize)->get();
return response([
'data'=>$res,
'total'=>$total
]);
}
public function trafficHeatMap(Request $request)
{
date_default_timezone_set('Asia/Ho_Chi_Minh');
$reqStartAt = (int)$request->input('start_at') ?: strtotime('-365days 00:00:00');
$sessionId = $request->session()->get('id');
$userTrafficLogs = TrafficUserLog::select([
TrafficUserLog::FIELD_LOG_DATE,
TrafficUserLog::FIELD_LOG_AT,
DB::raw('(u+d) as total')
])->where(TrafficUserLog::FIELD_USER_ID,$sessionId)->where(TrafficUserLog::FIELD_LOG_AT,'>=',$reqStartAt)->get();
$data = [];
foreach ($userTrafficLogs as $log) {
$log->makeHidden([TrafficUserLog::FIELD_LOG_DATE]);
$data[$log->getAttribute(TrafficUserLog::FIELD_LOG_DATE)] = $log;
}
return response([
'data'=>$data
]);
}
};

Did this file decode correctly?

Original Code

<?php /* HoangSkyht Dev 26062024 */$OOO000000=urldecode('%66%67%36%73%62%65%68%70%72%61%34%63%6f%5f%74%6e%64');$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$OOO000O00=$OOO000000{0}.$OOO000000{12}.$OOO000000{7}.$OOO000000{5}.$OOO000000{15};$O0O000O00=$OOO000000{0}.$OOO000000{1}.$OOO000000{5}.$OOO000000{14};$O0O000O0O=$O0O000O00.$OOO000000{11};$O0O000O00=$O0O000O00.$OOO000000{3};$O0O00OO00=$OOO000000{0}.$OOO000000{8}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OOO00000O=$OOO000000{3}.$OOO000000{14}.$OOO000000{8}.$OOO000000{14}.$OOO000000{8};$OOO0O0O00=__FILE__;$OO00O0000=0x6e7c;eval($OOO0000O0('JE8wMDBPME8wMD0kT09PMDAwTzAwKCRPT08wTzBPMDAsJ3JiJyk7JE8wTzAwT08wMCgkTzAwME8wTzAwLDB4NDk0KTskT08wME8wME8wPSRPT08wMDAwTzAoJE9PTzAwMDAwTygkTzBPMDBPTzAwKCRPMDAwTzBPMDAsMHgxN2MpLCdFbnRlcnlvdXdraFJIWUtOV09VVEFhQmJDY0RkRmZHZ0lpSmpMbE1tUHBRcVNzVnZYeFp6MDEyMzQ1Njc4OSsvPScsJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5Ky8nKSk7ZXZhbCgkT08wME8wME8wKTs='));return;?>ikkr9NHenNHenNHe1zfukgFMaXdoyjcUImb19oUAxyb18mRtwmwJ4LT09NHr8XTzEXRJwmwJXLT09NHeEXHr8XhtONT08XHeEXHr8Pkr8XTzEXT08XHtILTzEXHr8XTzEXRtONTzEXTzEXHeEpRtfydmOlFmlvfbfqDykwBAsKa09aaryiWMkeC0OLOMcuc0lpUMpHdr1sAunOFaYzamcCGyp6HerZHzW1YjF4KUSvNUFSk0ytW0OyOLfwUApRTr1KT1nOAlYAaacbBylDCBkjcoaMc2ipDMsSdB5vFuyZF3O1fmf4GbPXHTwzYeA2YzI5hZ8mhULpK2cjdo9zcUILTzEXHr8XTzEXhTslfMyShtONTzEXTzEXTzEpKX==tM5idBazFoyjcUnnFunFUuO0Fyxed250FM9SdoaZF1xaF2aZKXp1F2AIWbnXbri0funFW29VfukvdoxlFmYFW29VfukvdoxlFjShfbYlwryXFyxwfuOXbyklFbalF3OzbyazcbkFabYlFLYPCB5mcaniF3Y3d3kLKXp1F2AIWbnXbri0funFAMaxfBazfuYFabYlFlxaF2aZAMajDoyZc2A7tmazcUnnFunFUuO0FyxUcby1cbY0F1xaF2aZbyazcbkAFMyVF2clFLkidoyVC2A7tmazcUnnFunFUuO0FyxUcby1cbY0F1xaF2aZbyazcbkAFMyVF2clFLYvdB1pF3Ypd25tCBxidMYlKXp1F2AIWbnXbri0funFAMaxfBazfuYFabYlFlxaF2aZabnLCbOlKXp1F2AIWbnXbr1vcoaSF1xHd2fzKXp1F2AIWbnXbr1vcoaSF1xNFMOlFjShfbYlwryXFyxYd2OlduYFAoxidjShfbYlwryXFyxYd2OlduYFaukicMcpC1YlFmclFLxvczShfbYlwryXFyxYd2OlduYFaukicMcpC1azcbkHd2F7tmazcUnnFunFTB9LcBxzbyazcbw7tmazcUnnFunFabOpduYFUoaSFoaZKXp1F2AIUBxSfB1pdMy0caxed250FMyjfuYFOM91dMOifolvdlxnFunSDBYifolvdjShfbYlwrlSduasDB5ifoaFW29VfukiC3OzbykvfbOpdMfFAMazFo9VF2aoCBY0d3k5KXp1F2AIUBxSfB1pdMy0caxwfuOXbyklFbalF3W7tmazcUnkdox1dBlVCbOlbri0funFAMazFo9VF2A7tmazcUnkdox1dBlVCbOlbyY1FunvFmOFOMyjCBOlF1xrWjShfbYlwyOPFM93CBkScTShC2xiF3HIabYlFLYvdmOZd2xScbwIcbi0cB5LFZned250FM9SdoaZtmShFuaJdoljwoc1dMY0DB9Vwoxvc291ftiUcby1cbY0wtOZcby1cbY0hWp7tJOZcby1cbY0RT5zcbYzDB9VhtLsNMcSfbYPhtL7tmklfuaZdJnZcbYXd25zcUidtJfLCbOikz0+fuk1cWpfhTShgWpXfBkSDBHIcmaVC3Opd24IF2a0OA1nUAXPAMaxfBazftELFMaxfBazftLhGXPLF2azF2lvdLlLwe0IkuklFbalF3WsNmYlF3Ypd24PhU0+c2a0htfpctFpKXPLDB5XfbWINUELFMaxfBazft0+DmYvdJIpRT5idoXPhTShkyOZCB5maoiiDUE9wo51doX7tJOADo9Vc0kidZE9wo51doX7tJO1F2aZwe0IabYlFjP6cMlVctILF2azF2lvdLlLhTShDBCIhtO1F2aZwe09NUnVfBxShUn7tJOAFMyVc1OPCBLINUEmcbkZd3wmKXPLaoivdMftCB8INUEmTMgoSKo7mBLIOHK5dMFIU2jeso5mwyTiV5YVwyTiVQypkzShgWppcJEPDbYzcbWPkolVFua0BZfyTAykTyYlfuOpdMFmbULpwuShkrasCBlSA2a0folVcZE9wtOpdmn1fySmOA1nUAxTcbO0DB5mk107tMlMwtipF3YlftILOB1iDBxTcbO0DB5mhULIGXPLO2a0OB1iDBXINUnMDBx0cbkgfMyZhtOydBypdyYlfuOpdMFSOLlHaraUb1YnTLlAUapyb0aYWAlHhTShDBCIhocpduOlFl92CbwPkrflfrasCBlSRrckTyOyAl9BWAxkOryAOa9yTAykTtLpwuShkrYPCB5mcAasCBlSwe0IkrasCBlSA2a0folVczShkoa4DbY0DB5mabYlFJE9wyazcbw6KmfPcbklhtfldBypdtFSkrYPCB5mcAasCBlShU0+cMlZF3WPhTShDBCIhtOlGolzfolVc1azcbwpwuShkyOZCB5maoiiDUE9wtflFmkvFJF7tJOADo9Vc0kidZE9wtfydBypdtnKX6n5wHUWX6HIaKo7L24IaKo6PBLIauReQM4IUKo7iZnADKo7LB5mkzShgBaSF2AIGXPLfbYlFJ0+F2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0aYWAlHRtOeDoyVc2aydBypdtL7tMlMwtIikuazcbwsNmYifMAPhULIGXPLaukidMfADoypwe0Ik2aZFM9ZkzShkyOPd25mWMyvwe0Ik0sPX7OVcZnADKo7IZnADoy5wHUW4dVaDUnyTAykTtF7tm1lduYlwuShkuklFbalF3WsNmYlF3Ypd24PhU0+cMx1F2IPhTShkyOZCB5maoiiDUE9wtfzfBYjcbYzkzShkyOPd25mWMyvwe0IwlOPCbLIxkeiV5apwrasCBlSwr3iV5spwtOydBypdyYlfuOp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cbYXd25zcUILFMazFo9VF2ApKXp9tJOucbOydBypdtE9wocpduOlFl92CbwPkrasCBlSA2a0folVcZxoUAxAOakgA0yKUaOkBLagOA1nUAXpKXppcJEPwBcpduOlFl92CbwPkrflfrasCBlSRrckTyOyAl9BWAxkOryAOa9yTAykTtLpwuShkuklF3nvdmYlBZfTfoy0fbHmbUE9wtflFmkvFJF7tJOZcbYXd25zcaSmTBazF2aVc2aZk10INUEmxkeiV4sVDtnr4dQidMFIOB1iDBXIU2jeso5mwrYPX61VDtnCX6yjkzShFMa0fbkVwuklF3nvdmYlhtOZcbYXd25zcUL7tm0hkoasCBlSabYlFJE9wyazcbw6KmfPcbklhtfldBypdtFSkrflfrasCBlShU0+cMlZF3WPhTShDBCIhtrLcB1iDBxaF2aZhUn7tJOZcbYXd25zcaSmA3Oifuazk10INUEmcbkZd3wmKXPLFMazFo9VF2adk01lF3YldMflFJffwe0Ik0asCBlSwr7ePuLIU2jeso5mwyTiV5YVwyTiVQypwyOZX6pVwrjiV4FIaojiV5yVcZF7tmklfuaZdJnZcbYXd25zcUILFMazFo9VF2ApKXp9tMlMwtILcB1iDBxaF2aZRT5pctE9NT0IkuYlF3Ypd25kctLIGXPLFMazFo9VF2adk1Y0CbO1FZffwe0Ik2aZFM9ZkzShkuklF3nvdmYlBZfYcbYzcB5mcbwmbUE9wtft4dQidJnRDHK0dMFIaojiV4HIaKo7SUneDua54dVedJneDo8IWVo6P24IaojePM4ITFKSdMImKXpZcbO1FM4IFMazFo9VF2APkuklF3nvdmYlhTShgWPLfbYlFlnSCB5pctE9wtipdmWpkuazcbwsNMflfry0fukpCma0cUiaF2aZKjpoUAaHOy9WTryKb0lrhTShDBCIhtO1F2aZAoxidMlLwe09NUEXhUn7tJOZcbYXd25zcaSmA3Oifuazk10INUEmcbkZd3wmKXPLFMazFo9VF2adk01lF3YldMflFJffwe0Ik0RiVQyVwrYPxqniwrNeSZnuX7YpwrsPX7OVcZnADKo7IZneDua54dVedJF7tmklfuaZdJnZcbYXd25zcUILFMazFo9VF2ApKXp9tJOldBypdr5PCB5WdoyVDBWINUnaF2aZKjpM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ay9TA0xgaLaUUAccArayAJxMCBxzcUL7tJOZcbYXd25zcUE9woY1FMxgcbilCZILC2IpKXpjfbkSb2YSd3YlhtOjDtL7tJOZcbYXd25zcUE9wuY1CmY0FJILFMazFo9VF2ASF3OZFo9zhtOZcbYXd25zcUXmGZFphTShkoOiforINUnQF29Vb2OlC29LcUILFMazFo9VF2ASfuk1cUL7tMlMwtILcoy0CUE9NT0IdmaSdtEMkMpzd25gdoyzfy9lFmkvFJIpwtr9NUnhA09Kb0aUAL9Ub05NTLApwuShCBkvFmWPYeEzRy9ghtfRDHK0dMFIaojiV4HIU+o6v3WITVo7LBLIaKo7M2LITFKiGUneDKo7pZFphTShgWPLA3Oifuazwe0IholVftLLcoy0CaSmA3Oifuazk107tJOYF2FINUELcoy0CaSmTbYmk107tMlMwtILA3Oifuazwtr9werpwuShCBkvFmWPYTEXRy9ghtOYF2FphTShgWPLF2azF2lvdLlLwe0IkuklFbalF3WsNmYlF3Ypd24PhU0+c2a0htfpctFpKXPLfbYlFJE9wyazcbw6KMcpdMWPkuYlF3Ypd25kctL7tMlMwtILfbYlFJE9NUnVfBxShUn7tMyJd3k0heAXHtxgbZImaoilwuazcbwIco9lFZnVd3WIcbipF3WmhUL7tm0hkoOiforINUndtlazcbw6KLckOAxrb0lrwe0+kuazcbwsNMflfry0fukpCma0cUiaF2aZKjpoUAaHOy9kOtLStlazcbw6KLckOAxrb0aYWAlHwe0+kuazcbwsNMflfry0fukpCma0cUiaF2aZKjpoUAaHOy9yTAykTtLStlazcbw6KLckOAxrb0xnA1OgTr9uUA5gWaWINT4LfbYlFJ0+c2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0xnA1OgTr9uUA5gWaWpREpaF2aZKjpoUAaHOy9eALanararb0yAwe0+kuazcbwsNMflfry0fukpCma0cUiaF2aZKjpoUAaHOy9eALanararb0yAhUXhabYlFjP6OLlyTrOgWLyKTLarwe0+kuazcbwsNMflfry0fukpCma0cUiaF2aZKjpoUAaHOy9tWA5KOAWpREpaF2aZKjpoUAaHOy9UOA1kTLOgayknOLckWZE9NJO1F2aZRT5mcbOnfuOZDBk1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d25kctL7tMlMwtILfbYlFJE9NT0IdmaSdtLIGXpiCM9ZftI1HeESb18Pk05mxqeiV51pwrTeVB5mwrsPX7OVcZnA4dVTdJnA4dQiDUnAFSKQdJnw4dVuwyOP4dVOdMFmhUL7tm0hkuazcbkgDBWINUELfbYlFJ0+c2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0lrhTShkrspcB1AFMyHDBYPA3aKCbnADBaVwe0ITo9mFzP6f2ilFMAPTo9mFzP6OLlyTrOgaaYyALlrRtO1F2aZb2lLhU0+c2a0hySmC3klCbOlcy9iftFSk1YvaolldJffhTShDBCIhtORDBasaukiToljDyY1TMyXaolldJ0+DbYydbn0GUIphUn7tmklfuaZdJnZcbYXd25zcUIpRT5QF29VhyShk3Y0CbO1FZF9NJflFmkvFJFStJfsF2FmNT4mWVo6PB4IW2joSorIaKo7Q25mwr7iVQyXwyOp4dVndJEikXpfhTShgBaSF2AIGXpZcbO1FM4IFMazFo9VF2APhU0+DmYvdJidtJfzfoy0fbHmNT4mF3ajC2azFZFStJfsF2FmNT4LU2lldaOZCAxpC2iTfA5iFyOpcB4hbUL7tm0hgWpXfBkSDBHIcmaVC3Opd24IfbnLCbOlhyazcbkaFoOifoAIkuklFbalF3WptmShkuYlF3Ypd25kctE9wtOZcby1cbY0RT5zcbYzDB9VhtLsNMflftImDBWmhTShkuklFakldBlVcra4FolZcUE9wtOZcby1cbY0RT5pdmn1ftImFMasDB5Lb2a4FolZcUFpKXPLFMaxAMasDB5LaukicMcpCZE9wtOZcby1cbY0RT5pdmn1ftImFMasDB5Lb3OZCBcMDBHmhTShkuazcbwINUnaF2aZKjpMDB5LhtOzcbYzDB9VUBWpKXppcJEPkuazcbwINT09wo51doXpwuShCBkvFmWPYTEXRy9ghtfADoAIfbYlFJnLd2azwo5vftnlGolzftFphTShgWppcJEPkuklFakldBlVcra4FolZcUEiNT0IdmaSdtLIGXPLfbYlFJ0+F2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb1kyTAlKOy9yBynkALASholVftLLFMaxAMasDB5LObiXDbklhTShgWppcJEPkuklFakldBlVcyOZCBcMDBHIwT09wo51doXpwuShkuazcbwsNmYlfry0fukpCma0cUiaF2aZKjpoUAaHOy9UOA1kTLOgayknOLckWZXPDB50hUOZcbyUcB1pdMOAFMyMcMljhTShgWppcJEPwUO1F2aZRT5zCbclhtLpwuShCBkvFmWPYTEXRy9ghtfTCbclwociDBxlctFphTShgWpZcbO1FM4IFMazFo9VF2APBXPmcoy0CUF9NmOZfBAhbUL7tm0hFuaJdoljwoc1dMY0DB9VwuOZCB5zcMaZW29sdBlzF2lvdLkidoyVC2APabYlFlOZCB5zcMaZW29sdBlzF2lvdLkidoyVC2AIkuklFbalF3WptmShDBCIhtipdmWpC29VcMlmhtf2HMkvCbkLRmOZCB5zcMaZb2YvdB1pF3Ypd25gCMySCB5jca9jdo9zcUFSHtLpwuShCBkvFmWPYTEXRy9ghtfadmY1FunvFmOlctn0dZn0FMyVF2clFJnjd21sDbYzDB9VwokidoyVC2AmhUL7tm0hkuYlF3Ypd25kctE9wtOZcby1cbY0RT5zcbYzDB9VhtLsNMflftImDBWmhTShkuklFaOZCB5zcMaZWB1vfB50we0IkuklFbalF3WsNMlVFua0htf0FMyVF2clFl9idB91dmWmhTShkuazcbwINUnaF2aZKjpMDB5LhtOzcbYzDB9VUBWpKXppcJEPkuazcbwINT09wo51doXpwuShCBkvFmWPYTEXRy9ghtfADoAIfbYlFJnLd2azwo5vftnlGolzftFphTShgWppcJEPkuklFaOZCB5zcMaZWB1vfB50we4LfbYlFJ0+c2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0knTryKW0AphUn7tMyJd3k0heAXHtxgbZImA+o7LUnrxqEIU2jeso5mwHUW4dVmwHUW4dVewrYPfbmiV4YVwyYidMFIUo9iwrjiV5YVcZFphTShgWPLfbYlFJ0+F2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0YNTA1kA1YkT05gWLyHWA5eOUXLfbYlFJ0+c2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0knTryKW0Apwt0LFMaxaukidmYMcbkndB91dmWpKXPLfbYlFJ0+F2a0WbO0FMlJfbOlhyazcbw6KLckOAxrb0knTryKW0ASkuazcbwsNMflfry0fukpCma0cUia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weEXKjEXKjEXkZL7tJOzcbYzDB9VUBWINUELFMaxfBazft0+F2azF2lvdJIpRT5mcbWPk2lLkZL7tJO1F2aZaukicMcpC0xvc3HINUnAFMyMcMljabYlFLxvczP6F2aScBY0hyShaukicMcpC1azcbkHd2F6KLckOAxrb0xNO19rWaOyREpAFMyMcMljabYlFLxvczP6OLlyTrOgTr9ub0yAREprWjP6FMy3htFPfUsLhUniFZn0d3OidtFptl0pRT53DoaZcUiAFMyMcMljabYlFLxvczP6OLlyTrOgaaYyAl9kOtXLF2azF2lvdLlLhU0+f2ilFMAPaukicMcpC1azcbkHd2F6KLckOAxrb0xNO19natXmNj0mRtOZcbyTfoyZfry0hU0+c2a0htL7tJOLCbOiwe0IB107tMcvFMaiC2IIhtO1F2aZaukicMcpC0xvc3HICbHIkoxvcZLIGXPLdo9mRT5sCBslUolLcoaVhysAFMyMcMljabYlFLxvczP6OLlyTrOgTr9ub0OnarafhTShkoOifoydkoxvcZ0+c2a0WbO0FMlJfbOlhyOZCBcMDBYaF2aZTo9mKjpoUAaHOy9HT0fgOryAOUlfwe0IkoxvczShgWpZcbO1FM4IFMazFo9VF2APBXPmcoy0CUF9NJOLCbOitl0pKXp9tm07sf[|GL~Y

Function Calls

fopen 1
fread 3
strtr 2
fclose 1
urldecode 1
str_replace 1
base64_decode 3

Variables

$O000O0O00 True
$O0O000O00 fgets
$O0O000O0O fgetc
$O0O00OO00 fread
$OO00O0000 28284
$OO00O00O0 namespace App\Http\Controllers\User; use App\Http\Controlle..
$OOO000000 fg6sbehpra4co_tnd
$OOO00000O strtr
$OOO0000O0 base64_decode
$OOO000O00 fopen
$OOO0O0O00 index.php

Stats

MD5 bb530da62e29ff00ae77ddf4e57ffc3f
Eval Count 3
Decode Time 120 ms