Online PHP and Javascript Decoder decode hidden script to uncover its real functionality


namespace App\Http\Controllers;
 use App\Models\SmmPanel;
 use App\Models\Token;
 use App\Models\Server;
 use App\Models\Services;
 use App\Models\Category;
 use App\Models\Orders;
 use App\Models\Settings;
 use App\Models\Subcategory;
 use App\Models\User;
 use App\Models\Websites;
 use App\Models\Banking;
 use App\Models\Transaction;
 use App\Models\Card;
 use App\Models\News;
 use App\Models\Noti;
 use App\Models\Ticket;
 use Illuminate\Http\Request;
 use Carbon\Carbon;
 use Illuminate\Support\Facades\Hash;
 use App\Helpers\Smm as Smm_Global;
 use App\Models\Activity_log;
 use App\Models\History_order;
 use App\Models\SmmPanel_Activity;
 use App\Models\SmmPanel_percent;
 use Illuminate\Support\Facades\Validator;
 use App\Helpers\Anhyeuem37;
	 class Admin extends Controller {
	 private $data;
		 public function __construct(Request $request) {
		 $this->data = array();
		 
	}
		 public function index() {
		 $this->data["title"] = "Quản trị hệ thống";
		 $this->data["user"] = User::count();
		 $this->data["balance"] = User::sum("balance");
		 $this->data["new_user_today"] = User::whereDate("created_at", "=", Carbon::now()->format("Y-m-d"))->count("id");
		 $this->data["amount_today"] = Transaction::whereDate("created_at", "=", Carbon::now()->format("Y-m-d"))->sum("amount");
		 $this->data["spending_today"] = Orders::whereDate("created_at", "=", Carbon::now()->format("Y-m-d"))->sum("total");
		 $this->data["total_amount"] = Transaction::sum("amount");
		 $this->data["total_order_amount"] = Orders::sum("total");
		 $this->data["total_order"] = Orders::count();
		 $this->data["total_order_process"] = Orders::where("status", "success")->count();
		 $this->data["total_order_pending"] = Orders::where("status", "pending")->count();
		 $this->data["total_order_partial_count"] = Orders::where("status", "cancel")->count();
		 $this->data["total_order_error"] = Orders::where("status", "error")->sum("total");
		 $this->data["total_order_partial_amount"] = Orders::where("status", "cancel")->sum("total");
		 $this->data["order"] = Orders::get();
		 $total = 0;
			 foreach ($this->data["order"] as $order) {
			 $server = Server::where("id", $order->server)->first();
				 if ($server) {
				 $price_server = $order->quantity * $server->price_smm;
				 $total += $order->total - $price_server;
				 
			}
			 
		}
		 $this->data["total_order_profit_amount"] = $total;
		 $this->data["order"] = Orders::whereDate("created_at", "=", Carbon::now()->format("Y-m-d"))->get();
		 $total = 0;
			 foreach ($this->data["order"] as $order) {
			 $server = Server::where("id", $order->server)->first();
				 if ($server) {
				 $price_server = $order->quantity * $server->price_smm;
				 $total += $order->total - $price_server;
				 
			}
			 
		}
		 $this->data["total_order_profit_amount_today"] = $total;
		 $this->data["settings"] = Settings::get();
		 return view("admin.index", array("data" => $this->data));
		 
	}
		 public function smmpanel($id = null) {
		 $this->data["title"] = "Quản lý SMM Panel";
		 $this->data["smmpanel"] = SmmPanel::orderBy("id", "desc")->paginate(10);
			 if ($id) {
			 $smmpanel = SmmPanel::where("id", $id)->first();
				 if ($smmpanel) {
				 $this->data["smmpanel"] = $smmpanel;
				 
			}
				 else {
				 return redirect()->route("admin_smmpanel")->withErrors("SMM Panel không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.smmpanel", array("data" => $this->data, "id" => $id));
		 
	}
		 public function token($id = null) {
		 $this->data["title"] = "Quản lý Token";
		 $this->data["token"] = Token::orderBy("id", "desc")->paginate(10);
			 if ($id) {
			 $token = Token::where("id", $id)->first();
				 if ($token) {
				 $this->data["token"] = $token;
				 
			}
				 else {
				 return redirect()->route("admin_token")->withErrors("Id token không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.token", array("data" => $this->data, "id" => $id));
		 
	}
		 public function smmpanel_activity() {
		 $this->data["title"] = "Nhật ký SMM Panel";
		 $this->data["smmpanel"] = SmmPanel::where("status", 1)->get();
		 $this->data["smmpanel_activity"] = SmmPanel_Activity::orderBy("id", "desc")->paginate(10);
		 return view("admin.smmpanel_activity", array("data" => $this->data));
		 
	}
		 public function smmpanel_percent() {
		 $this->data["title"] = "Auto giá SMM Panel";
		 $this->data["smmpanel_percent"] = smmpanel_percent::get();
		 return view("admin.smmpanel_percent", array("data" => $this->data));
		 
	}
		 public function activity_log() {
		 $this->data["title"] = "Nhật ký hệ thống";
		 $this->data["activity_log"] = Activity_log::orderBy("id", "desc")->paginate(10);
		 return view("admin.activity_log", array("data" => $this->data));
		 
	}
		 public function history_order() {
		 $this->data["title"] = "Nhật ký khách hàng";
		 $this->data["history_order"] = History_order::orderBy("id", "desc")->paginate(10);
		 return view("admin.history_order", array("data" => $this->data));
		 
	}
		 public function card() {
		 $this->data["title"] = "Nạp tiền thẻ cào";
		 $this->data["card"] = Card::orderBy("id", "desc")->paginate(10);
		 return view("admin.card", array("data" => $this->data));
		 
	}
		 public function admin_update_smmpanel(request $request) {
		 $request->validate(array("link" => "required|url", "token" => "required", "name" => "required"), array("link.required" => "Vui lòng nhập Link đối tác !", "link.url" => "Vui lòng nhập Link hợp lệ !", "token.required" => "Vui lòng nhập Token !", "name.required" => "Vui lòng nhập tên API !"));
		 $SmmPanel = SmmPanel::where("id", $request->id)->first();
			 if ($SmmPanel) {
			 $SmmPanel->update(array("link" => $request->link, "token" => $request->token, "name" => $request->name, "type" => $request->type));
			 
		}
		 return redirect()->route("admin_smmpanel")->with("success", "Cập nhật thành công !");
		 
	}
		 public function admin_update_token(request $request) {
		 $request->validate(array("token" => "required"), array("token.required" => "Vui lòng nhập Token !"));
		 $token = Token::where("id", $request->id)->first();
			 if ($token) {
			 $token->update(array("token" => $request->token));
			 
		}
		 return redirect()->route("admin_token")->with("success", "Cập nhật thành công !");
		 
	}
		 public function server(Request $request, $id = null) {
		 $request->validate(array("search" => "nullable|string"), array("search.string" => "Vui lòng nhập trạng thái đơn hợp lệ!"));
		 $query = Server::where("smmpanel", ">", 0)->orderBy("id", "desc");
		 $search = $request->input("search");
			 if ($search) {
			 $searchQuery = "%" . $search . "%";
				 $query->where(function ($query) use($searchQuery) {
				 $query->where("id", "like", $searchQuery)->orWhere("detail", "like", $searchQuery)->orWhere("server_smm", "like", $searchQuery);
				 
			}
			);
			 
		}
		 $this->data["title"] = "Quản lý Server";
		 $this->data["services"] = Services::where("status", 1)->get();
		 $this->data["category"] = Category::where("status", 1)->get();
		 $this->data["subcategory"] = Subcategory::where("status", 1)->get();
		 $this->data["smmpanel"] = SmmPanel::where("status", 1)->get();
		 $this->data["token"] = Token::where("status", 1)->get();
			 if ($id) {
			 $server = Server::where("id", $id)->first();
				 if ($server) {
				 $this->data["server"] = $server;
				 
			}
				 else {
				 return redirect()->route("admin_server")->withErrors("Server không hợp lệ !");
				 
			}
			 
		}
			 else {
			 $this->data["server"] = $query->paginate(10);
			 
		}
		 return view("admin.server", array("data" => $this->data, "id" => $id));
		 
	}
		 public function servernormal(Request $request, $id = null) {
		 $request->validate(array("search" => "nullable|string"), array("search.string" => "Vui lòng nhập trạng thái đơn hợp lệ!"));
		 $query = Server::where("token", "!=", 0)->orderBy("id", "desc");
		 $search = $request->input("search");
			 if ($search) {
			 $searchQuery = "%" . $search . "%";
				 $query->where(function ($query) use($searchQuery) {
				 $query->where("id", "like", $searchQuery)->orWhere("detail", "like", $searchQuery);
				 
			}
			);
			 
		}
		 $this->data["title"] = "Quản lý Server riêng";
		 $this->data["services"] = Services::where("status", 1)->get();
		 $this->data["token"] = Token::where("status", 1)->get();
			 if ($id) {
			 $server = Server::where("id", $id)->first();
				 if ($server) {
				 $this->data["server"] = $server;
				 
			}
				 else {
				 return redirect()->route("admin_server_normal")->withErrors("Server không hợp lệ !");
				 
			}
			 
		}
			 else {
			 $this->data["server"] = $query->paginate(10);
			 
		}
		 return view("admin.servernormal", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_server(Request $request) {
		 $request->validate(array("detail" => "required", "price" => "required", "level1" => "required", "level2" => "required", "level3" => "required", "level4" => "required", "level5" => "required", "min" => "required", "max" => "required", "id_service" => "required"), array("detail.required" => "Vui lòng nhập id thông tin server !", "price.required" => "Vui lòng nhập giá giá tiền !", "level1.required" => "Vui lòng nhập giá cấp 1 !", "level2.required" => "Vui lòng nhập giá cấp !", "level3.required" => "Vui lòng nhập giá cấp !", "level4.required" => "Vui lòng nhập giá cấp !", "level5.required" => "Vui lòng nhập giá cấp 5 !", "min.required" => "Vui lòng nhập số lượng tối thiểu !", "max.required" => "Vui lòng nhập số lượng tối đa !", "id_service.required" => "Vui lòng nhập ID dịch vụ !"));
		 $server = Server::where("id", $request->id)->first();
			 if ($server) {
			 $server->update(array("detail" => $request->detail, "price" => $request->price, "price_smm" => isset($request->price_smm) ? $request->price_smm : 0, "server_smm" => $request->server_smm ? $request->server_smm : 0, "level1" => $request->level1, "level2" => $request->level2, "level3" => $request->level3, "level4" => $request->level4, "level5" => $request->level5, "info" => isset($request->info) ? $request->info : 0, "reaction" => isset($request->reaction) ? $request->reaction : 0, "comment" => isset($request->comment) ? $request->comment : 0, "dayvip" => isset($request->dayvip) ? $request->dayvip : 0, "dayvip_cmt" => isset($request->dayvip_cmt) ? $request->dayvip_cmt : 0, "dayvip_live" => isset($request->dayvip_live) ? $request->dayvip_live : 0, "buff_live" => isset($request->buff_live) ? $request->buff_live : 0, "cancel" => isset($request->cancel) ? $request->cancel : 0, "speed" => isset($request->speed) ? $request->speed : 0, "guarantee" => isset($request->guarantee) ? $request->guarantee : 0, "token" => isset($request->token) ? $request->token : 0, "server_origin" => isset($request->server_origin) ? $request->server_origin : 0, "note" => isset($request->note) ? $request->note : '', "smmpanel" => isset($request->smmpanel) ? $request->smmpanel : 0, "note_cancel" => isset($request->note_cancel) ? $request->note_cancel : '', "min" => $request->min, "max" => $request->max, "id_service" => $request->id_service));
			 return redirect()->route("admin_server")->with("success", "Cập nhật thành công!");
			 
		}
			 else {
			 return redirect()->route("admin_server")->withErrors("Cập nhật thất bại!");
			 
		}
		 
	}
		 public function admin_update_servernormal(Request $request) {
		 $request->validate(array("detail" => "required", "price" => "required", "level1" => "required", "level2" => "required", "level3" => "required", "level4" => "required", "level5" => "required", "min" => "required", "max" => "required", "id_service" => "required"), array("detail.required" => "Vui lòng nhập id thông tin server !", "price.required" => "Vui lòng nhập giá giá tiền !", "level1.required" => "Vui lòng nhập giá cấp 1 !", "level2.required" => "Vui lòng nhập giá cấp 2 !", "level3.required" => "Vui lòng nhập giá cấp !", "level4.required" => "Vui lòng nhập giá cấp 4 !", "level5.required" => "Vui lòng nhập giá cấp 5 !", "min.required" => "Vui lòng nhập số lượng tối thiểu !", "max.required" => "Vui lòng nhập số lượng tối đa !", "id_service.required" => "Vui lòng nhập ID dịch vụ !"));
		 $server = Server::where("id", $request->id)->first();
			 if ($server) {
			 $server->update(array("name" => $request->name, "detail" => $request->detail, "price" => $request->price, "price_smm" => isset($request->price_smm) ? $request->price_smm : 0, "server_smm" => $request->server_smm ? $request->server_smm : 0, "level1" => $request->level1, "level2" => $request->level2, "level3" => $request->level3, "level4" => $request->level4, "level5" => $request->level5, "info" => isset($request->info) ? $request->info : 0, "reaction" => isset($request->reaction) ? $request->reaction : 0, "comment" => isset($request->comment) ? $request->comment : 0, "dayvip" => isset($request->dayvip) ? $request->dayvip : 0, "dayvip_cmt" => isset($request->dayvip_cmt) ? $request->dayvip_cmt : 0, "dayvip_live" => isset($request->dayvip_live) ? $request->dayvip_live : 0, "buff_live" => isset($request->buff_live) ? $request->buff_live : 0, "cancel" => isset($request->cancel) ? $request->cancel : 0, "speed" => isset($request->speed) ? $request->speed : 0, "guarantee" => isset($request->guarantee) ? $request->guarantee : 0, "token" => isset($request->token) ? $request->token : 0, "server_origin" => isset($request->server_origin) ? $request->server_origin : 0, "note" => isset($request->note) ? $request->note : '', "smmpanel" => isset($request->smmpanel) ? $request->smmpanel : 0, "note_cancel" => isset($request->note_cancel) ? $request->note_cancel : '', "min" => $request->min, "max" => $request->max, "id_service" => $request->id_service));
			 return redirect()->route("admin_servernormal")->with("success", "Cập nhật thành công!");
			 
		}
			 else {
			 return redirect()->route("admin_servernormal")->withErrors("Cập nhật thất bại!");
			 
		}
		 
	}
		 public function category($id = null) {
		 $this->data["title"] = "Quản lý Danh mục";
		 $this->data["subcategory"] = subcategory::get();
		 $this->data["category"] = Category::orderBy("priority", "asc")->paginate(20);
			 if ($id) {
			 $category = Category::where("id", $id)->first();
				 if ($category) {
				 $this->data["category"] = $category;
				 
			}
				 else {
				 return redirect()->route("admin_category")->withErrors("Danh mục không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.category", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_category(request $request) {
		 $request->validate(array("name" => "required", "icon" => "required|url", "priority" => "required"), array("name.required" => "Vui lòng nhập tên danh mục !", "icon.required" => "Vui lòng nhập link icon !", "icon.url" => "Vui lòng nhập link icon hợp lệ !", "priority.required" => "Vui lòng nhập cấp đô ưu tiên !"));
		 $category = Category::where("id", $request->id)->first();
			 if ($category) {
			 $category->update(array("name" => $request->name, "icon" => $request->icon, "priority" => $request->priority));
			 
		}
		 return redirect()->route("admin_category")->with("success", "Cập nhật thành công !");
		 
	}
		 public function subcategory($id = null) {
		 $this->data["title"] = "Quản lý Danh mục phụ";
		 $this->data["subcategory"] = subcategory::paginate(10);
		 $this->data["category"] = Category::get();
			 if ($id) {
			 $subcategory = Subcategory::where("id", $id)->first();
				 if ($subcategory) {
				 $this->data["subcategory"] = $subcategory;
				 
			}
				 else {
				 return redirect()->route("admin_subcategory")->withErrors("Danh mục con không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.subcategory", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_subcategory(request $request) {
		 $request->validate(array("name" => "required", "id_category" => "required|numeric"), array("name.required" => "Vui lòng nhập tên danh mục con !", "id_category.required" => "Vui lòng nhập id danh mục !", "id_category.numeric" => "Vui lòng nhập id danh mục hợp lệ !"));
		 $subcategory = Subcategory::where("id", $request->id)->first();
			 if ($subcategory) {
			 $subcategory->update(array("name" => $request->name, "id_category" => $request->id_category));
			 
		}
		 return redirect()->route("admin_subcategory")->with("success", "Cập nhật thành công !");
		 
	}
		 public function service($id = null) {
		 $this->data["title"] = "Quản lý Dịch vụ";
		 $this->data["services"] = Services::paginate(10);
		 $this->data["subcategory"] = subcategory::where("status", 1)->get();
			 if ($id) {
			 $Services = Services::where("id", $id)->first();
				 if ($Services) {
				 $this->data["subcategory"] = subcategory::where("status", 1)->get();
				 $this->data["service"] = $Services;
				 
			}
				 else {
				 return redirect()->route("admin_service")->withErrors("Dịch vụ không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.service", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_service(request $request) {
		 $request->validate(array("name" => "required", "id_subcategory" => "required|numeric"), array("name.required" => "Vui lòng nhập tên danh mục con !", "id_subcategory.required" => "Vui lòng nhập id danh mục con !", "id_subcategory.numeric" => "Vui lòng nhập id danh mục con hợp lệ !"));
		 $Services = Services::where("id", $request->id)->first();
			 if ($Services) {
			 $Services->update(array("name" => $request->name, "id_subcategory" => $request->id_subcategory));
			 
		}
		 return redirect()->route("admin_service")->with("success", "Cập nhật thành công !");
		 
	}
		 public function order() {
		 $this->data["title"] = "Quản lý Đơn hàng";
		 $this->data["order"] = Orders::orderBy("id", "desc")->paginate(20);
		 $this->data["service"] = Services::get();
		 $this->data["server"] = Server::get();
		 $this->data["smmpanel"] = SmmPanel::get();
		 return view("admin.order", array("data" => $this->data));
		 
	}
		 public function user($id = null) {
		 $this->data["title"] = "Quản lý Khách hàng";
		 $this->data["user"] = User::orderBy("id", "desc")->paginate(10);
			 if ($id) {
			 $user = User::where("id", $id)->first();
				 if ($user) {
				 $this->data["user"] = $user;
				 $this->data["activity_log"] = Activity_log::where("username", $user->username)->orderBy("id", "desc")->paginate(10);
				 
			}
				 else {
				 return redirect()->route("admin_user")->withErrors("Tài khoản không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.user", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_user(request $request) {
		 $request->validate(array("name" => "required", "username" => "required", "email" => "required|email", "password" => "required", "token" => "required", "level" => "required", "status" => "required"), array("name.required" => "Vui lòng nhập tên tài khoản !", "username.required" => "Vui lòng nhập tên đăng nhập !", "email.required" => "Vui lòng nhập địa chỉ email !", "email.email" => "Vui lòng nhập địa chỉ email hợp lệ !", "password.required" => "Vui lòng nhập mật khẩu !", "level.required" => "Vui lòng nhập cấp độ !", "token.required" => "Vui lòng nhập mã token !"));
		 $user = User::where("id", $request->id)->first();
			 if ($user) {
			 $user->update(array("name" => $request->name, "username" => $request->username, "email" => $request->email, "balance" => $request->balance == 0 ? $user->balance : $request->balance, "password" => $request->password == $user->password ? $request->password : Hash::make($request->password), "token" => $request->token, "level" => $request->level, "verify" => $request->verify, "status" => $request->status));
			 
		}
		 return redirect()->route("admin_user")->with("success", "Cập nhật thành công !");
		 
	}
		 public function admin_change_amount(Request $request) {
		 $request->validate(array("type" => "required|in:reduce,increase", "amount" => "required|numeric", "id" => "required|numeric"), array("type.required" => "Vui lòng nhập kiểu thực hiện!", "amount.required" => "Vui lòng nhập số tiền!", "type.in" => "Kiểu thực hiện không hợp lệ!", "amount.numeric" => "Số tiền phải là một số!", "id.required" => "Vui lòng nhập ID người dùng!", "id.numeric" => "ID người dùng phải là một số!"));
		 $user = User::find($request->id);
			 if (!$user) {
			 return redirect()->route("admin_user")->withError("Người dùng không tồn tại!");
			 
		}
			 if ($request->type == "reduce") {
			 $user->update(array("balance" => $user->balance - $request->amount));
			 Activity_log::create(array("content" => "ADMIN trừ số tiền " . $request->amount . '', "username" => $user->username));
			 
		}
			 elseif ($request->type == "increase") {
			 $user->update(array("balance" => $user->balance + $request->amount));
			 Activity_log::create(array("content" => "ADMIN cộng tiền " . $request->amount . '', "username" => $user->username));
			 Transaction::create(array("username" => $user->username, "amount" => $request->amount, "description" => "ADMIN cộng tiền"));
			 
		}
			 else {
			 return redirect()->route("admin_user")->withError("Kiểu thực hiện không hợp lệ!");
			 
		}
		 return redirect()->route("admin_user")->withSuccess("Cập nhật thành công!");
		 
	}
		 public function banking($id = null) {
		 $this->data["title"] = "Quản lý Tài khoản ngân hàng";
		 $this->data["banking"] = Banking::paginate(5);
			 if ($id) {
			 $banking = Banking::where("id", $id)->first();
				 if ($banking) {
				 $this->data["banking"] = $banking;
				 
			}
				 else {
				 return redirect()->route("admin_banking")->withErrors("ID ngân hàng không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.banking", array("data" => $this->data, "id" => $id));
		 
	}
		 public function ticket() {
		 $this->data["title"] = "Quản lý hỗ trợ - khiếu nại";
		 $this->data["ticket"] = Ticket::orderBy("id", "desc")->paginate(10);
		 return view("admin.ticket", array("data" => $this->data));
		 
	}
		 public function website() {
		 $this->data["title"] = "Quản lý Website con";
		 $this->data["website"] = Websites::orderBy("id", "desc")->paginate(10);
		 return view("admin.website", array("data" => $this->data));
		 
	}
		 public function transaction() {
		 $this->data["title"] = "Quản lý lịch sử nạp ngân hàng";
		 $this->data["transaction"] = Transaction::orderBy("id", "desc")->paginate(20);
		 return view("admin.transaction", array("data" => $this->data));
		 
	}
		 public function admin_update_banking(request $request) {
		 $request->validate(array("type" => "required", "username" => "required", "password" => "required", "account_number" => "required|numeric", "account_name" => "required", "token" => "required", "logo" => "required|url"), array("type.required" => "Vui lòng nhập ngân hàng !", "password.required" => "Vui lòng nhập mật khẩu !", "account_number.required" => "Vui lòng nhập số tài khoản !", "account_number.numeric" => "Vui lòng nhập số tài khoản hợp lệ !", "account_name.required" => "Vui lòng nhập chủ tài khoản !", "token.required" => "Vui lòng nhập mã token !", "logo.required" => "Vui lòng nhập link logo !", "logo.url" => "Vui lòng nhập link logo hợp lệ !"));
		 $banking = Banking::where("id", $request->id)->first();
			 if ($banking) {
			 $banking->update(array("type" => $request->type, "username" => $request->username, "password" => $request->password, "account_number" => $request->account_number, "account_name" => $request->account_name, "token" => $request->token, "logo" => $request->logo));
			 
		}
		 return redirect()->route("admin_banking")->with("success", "Cập nhật thành công !");
		 
	}
		 public function news($id = null) {
		 $this->data["title"] = "Quản lý Thông báo";
		 $this->data["news"] = News::orderBy("id", "desc")->paginate(10);
			 if ($id) {
			 $news = News::where("id", $id)->first();
				 if ($news) {
				 $this->data["news"] = $news;
				 
			}
				 else {
				 return redirect()->route("admin_user")->withErrors("ID thông báo không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.news", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_news(request $request) {
		 $request->validate(array("title" => "required", "content" => "required"), array("title.required" => "Vui lòng nhập tiêu đề !", "content.required" => "Vui lòng nhập nội dung bài đăng !"));
		 $news = News::where("id", $request->id)->first();
			 if ($news) {
			 $news->update(array("title" => $request->title, "content" => $request->content));
			 
		}
		 return redirect()->route("admin_news")->with("success", "Cập nhật thành công !");
		 
	}
		 public function admin_add_news(request $request) {
		 $request->validate(array("title" => "required", "content" => "required"), array("title.required" => "Vui lòng nhập tiêu đề !", "content.required" => "Vui lòng nhập nội dung !"));
		 $news = News::create(array("title" => $request->title, "content" => $request->content));
			 if ($news) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function noti($id = null) {
		 $this->data["title"] = "Quản lý Thông báo Phụ";
		 $this->data["noti"] = Noti::orderBy("id", "desc")->paginate(10);
			 if ($id) {
			 $noti = Noti::where("id", $id)->first();
				 if ($noti) {
				 $this->data["noti"] = $noti;
				 
			}
				 else {
				 return redirect()->route("admin_user")->withErrors("ID thông báo không hợp lệ !");
				 
			}
			 
		}
		 return view("admin.noti", array("data" => $this->data, "id" => $id));
		 
	}
		 public function admin_update_noti(request $request) {
		 $request->validate(array("title" => "required", "content" => "required"), array("title.required" => "Vui lòng nhập tiêu đề !", "content.required" => "Vui lòng nhập nội dung bài đăng !"));
		 $noti = Noti::where("id", $request->id)->first();
			 if ($noti) {
			 $noti->update(array("title" => $request->title, "content" => $request->content));
			 
		}
		 return redirect()->route("admin_noti")->with("success", "Cập nhật thành công !");
		 
	}
		 public function admin_add_noti(request $request) {
		 $request->validate(array("title" => "required", "content" => "required"), array("title.required" => "Vui lòng nhập tiêu đề !", "content.required" => "Vui lòng nhập nội dung !"));
		 $noti = Noti::create(array("title" => $request->title, "content" => $request->content));
			 if ($noti) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function admin_add_subcategory(request $request) {
		 $request->validate(array("name" => "required", "id_category" => "required|numeric"), array("name.required" => "Vui lòng nhập tên danh mục con !", "id_category.numeric" => "Vui lòng nhập danh mục chính hợp lệ !", "id_category.required" => "Vui lòng nhập id danh mục chính !"));
		 $subcategory = Subcategory::create(array("name" => $request->name, "id_category" => $request->id_category));
			 if ($subcategory) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function admin_add_service(request $request) {
		 $request->validate(array("name" => "required", "id_subcategory" => "required|numeric"), array("name.required" => "Vui lòng nhập tên dịch vụ !", "id_subcategory.numeric" => "Vui lòng nhập danh mục con hợp lệ !", "id_subcategory.required" => "Vui lòng nhập id danh mục con !"));
		 $Service = Services::create(array("name" => $request->name, "id_subcategory" => $request->id_subcategory));
			 if ($Service) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function admin_add_banking(request $request) {
		 $request->validate(array("username" => "required", "password" => "required", "account_number" => "required|numeric", "account_name" => "required", "token" => "required", "type" => "required", "logo" => "required"), array("username.required" => "Vui lòng nhập tên đăng nhập !", "password.required" => "Vui lòng nhập mật khẩu !", "account_number.required" => "Vui lòng nhập số tài khoản !", "account_number.numeric" => "Vui lòng nhập tên tài khoản hợp lệ !", "account_name.required" => "Vui lòng nhập chủ tài khoản !", "token.required" => "Vui lòng nhập mã token !", "type.required" => "Vui lòng nhập loại ngân hàng !", "logo.required" => "Vui lòng nhập link logo ngân hàng !", "logo.url" => "Vui lòng nhập link logo ngân hàng hợp lệ !"));
		 $Banking = Banking::create(array("username" => $request->username, "password" => $request->password, "account_number" => $request->account_number, "account_name" => $request->account_name, "token" => $request->token, "type" => $request->type, "logo" => $request->logo, "status" => 1));
			 if ($Banking) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 function admin_category_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $category = Category::where("id", $request->id)->first();
			 if ($category) {
				 if ($category->status == 1) {
				 $category->update(array("status" => 0));
				 
			}
				 else {
				 $category->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_order_change_status(Request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric", "status" => "required"), array("id.required" => "Vui lòng nhập id cần cập nhật!", "id.numeric" => "Vui lòng nhập id hợp lệ!", "status.required" => "Vui lòng nhập trạng thái!"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $array_status = array("success", "error", "pending", "refund", "refund_custom");
		 $Orders = Orders::where("id", $request->id)->first();
			 if (!$Orders) {
			 return response()->json(array("status" => "error", "message" => "Đơn hàng không tồn tại"));
			 
		}
			 if ($request->status == "refund" && $Orders->status != "refund") {
			 $user = User::where("username", $Orders->username)->first();
				 if ($user) {
				 $user->update(array("balance" => $user->balance + $Orders->total));
				 $Orders->update(array("status" => "cancel"));
				 Activity_log::create(array("content" => "ADMIN Hoàn tiền số tiền " . $Orders->total . " đơn hàng #" . $Orders->id_order . '', "username" => $Orders->username));
				 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
				 
			}
			 
		}
			 elseif ($request->status == "refund_custom" && $Orders->status != "refund_custom" && isset($request->amount)) {
			 $user = User::where("username", $Orders->username)->first();
				 if ($user) {
				 $user->update(array("balance" => $user->balance + $request->amount));
				 $Orders->update(array("status" => "cancel"));
				 Activity_log::create(array("content" => "ADMIN Hoàn tiền số tiền " . $request->amount . " đơn hàng #" . $Orders->id_order . '', "username" => $Orders->username));
				 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
				 
			}
			 
		}
			 elseif ($request->status != "refund" && $request->status != "refund_custom" && in_array($request->status, $array_status)) {
			 $Orders->update(array("status" => $request->status));
			 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
			 
		}
			 else {
			 return response()->json(array("status" => "error", "message" => "Chưa nhập số tiền hoặc đơn không thể hoàn!"));
			 
		}
		 
	}
		 function admin_ticket_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric", "status" => "required"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !", "status.required" => "Vui lòng nhập trạng thái !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $ticket = Ticket::where("id", $request->id)->first();
			 if ($ticket) {
			 $ticket->update(array("status" => $request->status));
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_banking_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $banking = Banking::where("id", $request->id)->first();
			 if ($banking) {
				 if ($banking->status == 1) {
				 $banking->update(array("status" => 0));
				 
			}
				 else {
				 $banking->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_user_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $user = User::where("id", $request->id)->first();
			 if ($user) {
				 if ($user->status == 1) {
				 $user->update(array("status" => 0));
				 
			}
				 else {
				 $user->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_news_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $news = News::where("id", $request->id)->first();
			 if ($news) {
				 if ($news->status == 1) {
				 $news->update(array("status" => 0));
				 
			}
				 else {
				 $news->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_noti_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $noti = Noti::where("id", $request->id)->first();
			 if ($noti) {
				 if ($noti->status == 1) {
				 $noti->update(array("status" => 0));
				 
			}
				 else {
				 $noti->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_server_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $server = Server::where("id", $request->id)->first();
			 if ($server) {
				 if ($server->status == 1) {
				 $server->update(array("status" => 0));
				 
			}
				 else {
				 $server->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_service_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $Services = Services::where("id", $request->id)->first();
			 if ($Services) {
				 if ($Services->status == 1) {
				 $Services->update(array("status" => 0));
				 
			}
				 else {
				 $Services->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_subcategory_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $Subcategory = Subcategory::where("id", $request->id)->first();
			 if ($Subcategory) {
				 if ($Subcategory->status == 1) {
				 $Subcategory->update(array("status" => 0));
				 
			}
				 else {
				 $Subcategory->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_update_website(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $websites = Websites::where("id", $request->id)->first();
			 if ($websites) {
				 if ($websites->status == 1) {
				 $websites->update(array("status" => 0));
				 
			}
				 else {
				 $websites->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 function admin_smm_change_status(request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|numeric"), array("id.required" => "Vui lòng nhập id cần cập nhật !", "id.numeric" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "message" => $validator->errors()->first()));
			 
		}
		 $category = SmmPanel::where("id", $request->id)->first();
			 if ($category) {
				 if ($category->status == 1) {
				 $category->update(array("status" => 0));
				 
			}
				 else {
				 $category->update(array("status" => 1));
				 
			}
			 
		}
		 return response()->json(array("status" => "success", "message" => "Cập nhật trạng thái thành công"));
		 
	}
		 public function settings(Request $request) {
		 $request->validate(array("title" => "required", "description" => "required", "avatar" => "required", "syntax" => "required", "card" => "required", "admin" => "required", "level1" => "required", "level2" => "required", "level3" => "required", "level4" => "required", "level5" => "required"), array("title.required" => "Vui lòng nhập tên tiêu đề !", "description.required" => "Vui lòng nhập mô tả !", "keyword.required" => "Vui lòng nhập từ khóa tìm kiếm !", "logo.required" => "Vui lòng nhập link logo !", "hotline.required" => "Vui lòng nhập số hotline !", "partner_id.required" => "Vui lòng nhập số partner id !", "partner_key.required" => "Vui lòng nhập số partner key !", "card.required" => "Vui lòng nhập số chiết khấu thẻ cào !", "admin.required" => "Vui lòng nhập tên ADMIN !", "facebook.required" => "Vui lòng nhập link facebook !", "support.required" => "Vui lòng nhập link support !", "level1.required" => "Vui lòng nhập số tiền cấp đô !", "level2.required" => "Vui lòng nhập số tiền cấp đô 2 !", "level3.required" => "Vui lòng nhập số tiền cấp đô 3 !", "level4.required" => "Vui lòng nhập số tiền cấp đô 4 !", "level5.required" => "Vui lòng nhập số tiền cấp đô !", "telegram.required" => "Vui lòng nhập api token telegram !", "syntax.required" => "Vui lòng nhập cú pháp nạp tiền !", "footer.required" => "Vui lòng nhập cú mã html footer !", "avatar.required" => "Vui lòng nhập avatar admin footer !"));
		 $settingsKeys = array("title", "description", "keyword", "logo", "hotline", "admin", "facebook", "support", "level1", "level2", "level3", "level4", "level5", "syntax", "promotion", "telegram", "telegram_chat_id", "partner_id", "partner_key", "card", "thongbao_chay", "avatar", "logo_seo", "veri_mail", "gioihan_register", "baotri", "footer", "site_gach_the");
			 foreach ($settingsKeys as $key) {
			 Settings::where("key", $key)->update(array("value" => $request[$key]));
			 
		}
		 return redirect()->back()->with("success", "Cập nhật thành công !");
		 
	}
		 public function admin_update_smmpanel_percent(Request $request) {
		 $request->validate(array("price" => "required", "level1" => "required", "level2" => "required", "level3" => "required", "level4" => "required", "level5" => "required"), array("price.required" => "Vui lòng nhập % giá !", "level1.required" => "Vui lòng nhập % giá level 1 !", "level2.required" => "Vui lòng nhập % giá level !", "level3.required" => "Vui lòng nhập % giá level!", "level4.required" => "Vui lòng nhập % giá level 4!", "level5.required" => "Vui lòng nhập % giá level 5!"));
		 $settingsKeys = array("price", "level1", "level2", "level3", "level4", "level5");
			 foreach ($settingsKeys as $key) {
			 SmmPanel_percent::where("key", $key)->update(array("value" => $request[$key]));
			 
		}
		 return redirect()->back()->with("success", "Cập nhật thành công !");
		 
	}
		 public function admin_add_category(request $request) {
		 $request->validate(array("name" => "required", "icon" => "required|url", "priority" => "required"), array("name.required" => "Vui lòng nhập tên danh mục !", "icon.required" => "Vui lòng nhập link icon !", "icon.url" => "Vui lòng nhập link icon hợp lệ !", "priority.required" => "Vui lòng nhập cấp đô ưu tiên !"));
		 $category = Category::create(array("name" => $request->name, "icon" => $request->icon, "priority" => $request->priority, "status" => 1));
			 if ($category) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function admin_add_smmpanel(Request $request) {
		 $request->validate(array("link" => "required|url|unique:smmpanel", "token" => "required", "name" => "required"), array("link.required" => "Vui lòng nhập Link đối tác !", "link.url" => "Vui lòng nhập Link hợp lệ !", "link.unique" => "Link đối tác đã tồn tại !", "token.required" => "Vui lòng nhập Token !", "name.required" => "Vui lòng nhập tên API !"));
		 $SmmPanel = SmmPanel::create(array("link" => $request->link, "token" => $request->token, "name" => $request->name));
			 if ($SmmPanel) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
		 
	}
		 public function admin_add_token(Request $request) {
		 $request->validate(array("link" => "required|url|unique:smmpanel", "token" => "required", "name" => "required"), array("link.required" => "Vui lòng nhập Link đối tác !", "link.url" => "Vui lòng nhập Link hợp lệ !", "link.unique" => "Link đối tác đã tồn tại !", "token.required" => "Vui lòng nhập Token !", "name.required" => "Vui lòng nhập tên API !"));
		 $token = Token::create(array("type" => isset($request->type) ? $request->type : '', "link" => $request->link, "token" => $request->token, "name" => $request->name, "status" => 1));
			 if ($token) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
		 
	}
		 public function admin_get_services(Request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|integer"), array("id.required" => "Vui lòng nhập id !", "id.integer" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "data" => $validator->errors()), 422);
			 
		}
		 $SmmPanel = SmmPanel::where("id", $request->input("id"))->where("status", "1")->first();
			 if ($SmmPanel) {
			 Smm_Global::init(array("link" => $SmmPanel->link, "token" => $SmmPanel->token));
			 $response = Smm_Global::connect(array("action" => "services"));
			 $data = json_decode($response, true);
				 if (!isset($data["error"])) {
				 $filteredData = array();
					 foreach ($data as $value) {
					 $serverExists = Server::where("server_smm", $value["service"])->where("smmpanel", $request->input("id"))->exists();
						 if (!$serverExists) {
						 $filteredData[] = $value;
						 
					}
					 
				}
				 return response()->json(array("status" => "success", "data" => $filteredData));
				 
			}
				 else {
				 return response()->json(array("status" => "error", "data" => $data["error"]));
				 
			}
			 
		}
			 else {
			 return response()->json(array("status" => "error", "data" => "ID Smm Panel chưa được kích hoạt"));
			 
		}
		 
	}
		 public function admin_get_services_2mxh(Request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|integer"), array("id.required" => "Vui lòng nhập id !", "id.integer" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "data" => $validator->errors()), 422);
			 
		}
		 $token = Token::where("id", $request->input("id"))->where("status", "1")->first();
			 if ($token) {
			 $response = Anhyeuem37::curl_get_json_with_token_not_data("https://api.subvip.top/services/servers", $token->token);
			 $data = json_decode($response, true);
				 if (!isset($data["error"])) {
				 $filteredData = array();
					 foreach ($data["data"] as $data) {
						 foreach ($data["servers"] as $key => $value) {
						 $serverExists = Server::where("server_smm", $value["id"])->where("smmpanel", $request->input("id"))->exists();
							 if (!$serverExists) {
							 $value["service"] = $value["id"];
							 $value["rate"] = $value["price"];
							 $value["category"] = $data["category"];
							 $filteredData[] = $value;
							 
						}
						 
					}
					 
				}
				 return response()->json(array("status" => "success", "data" => $filteredData));
				 
			}
				 else {
				 return response()->json(array("status" => "error", "data" => $data["error"]));
				 
			}
			 
		}
			 else {
			 return response()->json(array("status" => "error", "data" => "ID Token chưa được kích hoạt"));
			 
		}
		 
	}
		 public function admin_get_balance(Request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|integer"), array("id.required" => "Vui lòng nhập id !", "id.integer" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "data" => $validator->errors()), 422);
			 
		}
		 $SmmPanel = SmmPanel::where("id", $request->input("id"))->where("status", "1")->first();
			 if ($SmmPanel) {
			 Smm_Global::init(array("link" => $SmmPanel->link, "token" => $SmmPanel->token));
			 $response = Smm_Global::connect(array("action" => "balance"));
			 $data = json_decode($response, true);
				 if (!is_array($data)) {
				 return response()->json(array("status" => "error", "data" => "Dữ liệu trả về không hợp lệ"), 500);
				 
			}
				 if (!isset($data["error"])) {
					 if (is_array($data) && isset($data["balance"])) {
					 $test = $SmmPanel->update(array("balance" => $data["balance"]));
					 
				}
				 return response()->json(array("status" => "success", "data" => $test));
				 
			}
				 else {
				 return response()->json(array("status" => "error", "data" => $data["error"]));
				 
			}
			 
		}
			 else {
			 return response()->json(array("status" => "error"));
			 
		}
		 
	}
		 public function admin_get_balance_2mxh(Request $request) {
		 $validator = Validator::make($request->all(), array("id" => "required|integer"), array("id.required" => "Vui lòng nhập id !", "id.integer" => "Vui lòng nhập id hợp lệ !"));
			 if ($validator->fails()) {
			 return response()->json(array("status" => "error", "data" => $validator->errors()), 422);
			 
		}
		 $token = Token::where("id", $request->input("id"))->where("status", "1")->first();
			 if ($token) {
			 $response = Anhyeuem37::curl_get_json_with_token_not_data("https://api.subvip.top/profile/me", $token->token);
			 $data = json_decode($response, true);
				 if (!is_array($data)) {
				 return response()->json(array("status" => "error", "data" => "Dữ liệu trả về không hợp lệ"), 500);
				 
			}
				 if (!isset($data["error"])) {
					 if (is_array($data) && isset($data["data"]["balance"])) {
					 $test = $token->update(array("balance" => $data["data"]["balance"]));
					 
				}
				 return response()->json(array("status" => "success", "data" => $test));
				 
			}
				 else {
				 return response()->json(array("status" => "error", "data" => $data["error"]));
				 
			}
			 
		}
			 else {
			 return response()->json(array("status" => "error"));
			 
		}
		 
	}
		 public function admin_add_server(Request $request) {
		 $request->validate(array("detail" => "required", "price" => "required", "level1" => "required", "level2" => "required", "level3" => "required", "level4" => "required", "level5" => "required", "min" => "required", "max" => "required", "id_service" => "required"), array("detail.required" => "Vui lòng nhập id thông tin server !", "price.required" => "Vui lòng nhập giá giá tiền !", "level1.required" => "Vui lòng nhập giá cấp !", "level2.required" => "Vui lòng nhập giá cấp 2 !", "level3.required" => "Vui lòng nhập giá cấp !", "level4.required" => "Vui lòng nhập giá cấp !", "level5.required" => "Vui lòng nhập giá cấp 5 !", "min.required" => "Vui lòng nhập số lượng tối thiểu !", "max.required" => "Vui lòng nhập số lượng tối đa !", "id_service.required" => "Vui lòng nhập ID dịch vụ !"));
		 $server = Server::create(array("id_service" => $request->id_service, "detail" => $request->detail, "price" => $request->price, "smmpanel" => isset($request->smmpanel) ? $request->smmpanel : 0, "price_smm" => isset($request->price_smm) ? $request->price_smm : 0, "server_smm" => isset($request->server_smm) ? $request->server_smm : 0, "level1" => $request->level1, "level2" => $request->level2, "level3" => $request->level3, "level4" => $request->level4, "level5" => $request->level5, "min" => $request->min, "max" => $request->max, "info" => isset($request->info) ? $request->info : 0, "reaction" => isset($request->reaction) ? $request->reaction : 0, "comment" => isset($request->comment) ? $request->comment : 0, "dayvip" => isset($request->dayvip) ? $request->dayvip : 0, "dayvip_cmt" => isset($request->dayvip_cmt) ? $request->dayvip_cmt : 0, "dayvip_live" => isset($request->dayvip_live) ? $request->dayvip_live : 0, "buff_live" => isset($request->buff_live) ? $request->buff_live : 0, "cancel" => isset($request->cancel) ? $request->cancel : 0, "speed" => isset($request->speed) ? $request->speed : 0, "guarantee" => isset($request->guarantee) ? $request->guarantee : 0, "note" => isset($request->note) ? $request->note : '', "note_cancel" => isset($request->note_cancel) ? $request->note_cancel : 0, "token" => isset($request->token) ? $request->token : 0, "server_origin" => isset($request->server_origin) ? $request->server_origin : 0));
			 if (isset($request->server_smm) && !empty($request->server_smm) && strpos($request->server_smm, ",") !== false) {
			 $serverSmmValues = explode(",", $request->server_smm);
				 foreach ($serverSmmValues as $smmValue) {
				 $smmValue = trim($smmValue);
					 if (!Server::where("server_smm", $smmValue)->exists()) {
					 Server::create(array("id_service" => $request->id_service, "detail" => $request->detail, "price" => $request->price, "smmpanel" => isset($request->smmpanel) ? $request->smmpanel : 0, "price_smm" => isset($request->price_smm) ? $request->price_smm : 0, "server_smm" => $smmValue, "level1" => $request->level1, "level2" => $request->level2, "level3" => $request->level3, "level4" => $request->level4, "level5" => $request->level5, "min" => $request->min, "max" => $request->max, "info" => isset($request->info) ? $request->info : 0, "reaction" => isset($request->reaction) ? $request->reaction : 0, "comment" => isset($request->comment) ? $request->comment : 0, "dayvip" => isset($request->dayvip) ? $request->dayvip : 0, "dayvip_cmt" => isset($request->dayvip_cmt) ? $request->dayvip_cmt : 0, "dayvip_live" => isset($request->dayvip_live) ? $request->dayvip_live : 0, "buff_live" => isset($request->buff_live) ? $request->buff_live : 0, "cancel" => isset($request->cancel) ? $request->cancel : 0, "speed" => isset($request->speed) ? $request->speed : 0, "guarantee" => isset($request->guarantee) ? $request->guarantee : 0, "note" => isset($request->note) ? $request->note : '', "note_cancel" => isset($request->note_cancel) ? $request->note_cancel : 0, "token" => isset($request->token) ? $request->token : 0, "server_origin" => isset($request->server_origin) ? $request->server_origin : 0));
					 
				}
				 
			}
			 $server->server_smm = $smmValue;
			 $server->save();
			 
		}
			 if ($server) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function admin_add_servernomal(Request $request) {
		 $request->validate(array("detail" => "required", "price" => "required", "level1" => "required", "level2" => "required", "level3" => "required", "level4" => "required", "level5" => "required", "min" => "required", "max" => "required", "id_service" => "required"), array("detail.required" => "Vui lòng nhập id thông tin server !", "price.required" => "Vui lòng nhập giá giá tiền !", "level1.required" => "Vui lòng nhập giá cấp 1 !", "level2.required" => "Vui lòng nhập giá cấp 2 !", "level3.required" => "Vui lòng nhập giá cấp !", "level4.required" => "Vui lòng nhập giá cấp 4 !", "level5.required" => "Vui lòng nhập giá cấp 5 !", "min.required" => "Vui lòng nhập số lượng tối thiểu !", "max.required" => "Vui lòng nhập số lượng tối đa !", "id_service.required" => "Vui lòng nhập ID dịch vụ !"));
		 $server = Server::create(array("id_service" => $request->id_service, "name" => $request->name, "detail" => $request->detail, "price" => $request->price, "smmpanel" => isset($request->smmpanel) ? $request->smmpanel : 0, "price_smm" => isset($request->price_smm) ? $request->price_smm : 0, "server_smm" => isset($request->server_smm) ? $request->server_smm : 0, "level1" => $request->level1, "level2" => $request->level2, "level3" => $request->level3, "level4" => $request->level4, "level5" => $request->level5, "min" => $request->min, "max" => $request->max, "info" => isset($request->info) ? $request->info : 0, "reaction" => isset($request->reaction) ? $request->reaction : 0, "comment" => isset($request->comment) ? $request->comment : 0, "dayvip" => isset($request->dayvip) ? $request->dayvip : 0, "dayvip_cmt" => isset($request->dayvip_cmt) ? $request->dayvip_cmt : 0, "dayvip_live" => isset($request->dayvip_live) ? $request->dayvip_live : 0, "buff_live" => isset($request->buff_live) ? $request->buff_live : 0, "cancel" => isset($request->cancel) ? $request->cancel : 0, "speed" => isset($request->speed) ? $request->speed : 0, "guarantee" => isset($request->guarantee) ? $request->guarantee : 0, "note" => isset($request->note) ? $request->note : '', "note_cancel" => isset($request->note_cancel) ? $request->note_cancel : 0, "token" => isset($request->token) ? $request->token : 0, "server_origin" => isset($request->server_origin) ? $request->server_origin : 0));
			 if ($server) {
			 return redirect()->back()->with("success", "Thêm mới thành công!");
			 
		}
			 else {
			 return redirect()->back()->withErrors("Thêm mới thất bại!");
			 
		}
		 
	}
		 public function admin_search_order(Request $request) {
		 $request->validate(array("id" => "required|integer"), array("id.required" => "Vui lòng nhập mã đơn hàng !", "id.integer" => "Vui lòng nhập mã đơn hàng hợp lệ !"));
			 $order = Orders::where("id_order", "LIKE", "%{
			$request->id
		}
			%")->orWhere("order_smm", "LIKE", "%{
			$request->id
		}
		%")->get();
			 if ($order->count() > 0) {
			 $this->data["order_search"] = $order;
			 
		}
			 else {
			 return redirect()->back()->withErrors("Không tìm thấy đơn hàng phù hợp !");
			 
		}
		 $this->data["title"] = "Quản lý Đơn hàng";
		 $this->data["order"] = Orders::orderBy("id", "desc")->paginate(10);
		 $this->data["service"] = Services::get();
		 $this->data["server"] = Server::get();
		 $this->data["smmpanel"] = SmmPanel::get();
		 return view("admin.order", array("data" => $this->data));
		 
	}
		 public function admin_search_user(Request $request) {
		 $request->validate(array("keyword" => "required"), array("keyword.required" => "Vui lòng nhập từ khóa tìm kiếm !"));
			 $user = User::where("name", "LIKE", "%{
			$request->keyword
		}
			%")->orWhere("username", "LIKE", "%{
			$request->keyword
		}
			%")->orWhere("email", "LIKE", "%{
			$request->keyword
		}
			%")->orWhere("token", "LIKE", "%{
			$request->keyword
		}
		%")->get();
			 if ($user->count() > 0) {
			 $this->data["user_search"] = $user;
			 
		}
			 else {
			 return redirect()->back()->withErrors("Không tìm thấy khách hàng phù hợp !");
			 
		}
		 $this->data["title"] = "Quản lý Khách hàng";
		 $this->data["user"] = User::orderBy("id", "desc")->paginate(10);
		 return view("admin.user", array("data" => $this->data));
		 
	}
	 
}



© 2023 Quttera Ltd. All rights reserved.