App\Http\Controllers\BlogController::upload PHP Method

upload() public method

Upload File with Markdown Form.
public upload ( Illuminate\Http\Request $request ) : Illuminate\Contracts\View\Factory | Illuminate\View\View
$request Illuminate\Http\Request
return Illuminate\Contracts\View\Factory | Illuminate\View\View
    public function upload(Request $request)
    {
        $file = $request->file('upload-file');
        $filename = $file->getClientOriginalName();
        $filepath = storage_path('app/posts') . '/' . $filename;
        $file->move(storage_path('app/posts'), $filename);
        $parsed = parseArticle($filepath);
        $post = $this->blog->getByColumn($parsed['slug'], 'slug');
        if (is_null($post)) {
            $post = new Post($parsed);
            $post->published = isset($parsed['publish']);
            return view('back.blog.create', compact('post'));
        } else {
            foreach ($parsed as $key => $value) {
                $post->{$key} = $value;
            }
            $post->published = isset($parsed['publish']);
            return view('back.blog.edit', compact('post'));
        }
    }