/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { if (!Auth::check()) { return view('auth/login'); } // $title = $request->input('title'); $description = $request->input('description'); $ip = $request->input('ip'); $port = $request->input('port'); $this->validate($request, ['title' => 'required|min:3', 'description' => 'required|min:10|max:1500', 'ip' => 'required|ip', 'port' => 'required', 'banner' => 'image|mimes:jpeg,bmp,png,gif,JPEG|MAX:2000']); $file = $request->file('banner'); if ($file) { $type = $file->getClientOriginalExtension(); // $file = $request->file('banner'); $bannerName = str_random(40) . '.' . $type; $file->move(base_path() . '/public/images/banners/', $bannerName); } else { $bannerName = "blankBaner.png"; } //New server object $server = new ServerModel(); //Get country and set flag shortcut to display it $details = json_decode(file_get_contents('http://ipinfo.io/' . $ip)); if (isset($details->country)) { $flag = strtolower($details->country); } else { $flag = "empty"; } $server->title = $title; $server->description = $description; $server->ip = $ip; $server->port = $port; $server->user_id = Auth::id(); $server->banner = $bannerName; $server->country = $flag; $server->save(); return redirect('/'); }
/** * Display a listing of the resource. * * @return Response */ public function index() { $data = array('serversCount' => ServerModel::all()->count(), 'usersCount' => User::all()->count()); return view('admin/index', $data); }