X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/ac0b29fb6d05d6e943419b91fdbc09a59e20c89f..refs/pull/806/head:/routes/web.php diff --git a/routes/web.php b/routes/web.php index 514f82f99..f7b2347a5 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,18 +1,25 @@ 'auth'], function () { + Route::get('/uploads/images/{path}', 'ImageController@showImage') + ->where('path', '.*$'); + Route::group(['prefix' => 'pages'], function() { Route::get('/recently-created', 'PageController@showRecentlyCreated'); Route::get('/recently-updated', 'PageController@showRecentlyUpdated'); }); + Route::get('/create-book', 'BookController@create'); Route::group(['prefix' => 'books'], function () { // Books Route::get('/', 'BookController@index'); - Route::get('/create', 'BookController@create'); Route::post('/', 'BookController@store'); Route::get('/{slug}/edit', 'BookController@edit'); Route::put('/{slug}', 'BookController@update'); @@ -24,10 +31,13 @@ Route::group(['middleware' => 'auth'], function () { Route::get('/{slug}/delete', 'BookController@showDelete'); Route::get('/{bookSlug}/sort', 'BookController@sort'); Route::put('/{bookSlug}/sort', 'BookController@saveSort'); + Route::get('/{bookSlug}/export/html', 'BookController@exportHtml'); + Route::get('/{bookSlug}/export/pdf', 'BookController@exportPdf'); + Route::get('/{bookSlug}/export/plaintext', 'BookController@exportPlainText'); // Pages - Route::get('/{bookSlug}/page/create', 'PageController@create'); - Route::post('/{bookSlug}/page/create/guest', 'PageController@createAsGuest'); + Route::get('/{bookSlug}/create-page', 'PageController@create'); + Route::post('/{bookSlug}/create-guest-page', 'PageController@createAsGuest'); Route::get('/{bookSlug}/draft/{pageId}', 'PageController@editDraft'); Route::post('/{bookSlug}/draft/{pageId}', 'PageController@store'); Route::get('/{bookSlug}/page/{pageSlug}', 'PageController@show'); @@ -37,6 +47,8 @@ Route::group(['middleware' => 'auth'], function () { Route::get('/{bookSlug}/page/{pageSlug}/edit', 'PageController@edit'); Route::get('/{bookSlug}/page/{pageSlug}/move', 'PageController@showMove'); Route::put('/{bookSlug}/page/{pageSlug}/move', 'PageController@move'); + Route::get('/{bookSlug}/page/{pageSlug}/copy', 'PageController@showCopy'); + Route::post('/{bookSlug}/page/{pageSlug}/copy', 'PageController@copy'); Route::get('/{bookSlug}/page/{pageSlug}/delete', 'PageController@showDelete'); Route::get('/{bookSlug}/draft/{pageId}/delete', 'PageController@showDeleteDraft'); Route::get('/{bookSlug}/page/{pageSlug}/permissions', 'PageController@showRestrict'); @@ -53,15 +65,18 @@ Route::group(['middleware' => 'auth'], function () { // Chapters Route::get('/{bookSlug}/chapter/{chapterSlug}/create-page', 'PageController@create'); - Route::post('/{bookSlug}/chapter/{chapterSlug}/page/create/guest', 'PageController@createAsGuest'); - Route::get('/{bookSlug}/chapter/create', 'ChapterController@create'); - Route::post('/{bookSlug}/chapter/create', 'ChapterController@store'); + Route::post('/{bookSlug}/chapter/{chapterSlug}/create-guest-page', 'PageController@createAsGuest'); + Route::get('/{bookSlug}/create-chapter', 'ChapterController@create'); + Route::post('/{bookSlug}/create-chapter', 'ChapterController@store'); Route::get('/{bookSlug}/chapter/{chapterSlug}', 'ChapterController@show'); Route::put('/{bookSlug}/chapter/{chapterSlug}', 'ChapterController@update'); Route::get('/{bookSlug}/chapter/{chapterSlug}/move', 'ChapterController@showMove'); Route::put('/{bookSlug}/chapter/{chapterSlug}/move', 'ChapterController@move'); Route::get('/{bookSlug}/chapter/{chapterSlug}/edit', 'ChapterController@edit'); Route::get('/{bookSlug}/chapter/{chapterSlug}/permissions', 'ChapterController@showRestrict'); + Route::get('/{bookSlug}/chapter/{chapterSlug}/export/pdf', 'ChapterController@exportPdf'); + Route::get('/{bookSlug}/chapter/{chapterSlug}/export/html', 'ChapterController@exportHtml'); + Route::get('/{bookSlug}/chapter/{chapterSlug}/export/plaintext', 'ChapterController@exportPlainText'); Route::put('/{bookSlug}/chapter/{chapterSlug}/permissions', 'ChapterController@restrict'); Route::get('/{bookSlug}/chapter/{chapterSlug}/delete', 'ChapterController@showDelete'); Route::delete('/{bookSlug}/chapter/{chapterSlug}', 'ChapterController@destroy'); @@ -78,21 +93,27 @@ Route::group(['middleware' => 'auth'], function () { Route::get('/user/all/{page}', 'ImageController@getAllForUserType'); // Standard get, update and deletion for all types Route::get('/thumb/{id}/{width}/{height}/{crop}', 'ImageController@getThumbnail'); + Route::get('/base64/{id}', 'ImageController@getBase64Image'); Route::put('/update/{imageId}', 'ImageController@update'); + Route::post('/drawing/upload', 'ImageController@uploadDrawing'); + Route::put('/drawing/upload/{id}', 'ImageController@replaceDrawing'); Route::post('/{type}/upload', 'ImageController@uploadByType'); Route::get('/{type}/all', 'ImageController@getAllByType'); Route::get('/{type}/all/{page}', 'ImageController@getAllByType'); Route::get('/{type}/search/{page}', 'ImageController@searchByType'); Route::get('/gallery/{filter}/{page}', 'ImageController@getGalleryFiltered'); - Route::delete('/{imageId}', 'ImageController@destroy'); + Route::delete('/{id}', 'ImageController@destroy'); }); - // File routes - Route::get('/files/{id}', 'FileController@get'); - Route::post('/files/upload', 'FileController@upload'); - Route::get('/files/get/page/{pageId}', 'FileController@listForPage'); - Route::put('/files/sort/page/{pageId}', 'FileController@sortForPage'); - Route::delete('/files/{id}', 'FileController@delete'); + // Attachments routes + Route::get('/attachments/{id}', 'AttachmentController@get'); + Route::post('/attachments/upload', 'AttachmentController@upload'); + Route::post('/attachments/upload/{id}', 'AttachmentController@uploadUpdate'); + Route::post('/attachments/link', 'AttachmentController@attachLink'); + Route::put('/attachments/{id}', 'AttachmentController@update'); + Route::get('/attachments/get/page/{pageId}', 'AttachmentController@listForPage'); + Route::put('/attachments/sort/page/{pageId}', 'AttachmentController@sortForPage'); + Route::delete('/attachments/{id}', 'AttachmentController@delete'); // AJAX routes Route::put('/ajax/page/{id}/save-draft', 'PageController@saveDraft'); @@ -104,34 +125,38 @@ Route::group(['middleware' => 'auth'], function () { Route::get('/get/{entityType}/{entityId}', 'TagController@getForEntity'); Route::get('/suggest/names', 'TagController@getNameSuggestions'); Route::get('/suggest/values', 'TagController@getValueSuggestions'); - Route::post('/update/{entityType}/{entityId}', 'TagController@updateForEntity'); }); Route::get('/ajax/search/entities', 'SearchController@searchEntitiesAjax'); + // Comments + Route::post('/ajax/page/{pageId}/comment', 'CommentController@savePageComment'); + Route::put('/ajax/comment/{id}', 'CommentController@update'); + Route::delete('/ajax/comment/{id}', 'CommentController@destroy'); + // Links Route::get('/link/{id}', 'PageController@redirectFromLink'); // Search - Route::get('/search/all', 'SearchController@searchAll'); - Route::get('/search/pages', 'SearchController@searchPages'); - Route::get('/search/books', 'SearchController@searchBooks'); - Route::get('/search/chapters', 'SearchController@searchChapters'); + Route::get('/search', 'SearchController@search'); Route::get('/search/book/{bookId}', 'SearchController@searchBook'); + Route::get('/search/chapter/{bookId}', 'SearchController@searchChapter'); // Other Pages Route::get('/', 'HomeController@index'); Route::get('/home', 'HomeController@index'); + Route::get('/custom-head-content', 'HomeController@customHeadContent'); // Settings Route::group(['prefix' => 'settings'], function() { - Route::get('/', 'SettingController@index'); + Route::get('/', 'SettingController@index')->name('settings'); Route::post('/', 'SettingController@update'); // Users Route::get('/users', 'UserController@index'); Route::get('/users/create', 'UserController@create'); Route::get('/users/{id}/delete', 'UserController@delete'); + Route::patch('/users/{id}/switch-book-view', 'UserController@switchBookView'); Route::post('/users/create', 'UserController@store'); Route::get('/users/{id}', 'UserController@edit'); Route::put('/users/{id}', 'UserController@update'); @@ -150,7 +175,7 @@ Route::group(['middleware' => 'auth'], function () { }); // Social auth routes -Route::get('/login/service/{socialDriver}', 'Auth\RegisterController@getSocialLogin'); +Route::get('/login/service/{socialDriver}', 'Auth\LoginController@getSocialLogin'); Route::get('/login/service/{socialDriver}/callback', 'Auth\RegisterController@socialCallback'); Route::get('/login/service/{socialDriver}/detach', 'Auth\RegisterController@detachSocialAccount'); Route::get('/register/service/{socialDriver}', 'Auth\RegisterController@socialRegister');