koel/routes/web.base.php

42 lines
1.8 KiB
PHP
Raw Normal View History

2022-06-10 10:47:46 +00:00
<?php
use App\Facades\ITunes;
2024-01-03 17:02:18 +00:00
use App\Http\Controllers\Download\DownloadAlbumController;
use App\Http\Controllers\Download\DownloadArtistController;
use App\Http\Controllers\Download\DownloadFavoritesController;
use App\Http\Controllers\Download\DownloadPlaylistController;
use App\Http\Controllers\Download\DownloadSongsController;
2022-06-10 10:47:46 +00:00
use App\Http\Controllers\LastfmController;
use App\Http\Controllers\PlayController;
2024-01-03 17:02:18 +00:00
use App\Http\Controllers\ViewSongOnITunesController;
2022-06-10 10:47:46 +00:00
use Illuminate\Support\Facades\Route;
Route::middleware('web')->group(static function (): void {
Route::get('/', static fn () => view('index'));
Route::get('remote', static fn () => view('remote'));
Route::middleware('auth')->group(static function (): void {
Route::prefix('lastfm')->group(static function (): void {
Route::get('connect', [LastfmController::class, 'connect'])->name('lastfm.connect');
Route::get('callback', [LastfmController::class, 'callback'])->name('lastfm.callback');
});
if (ITunes::used()) {
2024-01-03 17:02:18 +00:00
Route::get('itunes/song/{album}', ViewSongOnITunesController::class)->name('iTunes.viewSong');
2022-06-10 10:47:46 +00:00
}
2022-11-16 17:57:38 +00:00
});
Route::middleware('audio.auth')->group(static function (): void {
2024-01-03 17:02:18 +00:00
Route::get('play/{song}/{transcode?}/{bitrate?}', PlayController::class)->name('song.play');
2022-06-10 10:47:46 +00:00
Route::prefix('download')->group(static function (): void {
2024-01-03 17:02:18 +00:00
Route::get('songs', DownloadSongsController::class);
Route::get('album/{album}', DownloadAlbumController::class);
Route::get('artist/{artist}', DownloadArtistController::class);
Route::get('playlist/{playlist}', DownloadPlaylistController::class);
Route::get('favorites', DownloadFavoritesController::class);
2022-06-10 10:47:46 +00:00
});
});
});