/** * Display existing assets. * * @return Response */ public function getAssets(Board $board) { if (!$board->canEditConfig($this->user)) { return abort(403); } return $this->view(static::VIEW_CONFIG, ['board' => $board, 'banned' => $board->getBannedImages(), 'banners' => $board->getBanners(), 'tab' => "assets"]); }
/** * Display existing assets. * * @return Response */ public function putAssets(Request $request, Board $board) { if (!$board->canEditConfig($this->user)) { return abort(403); } $input = Input::all(); $validator = Validator::make($input, ['asset_type' => ["required", "in:board_banner,file_deleted,file_none,file_spoiler"], 'new_board_banner' => ["required_if:asset_type,board_banner", "image", "image_size:<=300,<=100"]]); if (!$validator->passes()) { return redirect()->back()->withErrors($validator->errors()); } // Fetch the asset. $upload = Input::file("new_{$input['asset_type']}"); if (file_exists($upload->getPathname())) { $storage = FileStorage::storeUpload($upload); $asset = new BoardAsset(); $asset->asset_type = "board_banner"; $asset->board_uri = $board->board_uri; $asset->file_id = $storage->file_id; $asset->save(); } return $this->view(static::VIEW_CONFIG, ['board' => $board, 'banners' => $board->getBanners(), 'tab' => "assets"]); }