diff --git a/app/Http/Controllers/MicropubClientController.php b/app/Http/Controllers/MicropubClientController.php index 92848aa5..665cd45f 100644 --- a/app/Http/Controllers/MicropubClientController.php +++ b/app/Http/Controllers/MicropubClientController.php @@ -36,15 +36,12 @@ class MicropubClientController extends Controller * @param \Illuminate\Http\Request $request * @return \Illuminate\View\Factory view */ - public function newNotePage(Request $request) + public function create(Request $request) { $url = $request->session()->get('me'); $syndication = $request->session()->get('syndication'); - return view('micropubnewnotepage', [ - 'url' => $url, - 'syndication' => $syndication, - ]); + return view('micropub.create', compact('url', 'syndication')); } /** @@ -55,7 +52,7 @@ class MicropubClientController extends Controller * @param \Illuminate\Http\Request $request * @return mixed */ - public function postNewNote(Request $request) + public function store(Request $request) { $domain = $request->session()->get('me'); $token = $request->session()->get('token'); @@ -65,7 +62,7 @@ class MicropubClientController extends Controller $this->indieClient ); if (! $micropubEndpoint) { - return redirect('notes/new')->withErrors('Unable to determine micropub API endpoint', 'endpoint'); + return redirect(route('micropub-client'))->withErrors('Unable to determine micropub API endpoint', 'endpoint'); } $response = $this->postNoteRequest($request, $micropubEndpoint, $token); @@ -79,7 +76,7 @@ class MicropubClientController extends Controller return redirect($location); } - return redirect('notes/new')->withErrors('Endpoint didn’t create the note.', 'endpoint'); + return redirect(route('micropub-client'))->withErrors('Endpoint didn’t create the note.', 'endpoint'); } /** @@ -99,9 +96,8 @@ class MicropubClientController extends Controller $domain = $request->session()->get('me'); $token = $request->session()->get('token'); $micropubEndpoint = $this->indieAuthService->discoverMicropubEndpoint($domain, $this->indieClient); - if (! $micropubEndpoint) { - return redirect('notes/new')->withErrors('Unable to determine micropub API endpoint', 'endpoint'); + return redirect(route('micropub-client'))->withErrors('Unable to determine micropub API endpoint', 'endpoint'); } try { @@ -110,14 +106,14 @@ class MicropubClientController extends Controller 'query' => ['q' => 'syndicate-to'], ]); } catch (\GuzzleHttp\Exception\BadResponseException $e) { - return redirect('notes/new')->withErrors('Bad response when refreshing syndication targets', 'endpoint'); + return redirect(route('micropub-client'))->withErrors('Bad response when refreshing syndication targets', 'endpoint'); } $body = (string) $response->getBody(); $syndication = $this->parseSyndicationTargets($body); $request->session()->put('syndication', $syndication); - return redirect('notes/new'); + return redirect(route('micropub-client')); } /** @@ -184,7 +180,7 @@ class MicropubClientController extends Controller 'headers' => $headers, ]); } catch (\GuzzleHttp\Exception\BadResponseException $e) { - return redirect('notes/new') + return redirect(route('micropub-client')) ->withErrors('There was a bad response from the micropub endpoint.', 'endpoint'); } diff --git a/resources/views/micropubnewnotepage.blade.php b/resources/views/micropub/create.blade.php similarity index 91% rename from resources/views/micropubnewnotepage.blade.php rename to resources/views/micropub/create.blade.php index 48837ff8..bc44d769 100644 --- a/resources/views/micropubnewnotepage.blade.php +++ b/resources/views/micropub/create.blade.php @@ -26,7 +26,7 @@ New Note « @endif @include('templates.new-note-form', [ 'micropub' => true, - 'action' => '/notes/new' + 'action' => route('micropub-client-post') ]) @stop @@ -35,8 +35,6 @@ New Note « window.Promise || document.write(' - diff --git a/routes/web.php b/routes/web.php index 5f732f3e..174375c3 100644 --- a/routes/web.php +++ b/routes/web.php @@ -12,7 +12,7 @@ */ Route::group(['domain' => config('url.longurl')], function () { - Route::get('/', 'NotesController@showNotes'); + Route::get('/', 'NotesController@index'); //Static project page Route::get('projects', function () { @@ -89,8 +89,7 @@ Route::group(['domain' => config('url.longurl')], function () { //micropub new notes page //this needs to be first so `notes/new` doesn't match `notes/{id}` - Route::get('notes/new', 'MicropubClientController@newNotePage'); - Route::post('notes/new', 'MicropubClientController@postNewNote'); + //Notes pages using NotesController Route::get('notes', 'NotesController@index'); @@ -104,10 +103,11 @@ Route::group(['domain' => config('url.longurl')], function () { Route::post('api/token', 'IndieAuthController@tokenEndpoint'); Route::get('logout', 'IndieAuthController@indieauthLogout'); - //micropub endoints - Route::post('api/post', 'MicropubController@post'); + // Micropub + Route::get('micropub/create', 'MicropubClientController@create')->name('micropub-client'); + Route::post('micropub', 'MicropubClientController@store')->name('micropub-client-post'); Route::get('api/post', 'MicropubController@getEndpoint'); - + Route::post('api/post', 'MicropubController@post'); //micropub refresh syndication targets Route::get('refresh-syndication-targets', 'MicropubClientController@refreshSyndicationTargets');