<?php

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Auth::routes();

// Login / Logout
Route::get('/logout', 'Auth\LoginController@logout')->name('logout' );

Route::name('dashboard')->get('/', 'DashboardController@index');

// Art Objects
Route::name('auction-objects')->get('/redaktion-crawler', 'AuctionObjects\AuctionObjectsOverviewController@index');
Route::name('auction-objects')->post('/redaktion-crawler', 'AuctionObjects\AuctionObjectsOverviewController@store');
Route::name('ajax-auction-objects-bulk-edit-status')->post('/ajax/auction-object-bulk-edit-status', 'Ajax\AuctionObjectsOverviewController@bulkEditStatus');
Route::name('edit-auction-object')->get('/objekt-bearbeiten/{id}', 'AuctionObjects\AuctionObjectController@edit');
Route::name('edit-auction-object')->post('/objekt-bearbeiten/{id}', 'AuctionObjects\AuctionObjectController@update');

// Hist. Art Objects
Route::name('auction-objects-history')->get('/objekt-historie', 'AuctionObjects\AuctionObjectsHistoryOverviewController@index');

// Error Art Objects
Route::name('auction-objects-error')->get('/objekt-fehler', 'AuctionObjects\AuctionObjectsErrorOverviewController@index');

// Stage Art Objects
Route::name('auction-objects-stage')->get('/vorselektion', 'AuctionObjectsStage\AuctionObjectsStageOverviewController@index');
Route::name('ajax-auction-objects-stage-bulk-edit-status')->post('/ajax/auction-object-stage-bulk-edit-status', 'Ajax\AuctionObjectsStageOverviewController@bulkEditStatus');
Route::name('post-ajax-auction-object-stage-assignment-status')->post('/ajax/post-ajax-auction-object-stage-assignment-status', 'Ajax\AuctionObjectStageAssignmentController@assignStatus');
Route::name('auction-objects-stage-service')->post('/kunstobjekte-stage-service', 'AuctionObjectsStage\AuctionObjectsStageOverviewController@startTransferProcess');

// Import / Upload
Route::name('auction-objects-import')->get('/import', 'AuctionObjectsImport\AuctionObjectsImportOverviewController@index');
Route::name('auction-objects-stage-upload')->post('/kunstobjekte-stage-upload', 'AuctionObjectsImport\StageImportFileController@upload');
Route::name('ajax-auction-objects-import-bulk-edit-status')->post('/ajax/auction-object-import-bulk-edit-status', 'Ajax\AuctionObjectsImportOverviewController@bulkEditStatus');
Route::name('post-ajax-auction-object-import-assignment-status')->post('/ajax/post-ajax-auction-object-import-assignment-status', 'Ajax\AuctionObjectImportAssignmentController@assignStatus');

Route::name('auction-objects-imported')->get('/importiert', 'AuctionObjectsImported\AuctionObjectsImportedOverviewController@index');

// Artists
Route::name('artists')->get('/kuenstler', 'Artists\ArtistsOverviewController@index');
Route::name('artists')->post('/kuenstler', 'Artists\ArtistsOverviewController@store');
Route::name('create-artist')->get('/kuenstler-anlegen', 'Artists\ArtistController@create');
Route::name('create-artist')->post('/kuenstler-anlegen', 'Artists\ArtistController@store');
Route::name('ajax-artist-bulk-edit-status')->post('/ajax/artist-bulk-edit-status', 'Ajax\ArtistsOverviewController@bulkEditStatus');
Route::name('edit-artist')->get('/kuenstler-bearbeiten/{id}', 'Artists\ArtistController@edit');
Route::name('edit-artist')->post('/kuenstler-bearbeiten/{id}', 'Artists\ArtistController@update');
Route::name('delete-artist')->post('/kuenstler-loeschen', 'Artists\ArtistController@destroy');

// Source Types
Route::name('source-types')->get('/auktionshaeuser', 'SourceTypes\SourceTypesOverviewController@index');
Route::name('source-types')->post('/auktionshaeuser', 'SourceTypes\SourceTypesOverviewController@store');
Route::name('create-source-type')->get('/auktionshaus-anlegen', 'SourceTypes\SourceTypeController@create');
Route::name('create-source-type')->post('/auktionshaus-anlegen', 'SourceTypes\SourceTypeController@store');
Route::name('edit-source-type')->get('/auktionshaus-bearbeiten/{id}', 'SourceTypes\SourceTypeController@edit');
Route::name('edit-source-type')->post('/auktionshaus-bearbeiten/{id}', 'SourceTypes\SourceTypeController@update');
Route::name('delete-source-type')->post('/auktionshaus-loeschen', 'SourceTypes\SourceTypeController@destroy');

