Пример #1
0
 public function add(Request $request)
 {
     if (!\Session::get('user')->can('服务器信息管理')) {
         abort(401);
     }
     $server = new Server();
     $server->name = $request->input('name');
     $server->provider = $request->input('provider');
     $server->barcode = $request->input('barcode');
     $server->sn = $request->input('sn');
     $server->model = $request->input('model');
     $server->cpu = $request->input('cpu');
     $server->memory = $request->input('memory');
     $server->disk = $request->input('disk');
     $server->os = $request->input('os');
     $server->fqdn = $request->input('fqdn');
     $server->vpn = $request->input('vpn');
     $server->description = $request->input('description');
     $server->inner_ip = $request->input('inner_ip');
     $server->outer_ip = $request->input('outer_ip');
     $server->save();
     $user = \Session::get('user');
     \Log::notice(strtr('服务器添加: 用户(%name[%id]) 添加了服务器 (%server[%server_id])', ['%name' => $user->name, '%id' => $user->id, '%server' => $server->name, '%server_id' => $server->id]));
     return redirect()->to(route('servers'))->with('message_content', '添加成功!')->with('message_type', 'info');
 }
Пример #2
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $name = $request->get('name');
     if (!empty($name)) {
         $server = new Server();
         $data = $request->except('_token');
         $server->name = $data['name'];
         $server->username = $data['username'];
         $server->password = $data['password'];
         $server->driver = $data['driver'];
         $server->host = $data['host'];
         $server->user_db = $data['user_db'];
         $server->game_db = $data['game_db'];
         $path = 'images/servers/';
         $destinationPath = public_path($path);
         if ($request->hasFile('image')) {
             $name = $request->file('image')->getClientOriginalName();
             $request->file('image')->move($destinationPath, $name);
             $server->image = $path . $name;
         }
         $server->save();
         return redirect()->route('admin.server.index')->with('message', 'Thêm mới thành công');
     }
     return redirect()->route('admin.server.index')->with('message', 'Thêm mới không thành công');
 }
Пример #3
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $server = new Server();
     $server->hostname = $request->get('hostname');
     $server->ssh_username = $request->get('ssh_username');
     $server->ssh_password = $request->get('ssh_password');
     $server->save();
     return redirect('servers');
 }
Пример #4
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $server = new Server();
     $server->project_id = $request->input('project_id');
     $server->name = $request->input('name');
     $server->ip = $request->input('ip');
     $server->server_user = $request->input('user');
     $server->path = $request->input('path');
     $server->keep_releases = 5;
     $server->connection_status = "Unknown";
     $checked = null !== $request->input('receives');
     $server->receives_code = $checked;
     $server->save();
     return redirect()->action('ProjectController@show', ['id' => $server->project_id]);
 }
 public function store()
 {
     $validator = \Validator::make(Input::all(), $this->rules);
     if ($validator->fails()) {
         return Redirect::back()->withErrors($validator)->withInput();
     } else {
         $game = Game::findOrFail(Input::get('game_id'));
         $server = new Server();
         $server->name = Input::get('name');
         $server->ip = Input::get('ip');
         $server->port = Input::get('port');
         $server->status = Input::get('status');
         $server->game_id = $game->id;
         $server->save();
         return Redirect::to(route('admin.server.show', $server->id));
     }
 }
Пример #6
0
 public function create(Request $request)
 {
     $server = new Server();
     $server->hostname = $request->input('server.hostname');
     $server->ip = $request->input('server.ip');
     $server->status = 'on';
     $server->affectRandomIpAddress();
     $flavor = Flavor::find($request->input('server.flavor'));
     if (isset($flavor)) {
         $server->flavor()->associate($flavor);
     }
     $image = Image::find($request->input('server.image'));
     if (isset($image)) {
         $server->image()->associate($image);
     }
     $server->save();
     sleep(10);
     return response()->json(['servers' => [$server->serialize()], 'images' => [$server->image->serialize()], 'flavors' => [$server->flavor->serialize()]]);
 }
Пример #7
0
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $validator = \Validator::make($request->all(), ['ip_address' => 'required|ip|max:255', 'join_port' => 'required|numeric|min:0|max:65535', 'query_port' => 'required|numeric|min:0|max:65535']);
     if ($validator->fails()) {
         return \Redirect::back()->with('errors', $validator->errors())->withInput();
     }
     if ($this->is_server_registered($request)) {
         return \Redirect::back()->with('error', "Server already registered")->withInput();
     }
     try {
         $server = new Swat4Server($request->ip_address, $request->query_port);
         $server->query();
     } catch (\Exception $e) {
         return \Redirect::back()->with('error', "Unable to query Server. Are you sure it is live ?")->withInput();
     }
     $server = json_decode($server);
     if ($server->hostname == "...server is reloading or offline") {
         return \Redirect::back()->with('error', "Unable to query Server. Are you sure it is live ?")->withInput();
     }
     /**
      * Get the Country of Server
      */
     $geoip = \App::make('geoip');
     $server_ip = $request->ip_address;
     try {
         if ($server_geoip = $geoip->city($server_ip)) {
             $server_isoCode = $server_geoip->country->isoCode;
             $country = \App\Country::where('countryCode', 'LIKE', $server_isoCode)->first();
             /**
              * Country returned is not in Countrie table
              */
             if ($country == null) {
                 $server_country_id = 0;
             } else {
                 $server_country_id = $country->id;
             }
         }
     } catch (\Exception $e) {
         switch ($e) {
             case $e instanceof \InvalidArgumentException:
                 $server_country_id = 0;
                 break;
             case $e instanceof \GeoIp2\Exception\AddressNotFoundException:
                 $server_country_id = 0;
                 break;
             default:
                 $server_country_id = 0;
                 break;
         }
     }
     $newServer = new Server();
     $newServer->ip_address = $request->ip_address;
     $newServer->join_port = $request->join_port;
     $newServer->query_port = $request->query_port;
     $newServer->description = $request->description == '' ? NULL : $request->description;
     $newServer->hostname = $server->hostname;
     $newServer->country_id = $server_country_id;
     $newServer->submitter_id = \Auth::user()->id;
     $newServer->save();
     return \Redirect::back()->with('message', "Server has been submitted!");
 }
Пример #8
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $server = new Server($request->only(['host', 'path', 'username', 'password']));
     $server->save();
     return redirect()->action('\\' . static::class . '@index')->with('message-success', 'Server ' . $server->id . ' created');
 }