diff --git a/app/Http/Controllers/WriterController.php b/app/Http/Controllers/WriterController.php index 660188f..0c55f09 100644 --- a/app/Http/Controllers/WriterController.php +++ b/app/Http/Controllers/WriterController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Models\Article; use Illuminate\Http\Request; use Illuminate\Contracts\View\View; use Illuminate\Support\Facades\Auth; @@ -47,4 +48,29 @@ class WriterController extends Controller { return view('writer.new-article'); } + + public function livePreview(Request $request): View + { + // Upload the file + $header_image_path = $request->headerImage->storeAs('header-image-previews'); + $article_empty = new Article(); + $article_empty->markdown_body = $request->markdownBody; + $article_empty->generateMarkupFromMarkdown(); + + $article = [ + 'title' => $request->title ?? null, + 'header_image_url' => $header_image_path ?? null, + 'subtitle' => $request->subtitle ?? null, + 'author' => [ + 'display_name' => auth()->user()->author->displayName, + ], + 'published_at' => $request->publicationDate ?? null, + 'primary_link' => $request->primary_link ?? null, + 'secondary_link' => $request->secondary_link ?? null, + 'mastodon_handle' => $request->mastodon_handle ?? null, + 'body' => $article_empty->body, + ]; + + return view('guest.article', ['article' => $article]); + } } diff --git a/resources/views/writer/new-article.blade.php b/resources/views/writer/new-article.blade.php index cc48233..b1e2282 100644 --- a/resources/views/writer/new-article.blade.php +++ b/resources/views/writer/new-article.blade.php @@ -3,7 +3,69 @@ @section('title', 'Write New Article') @section('content') -
Nothing to see yet!
+ @endif +