// Medium Category
//Route::name('mediums')->get('/grobtechniken', 'Medium\MediumController@index');
Route::name('medium-categories')->get('/grobtechniken', 'Medium\MediumCategoryOverviewController@index');
Route::name('medium-categories')->post('/grobtechniken', 'Medium\MediumCategoryOverviewController@store');
Route::name('create-medium-category')->get('/grobtechnik-anlegen', 'Medium\MediumCategoryController@create');
Route::name('create-medium-category')->post('/grobtechnik-anlegen', 'Medium\MediumCategoryController@store');
Route::name('edit-medium-category')->get('/grobtechnik-bearbeiten/{id}', 'Medium\MediumCategoryController@edit');
Route::name('edit-medium-category')->post('/grobtechnik-bearbeiten/{id}', 'Medium\MediumCategoryController@update');
Route::name('delete-medium-category')->post('/grobtechnik-loeschen', 'Medium\MediumCategoryController@destroy');

// Medium
Route::name('mediums')->get('/suchwoerter', 'Medium\MediumOverviewController@index');
Route::name('mediums')->post('/suchwoerter', 'Medium\MediumOverviewController@store');
Route::name('create-medium')->get('/suchwort-anlegen', 'Medium\MediumController@create');
Route::name('create-medium')->post('/suchwort-anlegen', 'Medium\MediumController@store');
Route::name('edit-medium')->get('/suchwort-bearbeiten/{id}', 'Medium\MediumController@edit');
Route::name('edit-medium')->post('/suchwort-bearbeiten/{id}', 'Medium\MediumController@update');
Route::name('delete-medium')->post('/suchwort-loeschen', 'Medium\MediumController@destroy');

Route::name('ajax-add-keyword-relation')->post('/post-ajax-add-keyword-relation', 'Ajax\AjaxCountdownController@addKeyword');
Route::name('ajax-add-keyword-relation')->get('/post-ajax-add-keyword-relation', 'Ajax\AjaxCountdownController@addKeyword');

// Users
Route::name('users')->get('/benutzer', 'Users\UsersOverviewController@index');
Route::name('create-user')->get('/benutzer-anlegen', 'Users\UserController@index');
Route::name('create-user')->post('/benutzer-anlegen', 'Users\UserController@store');
Route::name('edit-user')->get('/benutzer-bearbeiten/{id}', 'Users\UserController@edit');
Route::name('edit-user')->post('/benutzer-bearbeiten/{id}', 'Users\UserController@update');
Route::name('delete-user')->post('/benutzer-loeschen', 'Users\UserController@destroy');

// Gender Lookup
//Route::name('gender-lookup')->get('/vornamen', 'GenderLookup\GenderLookupOverviewController@index');
Route::name('gender-lookup')->get('/vornamen', 'GenderLookup\GenderLookupOverviewController@index');
Route::name('gender-lookup')->post('/vornamen', 'GenderLookup\GenderLookupOverviewController@store');
Route::name('create-gender-lookup')->get('/vorname-anlegen', 'GenderLookup\GenderLookupController@create');
Route::name('create-gender-lookup')->post('/vorname-anlegen', 'GenderLookup\GenderLookupController@store');
Route::name('edit-gender-lookup')->get('/vorname-bearbeiten/{id}', 'GenderLookup\GenderLookupController@edit');
Route::name('edit-gender-lookup')->post('/vorname-bearbeiten/{id}', 'GenderLookup\GenderLookupController@update');
Route::name('delete-gender-lookup')->post('/vorname-loeschen', 'GenderLookup\GenderLookupController@destroy');

// Artist Simulator
Route::name('artist-simulator')->get('/kuenstler-simulator', 'Simulator\ArtistSimulatorOverviewController@index');
Route::name('artist-simulator-simulate')->post('/kuenstler-simulator', 'Simulator\ArtistSimulatorOverviewController@simulate');

// Ajax
Route::name('ajax-assign-mediums-overview')->get('/ajax/ajax-assign-medium-category-overview', 'Ajax\MediumCategoryOverviewController@getData');
Route::name('ajax-assign-artists-overview')->get('/ajax/ajax-assign-artist-overview', 'Ajax\AssignArtistsOverviewController@getData');
Route::name('ajax-assign-artists-overview')->post('/ajax/ajax-assign-artist-overview', 'Ajax\AssignArtistsOverviewController@getData');
Route::name('ajax-assign-source-type-overview')->get('/ajax/ajax-assign-source-type-overview', 'Ajax\SourceTypeOverviewController@getData');

