|
@@ -20,11 +20,10 @@ use App\Http\Models\User;
|
|
|
use App\Http\Models\UserSubscribe;
|
|
use App\Http\Models\UserSubscribe;
|
|
|
use App\Http\Models\UserSubscribeLog;
|
|
use App\Http\Models\UserSubscribeLog;
|
|
|
use App\Http\Models\UserTrafficLog;
|
|
use App\Http\Models\UserTrafficLog;
|
|
|
-use function GuzzleHttp\Psr7\_parse_message;
|
|
|
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\Request;
|
|
|
-use Mockery\Exception;
|
|
|
|
|
use Redirect;
|
|
use Redirect;
|
|
|
use Response;
|
|
use Response;
|
|
|
|
|
+use Log;
|
|
|
|
|
|
|
|
class AdminController extends BaseController
|
|
class AdminController extends BaseController
|
|
|
{
|
|
{
|
|
@@ -202,11 +201,12 @@ class AdminController extends BaseController
|
|
|
$last_user = User::orderBy('id', 'desc')->first();
|
|
$last_user = User::orderBy('id', 'desc')->first();
|
|
|
$view['last_port'] = self::$config['is_rand_port'] ? $this->getRandPort() : $last_user->port + 1;
|
|
$view['last_port'] = self::$config['is_rand_port'] ? $this->getRandPort() : $last_user->port + 1;
|
|
|
|
|
|
|
|
- // 加密方式、协议、混淆
|
|
|
|
|
|
|
+ // 加密方式、协议、混淆、等级
|
|
|
$view['method_list'] = $this->methodList();
|
|
$view['method_list'] = $this->methodList();
|
|
|
$view['protocol_list'] = $this->protocolList();
|
|
$view['protocol_list'] = $this->protocolList();
|
|
|
$view['obfs_list'] = $this->obfsList();
|
|
$view['obfs_list'] = $this->obfsList();
|
|
|
- $view['level_list'] = Level::get()->sortBy('level');
|
|
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
|
|
+
|
|
|
return Response::view('admin/addUser', $view);
|
|
return Response::view('admin/addUser', $view);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -291,11 +291,12 @@ class AdminController extends BaseController
|
|
|
|
|
|
|
|
$view['user'] = $user;
|
|
$view['user'] = $user;
|
|
|
|
|
|
|
|
- // 加密方式、协议、混淆
|
|
|
|
|
|
|
+ // 加密方式、协议、混淆、等级
|
|
|
$view['method_list'] = $this->methodList();
|
|
$view['method_list'] = $this->methodList();
|
|
|
$view['protocol_list'] = $this->protocolList();
|
|
$view['protocol_list'] = $this->protocolList();
|
|
|
$view['obfs_list'] = $this->obfsList();
|
|
$view['obfs_list'] = $this->obfsList();
|
|
|
- $view['level_list'] = Level::get()->sortBy('level');
|
|
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
|
|
+
|
|
|
return Response::view('admin/editUser', $view);
|
|
return Response::view('admin/editUser', $view);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -395,6 +396,7 @@ class AdminController extends BaseController
|
|
|
$view['method_list'] = $this->methodList();
|
|
$view['method_list'] = $this->methodList();
|
|
|
$view['protocol_list'] = $this->protocolList();
|
|
$view['protocol_list'] = $this->protocolList();
|
|
|
$view['obfs_list'] = $this->obfsList();
|
|
$view['obfs_list'] = $this->obfsList();
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
$view['group_list'] = SsGroup::get();
|
|
$view['group_list'] = SsGroup::get();
|
|
|
|
|
|
|
|
return Response::view('admin/addNode', $view);
|
|
return Response::view('admin/addNode', $view);
|
|
@@ -466,6 +468,7 @@ class AdminController extends BaseController
|
|
|
$view['method_list'] = $this->methodList();
|
|
$view['method_list'] = $this->methodList();
|
|
|
$view['protocol_list'] = $this->protocolList();
|
|
$view['protocol_list'] = $this->protocolList();
|
|
|
$view['obfs_list'] = $this->obfsList();
|
|
$view['obfs_list'] = $this->obfsList();
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
$view['group_list'] = SsGroup::get();
|
|
$view['group_list'] = SsGroup::get();
|
|
|
|
|
|
|
|
return Response::view('admin/editNode', $view);
|
|
return Response::view('admin/editNode', $view);
|
|
@@ -565,13 +568,14 @@ class AdminController extends BaseController
|
|
|
public function groupList(Request $request)
|
|
public function groupList(Request $request)
|
|
|
{
|
|
{
|
|
|
$view['groupList'] = SsGroup::paginate(10)->appends($request->except('page'));
|
|
$view['groupList'] = SsGroup::paginate(10)->appends($request->except('page'));
|
|
|
- $level_list = Level::get()->sortBy('level');
|
|
|
|
|
|
|
+ $level_list = $this->levelList();
|
|
|
|
|
|
|
|
- $level_dict=array();
|
|
|
|
|
- foreach ($level_list as $ele){
|
|
|
|
|
- $level_dict[$ele['level']]=$ele['level_name'];
|
|
|
|
|
|
|
+ $level_dict = array();
|
|
|
|
|
+ foreach ($level_list as $level) {
|
|
|
|
|
+ $level_dict[$level['level']] = $level['level_name'];
|
|
|
}
|
|
}
|
|
|
$view['level_dict'] = $level_dict;
|
|
$view['level_dict'] = $level_dict;
|
|
|
|
|
+
|
|
|
return Response::view('admin/groupList', $view);
|
|
return Response::view('admin/groupList', $view);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -589,8 +593,9 @@ class AdminController extends BaseController
|
|
|
|
|
|
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '添加成功']);
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '添加成功']);
|
|
|
} else {
|
|
} else {
|
|
|
- $view['level_list'] = Level::get()->sortBy('level');
|
|
|
|
|
- return Response::view('admin/addGroup',$view);
|
|
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
|
|
+
|
|
|
|
|
+ return Response::view('admin/addGroup', $view);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -615,7 +620,8 @@ class AdminController extends BaseController
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
$view['group'] = SsGroup::where('id', $id)->first();
|
|
$view['group'] = SsGroup::where('id', $id)->first();
|
|
|
- $view['level_list'] = Level::get()->sortBy('level');
|
|
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
|
|
+
|
|
|
return Response::view('admin/editGroup', $view);
|
|
return Response::view('admin/editGroup', $view);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -1041,7 +1047,7 @@ TXT;
|
|
|
exit($this->makeRandStr());
|
|
exit($this->makeRandStr());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 加密方式、混淆、协议、用户等级列表
|
|
|
|
|
|
|
+ // 加密方式、混淆、协议、等级
|
|
|
public function config(Request $request)
|
|
public function config(Request $request)
|
|
|
{
|
|
{
|
|
|
if ($request->method() == 'POST') {
|
|
if ($request->method() == 'POST') {
|
|
@@ -1072,7 +1078,7 @@ TXT;
|
|
|
$view['method_list'] = SsConfig::where('type', 1)->get();
|
|
$view['method_list'] = SsConfig::where('type', 1)->get();
|
|
|
$view['protocol_list'] = SsConfig::where('type', 2)->get();
|
|
$view['protocol_list'] = SsConfig::where('type', 2)->get();
|
|
|
$view['obfs_list'] = SsConfig::where('type', 3)->get();
|
|
$view['obfs_list'] = SsConfig::where('type', 3)->get();
|
|
|
- $view['level_list'] = Level::get()->sortBy('level');
|
|
|
|
|
|
|
+ $view['level_list'] = $this->levelList();
|
|
|
|
|
|
|
|
return Response::view('admin/config', $view);
|
|
return Response::view('admin/config', $view);
|
|
|
}
|
|
}
|
|
@@ -1145,8 +1151,9 @@ TXT;
|
|
|
return Response::view('admin/analysis', $view);
|
|
return Response::view('admin/analysis', $view);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- //用户等级设置
|
|
|
|
|
- public function updateLevel(Request $request){
|
|
|
|
|
|
|
+ // 等级设置
|
|
|
|
|
+ public function updateLevel(Request $request)
|
|
|
|
|
+ {
|
|
|
$id = $request->get('id');
|
|
$id = $request->get('id');
|
|
|
$level = $request->get('level');
|
|
$level = $request->get('level');
|
|
|
$level_name = $request->get('level_name');
|
|
$level_name = $request->get('level_name');
|
|
@@ -1154,64 +1161,77 @@ TXT;
|
|
|
if (empty($id)) {
|
|
if (empty($id)) {
|
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => 'ID不能为空']);
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => 'ID不能为空']);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
if (empty($level)) {
|
|
if (empty($level)) {
|
|
|
- return Response::json(['status' => 'fail', 'data' => '', 'message' => 'level不能为空']);
|
|
|
|
|
|
|
+ return Response::json(['status' => 'fail', 'data' => '', 'message' => '等级不能为空']);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
if (empty($level_name)) {
|
|
if (empty($level_name)) {
|
|
|
- return Response::json(['status' => 'fail', 'data' => '', 'message' => 'levelname不能为空']);
|
|
|
|
|
|
|
+ return Response::json(['status' => 'fail', 'data' => '', 'message' => '等级名称不能为空']);
|
|
|
}
|
|
}
|
|
|
- try{
|
|
|
|
|
- Level::where('id',$id)->update(["level"=>$level,"level_name"=>$level_name]);
|
|
|
|
|
|
|
+
|
|
|
|
|
+ try {
|
|
|
|
|
+ Level::where('id', $id)->update(["level" => $level, "level_name" => $level_name]);
|
|
|
|
|
+
|
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '操作成功']);
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '操作成功']);
|
|
|
- }catch (\Exception $e){
|
|
|
|
|
|
|
+ } catch (\Exception $e) {
|
|
|
|
|
+ Log::error($e->getMessage());
|
|
|
|
|
+
|
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => '操作失败']);
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => '操作失败']);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
- public function delLevel(Request $request){
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 删除等级
|
|
|
|
|
+ public function delLevel(Request $request)
|
|
|
|
|
+ {
|
|
|
$id = $request->get('id');
|
|
$id = $request->get('id');
|
|
|
|
|
+
|
|
|
if (empty($id)) {
|
|
if (empty($id)) {
|
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => 'ID不能为空']);
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => 'ID不能为空']);
|
|
|
}
|
|
}
|
|
|
- try{
|
|
|
|
|
- Level::where('id',$id)->delete();
|
|
|
|
|
|
|
+
|
|
|
|
|
+ try {
|
|
|
|
|
+ Level::where('id', $id)->delete();
|
|
|
|
|
+
|
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '操作成功']);
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '操作成功']);
|
|
|
- }catch (\Exception $e){
|
|
|
|
|
|
|
+ } catch (\Exception $e) {
|
|
|
|
|
+ Log::error($e->getMessage());
|
|
|
|
|
+
|
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => '操作失败']);
|
|
return Response::json(['status' => 'fail', 'data' => '', 'message' => '操作失败']);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
- public function addLevel(Request $request){
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 添加等级
|
|
|
|
|
+ public function addLevel(Request $request)
|
|
|
|
|
+ {
|
|
|
$level = $request->get('level');
|
|
$level = $request->get('level');
|
|
|
$level_name = $request->get('level_name');
|
|
$level_name = $request->get('level_name');
|
|
|
|
|
+
|
|
|
if (empty($level)) {
|
|
if (empty($level)) {
|
|
|
- return Response::json(['status' => 'fail', 'data' => '', 'message' => 'level不能为空']);
|
|
|
|
|
|
|
+ return Response::json(['status' => 'fail', 'data' => '', 'message' => '等级不能为空']);
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
if (empty($level_name)) {
|
|
if (empty($level_name)) {
|
|
|
- return Response::json(['status' => 'fail', 'data' => '', 'message' => 'levelname不能为空']);
|
|
|
|
|
|
|
+ return Response::json(['status' => 'fail', 'data' => '', 'message' => '等级名称不能为空']);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- try{
|
|
|
|
|
-
|
|
|
|
|
- $level_re = Level::where('level',$level)->first();
|
|
|
|
|
-
|
|
|
|
|
- if($level_re){
|
|
|
|
|
- return Response::json(['status' => 'fail', 'data' => '', 'message' => '等级已经存在,请勿重复添加']);
|
|
|
|
|
|
|
+ try {
|
|
|
|
|
+ $exists = Level::where('level', $level)->first();
|
|
|
|
|
+ if ($exists) {
|
|
|
|
|
+ return Response::json(['status' => 'fail', 'data' => '', 'message' => '该等级已存在,请勿重复添加']);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
Level::create([
|
|
Level::create([
|
|
|
- 'level'=>$level,
|
|
|
|
|
- 'level_name'=>$level_name,
|
|
|
|
|
- 'created_at'=>date('Y-m-d H:i:s'),
|
|
|
|
|
- 'updated_at'=>date('Y-m-d H:i:s')
|
|
|
|
|
|
|
+ 'level' => $level,
|
|
|
|
|
+ 'level_name' => $level_name
|
|
|
]);
|
|
]);
|
|
|
|
|
+
|
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '提交成功']);
|
|
return Response::json(['status' => 'success', 'data' => '', 'message' => '提交成功']);
|
|
|
- }catch (\Exception $e){
|
|
|
|
|
- throw $e;
|
|
|
|
|
- return Response::json(['status' => 'fail', 'data' => '', 'message' => '操作失败']);
|
|
|
|
|
|
|
+ } catch (\Exception $e) {
|
|
|
|
|
+ Log::error($e->getMessage());
|
|
|
|
|
|
|
|
|
|
+ return Response::json(['status' => 'fail', 'data' => '', 'message' => '操作失败']);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 系统设置
|
|
// 系统设置
|