Route::name('post-ajax-auction-object-assignment')->post('/ajax/post-ajax-auction-object-assignment', 'Ajax\AuctionObjectAssignmentController@assignMediumCategory');
Route::name('post-ajax-auction-object-assignment-artist')->post('/ajax/post-ajax-auction-object-assignment-artist', 'Ajax\AuctionObjectAssignmentController@assignArtist');
Route::name('post-ajax-delete-auction-object-artist-assignment')->post('/ajax/post-ajax-delete-auction-object-artist-assignment', 'Ajax\AuctionObjectAssignmentController@deleteArtistAssignment');
Route::name('post-ajax-auction-object-assignment-status')->post('/ajax/post-ajax-auction-object-assignment-status', 'Ajax\AuctionObjectAssignmentController@assignStatus');
Route::name('post-ajax-artist-assignment-status')->post('/ajax/post-ajax-artist-assignment-status', 'Ajax\ArtistAssignmentController@assignStatus');
Route::name('post-ajax-artist-assignment-gender')->post('/ajax/post-ajax-artist-assignment-gender', 'Ajax\ArtistAssignmentController@assignGender');
Route::name('post-ajax-artist-rematching')->post('/ajax/post-ajax-artist-rematching', 'Ajax\ArtistRematchingController@startRematching');


Route::name('post-ajax-gender-lookup-assignment-gender')->post('/ajax/post-ajax-gender-lookup-assignment-gender', 'Ajax\GenderLookupAssignmentController@assignGender');

Route::name('post-ajax-auction-object-imported-assignment-medium')->post('/ajax/post-ajax-auction-object-imported-assignment-medium', 'Ajax\AuctionObjectImportedAssignmentController@assignMediumCategory');
Route::name('post-ajax-auction-object-imported-assignment-artist')->post('/ajax/post-ajax-auction-object-imported-assignment-artist', 'Ajax\AuctionObjectImportedAssignmentController@assignArtist');
Route::name('post-ajax-delete-auction-object-imported-artist-assignment')->post('/ajax/post-ajax-delete-auction-object-imported-artist-assignment', 'Ajax\AuctionObjectImportedAssignmentController@deleteArtistAssignment');

Route::name('ajax-auction-objects-overview')->post('/ajax/ajax-auction-objects-overview', 'Ajax\AuctionObjectsOverviewController@getData');
Route::name('ajax-auction-objects-history-overview')->post('/ajax/ajax-auction-objects-history-overview', 'Ajax\AuctionObjectsHistoryOverviewController@getData');
Route::name('ajax-auction-objects-error-overview')->post('/ajax/ajax-auction-objects-error-overview', 'Ajax\AuctionObjectsErrorOverviewController@getData');
Route::name('ajax-auction-objects-stage-overview')->post('/ajax/ajax-auction-objects-stage-overview', 'Ajax\AuctionObjectsStageOverviewController@getData');
Route::name('ajax-auction-objects-import-overview')->post('/ajax/ajax-auction-objects-import-overview', 'Ajax\AuctionObjectsImportOverviewController@getData');
Route::name('ajax-auction-objects-imported-overview')->post('/ajax/ajax-auction-objects-imported-overview', 'Ajax\AuctionObjectsImportedOverviewController@getData');
Route::name('ajax-artists-overview')->get('/ajax/ajax-artists-overview', 'Ajax\ArtistsOverviewController@getData');
Route::name('ajax-source-type-overview')->get('/ajax/ajax-source-type-overview', 'Ajax\SourceTypeOverviewController@getData');

// Artist Rematching
Route::name('post-ajax-edit-artist-rematching')->post('/ajax/post-ajax-edit-artist-rematching', 'Ajax\EditArtistRematchingController@startRematching');

Route::name('ajax-mediums-overview')->get('/ajax/ajax-mediums-overview', 'Ajax\MediumsOverviewController@getData');
Route::name('post-ajax-medium-rematching')->post('/ajax/post-ajax-medium-rematching', 'Ajax\MediumRematchingController@startRematching');

Route::name('ajax-gender-lookup-overview')->post('/ajax/ajax-gender-lookup-overview', 'Ajax\GenderLookupOverviewController@getData');

Route::name('set-maintenance-mode')->post('/maintenance-mmode', 'Maintenance\MaintenanceModeController@setMode');
Route::name('maintenance')->get('/maintenance', 'Maintenance\MaintenanceModeController@index');
