where('email','=','tvslitoralnorte@gmail.com')->update(['password' => bcrypt('123@Mudar')]);
//echo Config::get('constants.IS_APP');
echo str_replace('/','brascSep',EncryptBras('8000|testpass|898|1')); exit();
return bcrypt('teste123');
});
// Route::get('/gerarProvisoria', function() {
// // Gera uma senha aleatória de 8 caracteres
// $senhaPlana = Str::random(8);
// $senhaHash = bcrypt($senhaPlana);
// echo "Senha Gerada: " . $senhaPlana;
// echo "
";
// echo "Hash para o Banco: " . $senhaHash;
// });
Route::get('/mudar123/{mail?}', function($mail) {
DB::table('users')->insert([
'name' => 'Edinaldo',
'email' => 'naldowd@gmail.com',
'password' => bcrypt('edinaldo1'),
'created_at' => NOW()
]);
exit();
DB::table('users')->where('email','=',$mail)->update(['password' => bcrypt('123@Mudar')]);
//echo Config::get('constants.IS_APP');
return bcrypt('Mudar@123');
});
Route::get('/plList/{port?}', function($port) {
if(!isset($port)){ echo 'aoooba, bota a porta certa, caboco'; exit(); }
$all = DB::table('playlists')->where('port','=',$port)->get();
if($all->count() == 0){ echo 'tem playlist não, tio'; }
foreach($all as $pl){
echo $pl->id.' - '.$pl->old_id.'
';
}
});
Route::get('/lang/{locale}', function($locale) {
if (!in_array($locale, config('app.available_locales'), true)) {
return redirect()->back();
}
if (Auth::check()) {
DB::table('users')->where('id', '=', Auth::id())->update(['lang' => $locale]);
}
return redirect()->back()->withCookie(cookie()->forever('locale', $locale));
})->name('lang.switch');
Route::get( '/api-encoder/genToken', [EncoderController::class, 'genToken'])->name('encoder.genToken');
Route::post( '/api-encoder/auth', [EncoderController::class, 'authenticate'])->name('encoder.auth');
Route::post( '/api-encoder/init', [EncoderController::class, 'init'])->name('encoder.init');
Route::post( '/api-encoder/metadata', [EncoderController::class, 'metadata'])->name('encoder.metadata');
Route::get( '/api-encoder/checkbroad/{port?}', [EncoderController::class, 'checkbroad'])->name('encoder.checkbroad');
Route::get('/pa/live-passwords/sync-server', [DJController::class, 'syncServer'])->name('radio.live-passwords.sync');
Route::get( '/robots/statistics/{arg?}', [StatisticsController::class, 'robot'])->name('statistics.robot');
Route::get( '/robots/schedules/{arg?}', [SchedulesController::class, 'robot'])->name('schedules.robot');
Route::get( '/robots/relayschedules', [RelayController::class, 'robot'])->name('relayschedules.robot');
Route::get( '/robots/schedules_posts/{arg?}', [PostsSiteController::class, 'robot'])->name('posts.robot');
Route::get( '/robots/chatban', [InteractivityController::class, 'robot'])->name('chatBan.robot');
Route::get( '/robots/cleanLimitsApi', [ApiController::class, 'cleaner'])->name('cleanerApiLimits.robot');
Route::get( '/robots/campaign_schedules', [ContentsController::class, 'robots'])->name('campaign_schedules.robot');
Route::get( '/robots/disconnectDjs', [DJController::class, 'robots'])->name('djs.robots');
Route::get( '/robots/relayschedules_test', [RelayController::class, 'robotTest'])->name('relayschedules.robotTest');
Route::get( '/robots/schedules-debug/{arg?}/{svTime?}', [SchedulesController::class, 'robotDebug'])->name('schedules.robotDebug');
Route::group(['as' => 'api.', 'prefix' => 'brasapi'],function () {
/* SITE SESSION */
Route::post( '/site/create/{key?}', [BrasApiController::class, 'createSite'])->name('site.create');
Route::post( '/site/create/{key?}/test', [BrasApiController::class, 'createSiteTest'])->name('site.createTest');
Route::get( '/site/suspend/{domain?}/{key?}', [BrasApiController::class, 'suspendSite'])->name('site.suspend');
Route::get( '/site/unsuspend/{domain?}/{key?}', [BrasApiController::class, 'unsuspendSite'])->name('site.unsuspend');
Route::get( '/site/hold/{domain?}/{key?}', [BrasApiController::class, 'holdSite'])->name('site.hold');
Route::get( '/site/unhold/{domain?}/{key?}', [BrasApiController::class, 'unholdSite'])->name('site.unhold');
Route::get( '/site/delete/{domain?}/{key?}', [BrasApiController::class, 'deleteSite'])->name('site.delete');
Route::post( '/site/rename/{key?}', [BrasApiController::class, 'renameSite'])->name('site.rename');
Route::post( '/site/reset/{service_id?}/{pass?}', [BrasApiController::class, 'resetSiteByManager'])->name('site.reset');
Route::get( '/service/remove/{service_id?}/{key?}', [BrasApiController::class, 'generateRemovedService'])->name('service.remove.logs');
/* STREAM SESSION */
Route::post( '/stream/create/{key?}', [BrasApiController::class, 'createStream'])->name('stream.create');
Route::get( '/stream/suspend/{port?}/{key?}', [BrasApiController::class, 'suspendStream'])->name('stream.suspend');
Route::get( '/stream/unsuspend/{port?}/{key?}', [BrasApiController::class, 'unsuspendStream'])->name('stream.unsuspend');
Route::get( '/stream/unsuspend/{port?}/{key?}/test', [BrasApiController::class, 'unsuspendStreamTest'])->name('stream.unsuspendTest');
Route::get( '/stream/delete/{port?}/{key?}', [BrasApiController::class, 'deleteStream'])->name('stream.delete');
Route::post( '/stream/migrate/{port?}/{key?}', [BrasApiController::class, 'migrateStream'])->name('stream.migrate');
Route::post( '/report/set', [ReportsController::class, 'api'])->name('reports.api');
Route::get( '/refApi', [BrasApiController::class, 'refactor'])->name('refactor');
Route::get( '/startServices/{type?}', [BrasApiController::class, 'startServices'])->name('startServices');
/* INTEGRATION SESSION */
Route::get( '/site/dns/{domain?}', [BrasApiController::class, 'dnsSite'])->name('site.dns');
Route::get( '/check/plan/{domain?}/{key?}', [BrasApiController::class, 'planCheck'])->name('plan.check');
Route::post( '/change/plan/{domain?}/{key?}', [BrasApiController::class, 'planChange'])->name('plan.change');
Route::post( '/change/plan/{domain?}/{key?}/test', [BrasApiController::class, 'planChangeTest'])->name('plan.changeTest');
Route::post( '/migrationsKS/new', [BrasApiController::class, 'migrations'])->name('migrations.api');
Route::post( '/migration/changeSite', [BrasApiController::class, 'changeSiteOld'])->name('migrations.changeSite');
Route::get( '/chat/check/{server?}/{siteID?}/{ip?}', [InteractivityController::class, 'checkChat'])->name('chatCheck.r');
Route::get( '/chat/setBan/{server?}/{siteID?}/{names?}/{ip?}', [InteractivityController::class, 'setBanChat'])->name('setBanChat.r');
Route::post( '/logAction', [ApiController::class, 'logAction'])->name('logAction');
Route::post( '/playlists/sync', [PlaylistsController::class, 'sync'])->name('playlists.sync');
Route::post( '/streaming/setSongApi', [BrasApiController::class, 'setSongsApi'])->name('streaming.setsong');
Route::get( '/genKeyFirebase', [BrasApiController::class, 'genFirebaseKey'])->name('genfirebasekey');
});
Route::middleware(LocaleMiddleware::class)->group(function (){
Route::get('/', function() {
echo '';
});
Route::get('/validar-termo', [TermController::class, 'iosTermValidator'])->name('ios-term.validator');
Route::post('/validar-termo', [TermController::class, 'iosTermValidatorCheck'])->name('ios-term.validator.check');
Route::get( '/home', [DashController::class, 'index'])->name('dashboard.r')->middleware('permcheck');
Route::get( '/login', [DashController::class, 'login'])->name('login');
Route::post('/login/doLogin', [DashController::class, 'doLogin'])->name('doLogin');
Route::get('/logout', [DashController::class, 'logout'])->name('logout');
Route::get('/logAs/{id?}', [DashController::class, 'logAs'])->name('logAs');
Route::post('/homeAjax/do', [DashController::class, 'homeAjax'])->name('homeAjax');
Route::post('/homeCatAjax/do', [DashController::class, 'homeCatAjax'])->name('homeCatAjax');
Route::get( '/first-access', [DashController::class, 'firstAccess'])->name('firstAccess');
Route::post( '/r/{crypt?}/{trial?}', [DashController::class, 'redirect'])->name('redirectDash');
Route::get( '/no-permission', [DashController::class, 'noPermission'])->name('noPermission');
Route::post( '/radio-red/{crypt?}', [DashController::class, 'radioRed'])->name('radioRed');
Route::post( '/tv-red/{crypt?}', [DashController::class, 'tvRed'])->name('tvRed');
Route::post( '/pl-red', [DashController::class, 'plRed'])->name('plRed');
Route::get( '/danEnter/{port?}', [DashController::class, 'danEnter'])->name('danEnter');
Route::get( '/select-site', [DashController::class, 'select'])->name('selectSite');
Route::get( '/manage/{id?}/{server?}', [DashController::class, 'selectAs'])->name('selectAs');
Route::get( '/profile', [DashController::class, 'profile'])->name('profile');
Route::post('/profile/do', [DashController::class, 'doProfile'])->name('doProfile');
/* Permissions Routes */
Route::middleware(PermissionCheck::class)->group(function (){
Route::get( '/emails', [EmailController::class, 'index'])->name('emails.r');
Route::get( '/emails/{id?}', [EmailController::class, 'show'])->name('emails.r.do');
Route::get( '/email/new', [EmailController::class, 'create'])->name('emails.c');
Route::post('/email/new/do', [EmailController::class, 'store'])->name('emails.c.do');
Route::get( '/email/edit/{id?}', [EmailController::class, 'edit'])->name('emails.u');
Route::post('/email/edit/{id?}/do', [EmailController::class, 'update'])->name('emails.u.do');
Route::delete( '/email/remove/{id?}', [EmailController::class, 'destroy'])->name('emails.d');
Route::get( '/administrators', [UserController::class, 'index'])->name('users.r');
Route::get( '/administrator/new', [UserController::class, 'create'])->name('users.c');
Route::post('/administrator/new/do', [UserController::class, 'store'])->name('users.c.do');
Route::get( '/administrator/permissions/{id?}', [UserController::class, 'permission'])->name('users.u.perm');
Route::post('/administrator/permission/do', [UserController::class, 'permissionDo'])->name('users.u.perm.do');
Route::get( '/administrator/edit/{id?}', [UserController::class, 'edit'])->name('users.u');
Route::post( '/administrator/edit/{id?}/do', [UserController::class, 'update'])->name('users.u.do');
Route::delete( '/administrator/remove/{id?}', [UserController::class, 'destroy'])->name('users.d');
Route::get( '/my-stations', [DashController::class, 'stations'])->name('stations.r');
Route::get( '/station/{id?}/{server?}', [DashController::class, 'selectStation'])->name('stations.s');
Route::get( '/settings', [SettingsController::class, 'index'])->name('settings.r');
Route::post( '/settings/do', [SettingsController::class, 'store'])->name('settings.r.do');
/* Site */
Route::group(['as' => 'site.', 'prefix' => 'site'],function () {
Route::get( '/home', [HomeSiteController::class, 'index'])->name('home.r');
Route::get( '/media', [HomeSiteController::class, 'assets'])->name('posts.r.media');
Route::post( '/media/upload', [HomeSiteController::class, 'uploadAsset'])->name('posts.r.mediaUpload');
Route::post( '/media/uploadX', [HomeSiteController::class, 'uploadCanc'])->name('posts.d.media');
Route::post( '/media/removeM', [HomeSiteController::class, 'removeM'])->name('posts.d.mediaRemoveM');
Route::get( '/config', [HomeSiteController::class, 'config'])->name('config.r');
Route::post( '/config/do', [HomeSiteController::class, 'updConf'])->name('config.r.do');
Route::get( '/hotsite', [HomeSiteController::class, 'hotsite'])->name('hotsite.r');
Route::get( '/sitemap', [HomeSiteController::class, 'sitemap'])->name('sitemap.r');
Route::get( '/meta-tags/{s?}', [MetaTagsController::class, 'index'])->name('meta-tags.r');
Route::get( '/head-tags/{s?}', [HeadTagsController::class, 'index'])->name('head-tags.r');
Route::get( '/posts/{s?}', [PostsSiteController::class, 'index'])->name('posts.r');
Route::post( '/posts/remove_sel', [PostsSiteController::class, 'removeByIds'])->name('posts.rs');
Route::get( '/posts_test/{s?}', [PostsSiteController::class, 'indexTest'])->name('posts.rTest');
Route::get( '/post/new', [PostsSiteController::class, 'create'])->name('posts.c');
Route::get( '/post/newTest', [PostsSiteController::class, 'createTest'])->name('posts.cTest');
Route::post( '/post/new/doTest', [PostsSiteController::class, 'storeTest'])->name('posts.c.doTest');
Route::post( '/post/new/do', [PostsSiteController::class, 'store'])->name('posts.c.do');
Route::get( '/post/edit/{id?}', [PostsSiteController::class, 'edit'])->name('posts.u');
Route::post( '/post/edit/{id?}/do', [PostsSiteController::class, 'update'])->name('posts.u.do');
Route::get( '/post/editTest/{id?}', [PostsSiteController::class, 'editTest'])->name('posts.uTest');
Route::post( '/post/edit/{id?}/do/test', [PostsSiteController::class, 'updateTest'])->name('posts.u.doTest');
Route::delete( '/post/remove/{id?}', [PostsSiteController::class, 'destroy'])->name('posts.d');
Route::get( '/post/integration', [PostsSiteController::class, 'integration'])->name('posts.c.integration');
Route::get( '/post/integrationImg', [PostsSiteController::class, 'integrationImg'])->name('posts.c.integrationimg');
Route::post( '/post/integrationImgItems', [PostsSiteController::class, 'integrationImgItems'])->name('posts.c.integrationImgItems');
Route::get( '/post/integration-card/{type}/{id}', [PostsSiteController::class, 'integrationCard'])->name('posts.c.integrationCard');
Route::post( '/post/integrationItems', [PostsSiteController::class, 'integrationItems'])->name('posts.c.integrationItems');
Route::post( '/post/uploadAsset', [PostsSiteController::class, 'uploadAsset'])->name('posts.c.uploadAsset');
Route::post( '/post/uploadCanc', [PostsSiteController::class, 'uploadCanc'])->name('posts.c.uploadCanc');
Route::get( '/post/categories/{s?}', [CategoriePostsController::class, 'index'])->name('posts.r.categories');
Route::get( '/post/category/new', [CategoriePostsController::class, 'create'])->name('posts.c.categories');
Route::post( '/post/category/new/do', [CategoriePostsController::class, 'store'])->name('posts.c.do.categories');
Route::get( '/post/category/edit/{id?}', [CategoriePostsController::class, 'edit'])->name('posts.u.categories');
Route::post( '/post/category/edit/{id?}/do', [CategoriePostsController::class, 'update'])->name('posts.u.do.categories');
Route::delete( '/post/category/remove/{id?}', [CategoriePostsController::class, 'destroy'])->name('posts.d.categories');
Route::get( '/pages/{s?}', [PagesController::class, 'index'])->name('pages.r');
Route::get( '/page/new', [PagesController::class, 'create'])->name('pages.c');
Route::post( '/page/new/do', [PagesController::class, 'store'])->name('pages.c.do');
Route::get( '/page/edit/{id?}', [PagesController::class, 'edit'])->name('pages.u');
Route::post( '/page/edit/{id?}/do', [PagesController::class, 'update'])->name('pages.u.do');
Route::delete( '/page/remove/{id?}', [PagesController::class, 'destroy'])->name('pages.d');
Route::get( '/links/{s?}', [LinksController::class, 'index'])->name('links.r');
Route::get( '/link/new', [LinksController::class, 'create'])->name('links.c');
Route::post( '/link/new/do', [LinksController::class, 'store'])->name('links.c.do');
Route::get( '/link/edit/{id?}', [LinksController::class, 'edit'])->name('links.u');
Route::post( '/link/edit/{id?}/do', [LinksController::class, 'update'])->name('links.u.do');
Route::delete( '/link/remove/{id?}', [LinksController::class, 'destroy'])->name('links.d');
Route::get( '/ads/{s?}', [AdsController::class, 'index'])->name('ads.r');
Route::get( '/ad/new', [AdsController::class, 'create'])->name('ads.c');
Route::post( '/ad/new/do', [AdsController::class, 'store'])->name('ads.c.do');
Route::get( '/ad/edit/{id?}', [AdsController::class, 'edit'])->name('ads.u');
Route::post( '/ad/edit/{id?}/do', [AdsController::class, 'update'])->name('ads.u.do');
Route::delete( '/ad/remove/{id?}', [AdsController::class, 'destroy'])->name('ads.d');
Route::post( '/ad/upload', [AdsController::class, 'uploadAsset'])->name('ads.r.upload');
Route::post( '/ad/reset', [AdsController::class, 'reset'])->name('ads.r.reset');
Route::get( '/free-modules/{s?}', [FreeModuleController::class, 'index'])->name('free-modules.r');
Route::get( '/free-module/new', [FreeModuleController::class, 'create'])->name('free-modules.c');
Route::post( '/free-module/new/do', [FreeModuleController::class, 'store'])->name('free-modules.c.do');
Route::get( '/free-module/edit/{id?}', [FreeModuleController::class, 'edit'])->name('free-modules.u');
Route::post( '/free-module/edit/{id?}/do', [FreeModuleController::class, 'update'])->name('free-modules.u.do');
Route::delete( '/free-module/remove/{id?}', [FreeModuleController::class, 'destroy'])->name('free-modules.d');
Route::get( '/albums/{s?}', [AlbumController::class, 'index'])->name('album.r');
Route::get( '/album/new', [AlbumController::class, 'create'])->name('album.c');
Route::post( '/album/new/do', [AlbumController::class, 'store'])->name('album.c.do');
Route::get( '/album/edit/{id?}', [AlbumController::class, 'edit'])->name('album.u');
Route::post( '/album/edit/{id?}/do', [AlbumController::class, 'update'])->name('album.u.do');
Route::delete( '/album/remove/{id?}', [AlbumController::class, 'destroy'])->name('album.d');
Route::post( '/album/upload', [AlbumController::class, 'uploadAsset'])->name('album.r.mediaUpload');
Route::post( '/album/ajax', [AlbumController::class, 'ajax'])->name('album.r.ajax');
Route::post( '/album/removeList', [AlbumController::class, 'destroyList'])->name('album.d.list');
Route::post( '/album/order', [AlbumController::class, 'order'])->name('album.r.order');
Route::get( '/featured', [FeaturedController::class, 'index'])->name('featured.r');
Route::get( '/featured/new', [FeaturedController::class, 'create'])->name('featured.c');
Route::post( '/featured/new/do', [FeaturedController::class, 'store'])->name('featured.c.do');
Route::get( '/featured/getData/{type?}', [FeaturedController::class, 'getData'])->name('featured.c.getData');
Route::post( '/featured/remove', [FeaturedController::class, 'destroy'])->name('featured.d');
Route::post( '/featured/removeList', [FeaturedController::class, 'destroyList'])->name('featured.d.list');
Route::post( '/featured/order', [FeaturedController::class, 'order'])->name('featured.r.order');
Route::post( '/featured/upload', [FeaturedController::class, 'uploadAsset'])->name('featured.r.upload');
Route::get( '/slider/{s?}', [SliderController::class, 'index'])->name('slider.r');
Route::get( '/slide/new', [SliderController::class, 'create'])->name('slider.c');
Route::post( '/slide/new/do', [SliderController::class, 'store'])->name('slider.c.do');
Route::get( '/slide/edit/{id?}', [SliderController::class, 'edit'])->name('slider.u');
Route::post( '/slide/edit/{id?}/do', [SliderController::class, 'update'])->name('slider.u.do');
Route::delete( '/slide/remove/{id?}', [SliderController::class, 'destroy'])->name('slider.d');
Route::post( '/slide/upload', [SliderController::class, 'uploadAsset'])->name('slider.r.upload');
Route::get( '/events/{s?}', [EventsController::class, 'index'])->name('events.r');
Route::get( '/event/new', [EventsController::class, 'create'])->name('events.c');
Route::post( '/event/new/do', [EventsController::class, 'store'])->name('events.c.do');
Route::get( '/event/edit/{id?}', [EventsController::class, 'edit'])->name('events.u');
Route::post( '/event/edit/{id?}/do', [EventsController::class, 'update'])->name('events.u.do');
Route::delete( '/event/remove/{id?}', [EventsController::class, 'destroy'])->name('events.d');
Route::get( '/event/map/search/{s?}', [EventsController::class, 'search'])->name('events.c.search');
Route::post( '/event/upload', [EventsController::class, 'uploadAsset'])->name('events.r.upload');
Route::get( '/videos/{s?}', [VideosController::class, 'index'])->name('videos.r');
Route::get( '/video/new', [VideosController::class, 'create'])->name('videos.c');
Route::post( '/video/new/do', [VideosController::class, 'store'])->name('videos.c.do');
Route::get( '/video/edit/{id?}', [VideosController::class, 'edit'])->name('videos.u');
Route::post( '/video/edit/{id?}/do', [VideosController::class, 'update'])->name('videos.u.do');
Route::post( '/video/remove', [VideosController::class, 'destroy'])->name('videos.d');
Route::post( '/video/removeList', [VideosController::class, 'destroyList'])->name('videos.d.list');
Route::get( '/video/categories/{s?}', [VideosCategoriesController::class, 'index'])->name('videos.r.categories');
Route::post( '/video/category/new/do', [VideosCategoriesController::class, 'store'])->name('videos.c.do.categories');
Route::post( '/video/category/edit/{id?}/do', [VideosCategoriesController::class, 'update'])->name('videos.u.do.categories');
Route::delete( '/video/category/remove/{id?}', [VideosCategoriesController::class, 'destroy'])->name('videos.d.categories');
Route::get( '/top-music', [TopMusicController::class, 'index'])->name('top-music.r');
Route::get( '/top-music/new', [TopMusicController::class, 'create'])->name('top-music.c');
Route::post( '/top-music/new/do', [TopMusicController::class, 'store'])->name('top-music.c.do');
Route::get( '/top-music/edit/{id?}', [TopMusicController::class, 'edit'])->name('top-music.u');
Route::post( '/top-music/edit/{id?}/do', [TopMusicController::class, 'update'])->name('top-music.u.do');
Route::post( '/top-music/reorder-sequence', [TopMusicController::class, 'updatePos'])->name('top-music.u.pos');
Route::delete( '/top-music/{id?}/remove', [TopMusicController::class, 'destroy'])->name('top-music.d');
Route::get( '/scheduling', [SchedulingController::class, 'index'])->name('scheduling.r');
Route::post( '/scheduling/save', [SchedulingController::class, 'store'])->name('scheduling.c.do');
Route::post( '/scheduling/update', [SchedulingController::class, 'update'])->name('scheduling.u.do');
Route::post( '/scheduling/remove', [SchedulingController::class, 'destroy'])->name('scheduling.d');
Route::post( '/scheduling/copy', [SchedulingController::class, 'copy'])->name('scheduling.copy');
Route::post( '/scheduling/clear', [SchedulingController::class, 'clear'])->name('scheduling.clear');
Route::get( '/broadcasters/{s?}', [BroadcastersController::class, 'index'])->name('broadcasters.r');
Route::get( '/broadcaster/new', [BroadcastersController::class, 'create'])->name('broadcasters.c');
Route::post( '/broadcaster/new/do', [BroadcastersController::class, 'store'])->name('broadcasters.c.do');
Route::get( '/broadcaster/edit/{id?}', [BroadcastersController::class, 'edit'])->name('broadcasters.u');
Route::post( '/broadcaster/edit/{id?}/do', [BroadcastersController::class, 'update'])->name('broadcasters.u.do');
Route::delete( '/broadcaster/remove/{id?}', [BroadcastersController::class, 'destroy'])->name('broadcasters.d');
Route::post( '/broadcaster/photo/upload', [BroadcastersController::class, 'uploadThumb'])->name('broadcasters.uploadThumb');
Route::get( '/programs/{s?}', [ProgramsController::class, 'index'])->name('programs.r');
Route::get( '/program/new', [ProgramsController::class, 'create'])->name('programs.c');
Route::post( '/program/new/do', [ProgramsController::class, 'store'])->name('programs.c.do');
Route::get( '/program/edit/{id?}', [ProgramsController::class, 'edit'])->name('programs.u');
Route::post( '/program/edit/{id?}/do', [ProgramsController::class, 'update'])->name('programs.u.do');
Route::delete( '/program/remove/{id?}', [ProgramsController::class, 'destroy'])->name('programs.d');
Route::post( '/program/photo/upload', [ProgramsController::class, 'uploadThumb'])->name('programs.uploadThumb');
Route::get( '/podcasts/{s?}', [PodcastsController::class, 'index'])->name('podcasts.r');
Route::get( '/podcast/new', [PodcastsController::class, 'create'])->name('podcasts.c');
Route::post( '/podcast/new/do', [PodcastsController::class, 'store'])->name('podcasts.c.do');
Route::get( '/podcast/edit/{id?}', [PodcastsController::class, 'edit'])->name('podcasts.u');
Route::post( '/podcast/edit/{id?}/do', [PodcastsController::class, 'update'])->name('podcasts.u.do');
Route::delete( '/podcasts/remove/{id?}', [PodcastsController::class, 'destroy'])->name('podcasts.d');
Route::get('/podcast/{id}/eps', [PodcastsController::class, 'indexEps'])->name('podcastsEps.r');
Route::post('/podcast/{id}/eps/new', [PodcastsController::class, 'storeEps'])->name('podcastsEps.c.do');
Route::get('/podcast/{id}/eps/check-name', [PodcastsController::class,'checkEpName'])->name('podcastsEps.checkName');
Route::post('/podcast/{id}/eps/edit/{ep}', [PodcastsController::class, 'updateEps'])->name('podcastsEps.u.do');
Route::delete('/podcast/{id}/eps/remove/{ep}', [PodcastsController::class, 'destroyEps'])->name('podcastsEps.d');
Route::post('/podcasts/update-order', [PodcastsController::class, 'updateOrder'])->name('podcastsEps.updateOrder');
Route::get( '/podcast/categories', [PodcastsController::class, 'categories'])->name('podcasts.categories');
Route::post( '/podcast/categories/new', [PodcastsController::class, 'categoriesStore'])->name('podcasts.categories.c.do');
Route::post( '/podcast/categories/edit', [PodcastsController::class, 'categoriesUpdate'])->name('podcasts.categories.u.do');
Route::delete( '/podcast/categories/remove/{id}', [PodcastsController::class, 'categoriesDestroy'])->name('podcasts.categories.d');
Route::post( '/podcast/thumbnail/upload', [PodcastsController::class, 'uploadThumb'])->name('podcasts.uploadThumb');
Route::get( '/studio-cam', [InteractivityController::class, 'camera'])->name('camera.r');
Route::get( '/chat', [InteractivityController::class, 'chat'])->name('chat.r');
Route::get( '/chat/banned-users', [InteractivityController::class, 'chatBan'])->name('chat.d');
Route::get( '/chat/banned-users/list', [InteractivityController::class, 'chatBanList'])->name('chat.d.list');
Route::delete( '/chat/banned-users/remove/{id?}', [InteractivityController::class, 'destroyBan'])->name('chat.d.do');
Route::get( '/music-requests/{type?}', [MusicReqController::class, 'index'])->name('music-requests.r');
Route::post( '/music-request/remove', [MusicReqController::class, 'destroy'])->name('music-requests.d');
Route::get( '/messages/{type?}', [MessagesController::class, 'index'])->name('messages.r');
Route::get( '/message/exportCsv/{type?}', [MessagesController::class, 'exportCsv'])->name('messages.exportCsv');
Route::post( '/message/approve', [MessagesController::class, 'approve'])->name('messages.u');
Route::post( '/message/remove', [MessagesController::class, 'destroy'])->name('messages.d');
Route::post( '/message/reply', [MessagesController::class, 'reply'])->name('messages.reply');
Route::post( '/message/reply/remove', [MessagesController::class, 'replyDestroy'])->name('messages.reply.d');
Route::get( '/comments/{type?}', [CommentsController::class, 'index'])->name('comments.r');
Route::post( '/comment/approve', [CommentsController::class, 'approve'])->name('comments.u');
Route::post( '/comment/reply', [CommentsController::class, 'reply'])->name('comments.c');
Route::post( '/comment/remove-reply', [CommentsController::class, 'destroyReply'])->name('comments.d.reply');
Route::post( '/comment/remove', [CommentsController::class, 'destroy'])->name('comments.d');
Route::get( '/promotions/{s?}', [PromotionsController::class, 'index'])->name('promotions.r');
Route::get( '/promotion/raffle/{id?}', [PromotionsController::class, 'raffle'])->name('promotions.r.raffle');
Route::get( '/promotion/raffle/{id?}/do', [PromotionsController::class, 'raffleDo'])->name('promotions.r.raffle.do');
Route::get( '/promotion/new', [PromotionsController::class, 'create'])->name('promotions.c');
Route::post( '/promotion/new/do', [PromotionsController::class, 'store'])->name('promotions.c.do');
Route::get( '/promotion/edit/{id?}', [PromotionsController::class, 'edit'])->name('promotions.u');
Route::post( '/promotion/edit/{id?}/do', [PromotionsController::class, 'update'])->name('promotions.u.do');
Route::delete( '/promotion/remove/{id?}', [PromotionsController::class, 'destroy'])->name('promotions.d');
Route::get( '/forms/{s?}', [FormController::class, 'index'])->name('forms.r');
Route::get( '/form/new', [FormController::class, 'create'])->name('forms.c');
Route::post( '/form/new/do', [FormController::class, 'store'])->name('forms.c.do');
Route::get( '/form/edit/{id?}', [FormController::class, 'edit'])->name('forms.u');
Route::post( '/form/edit/{id?}/do', [FormController::class, 'update'])->name('forms.u.do');
Route::delete( '/form/remove/{id?}', [FormController::class, 'destroy'])->name('forms.d');
Route::get( '/form/answers/{id?}', [FormController::class, 'answers'])->name('forms.r.answers');
Route::get( '/form/answer/view/{id?}', [FormController::class, 'viewanswer'])->name('forms.r.answer.view');
Route::post( '/form/answers/remove', [FormController::class, 'destroyAnswer'])->name('forms.d.answers');
Route::get( '/polls/{s?}', [PollController::class, 'index'])->name('polls.r');
Route::get( '/poll/new', [PollController::class, 'create'])->name('polls.c');
Route::post( '/poll/new/do', [PollController::class, 'store'])->name('polls.c.do');
Route::get( '/poll/edit/{id?}', [PollController::class, 'edit'])->name('polls.u');
Route::post( '/poll/edit/{id?}/do', [PollController::class, 'update'])->name('polls.u.do');
Route::delete( '/poll/remove/{id?}', [PollController::class, 'destroy'])->name('polls.d');
Route::get( '/themes', [ThemeController::class, 'themes'])->name('theme.themes.r');
Route::post( '/theme/change', [ThemeController::class, 'changeTheme'])->name('theme.change.do');
Route::get( '/theme/customize', [ThemeController::class, 'customize'])->name('theme.customize.u');
Route::post( '/theme/module/{id?}', [ThemeController::class, 'getModule'])->name('theme.customize.get');
Route::post( '/theme/module-ed/uploadAssets', [ThemeController::class, 'uploadAssets'])->name('theme.customize.upload.assets');
Route::post( '/theme/customize/edit-module', [ThemeController::class, 'editModule'])->name('theme.customize.module');
Route::post( '/theme/customize/save', [ThemeController::class, 'save'])->name('theme.customize.do');
Route::post( '/theme/customize/preview', [ThemeController::class, 'previewModules'])->name('theme.customize.preview');
Route::get( '/theme/search-entities/{entity?}', [ThemeController::class, 'searchEnt'])->name('theme.customize.search');
Route::get( '/theme/background', [ThemeController::class, 'bg'])->name('theme.bg.u');
Route::post( '/theme/background/do', [ThemeController::class, 'bgDo'])->name('theme.bg.u.do');
Route::post( '/theme/background/remove', [ThemeController::class, 'bgRemove'])->name('theme.u.bg.rm');
Route::post( '/theme/background/upload', [ThemeController::class, 'bgUpload'])->name('theme.bg.upload');
Route::get( '/theme/icon', [ThemeController::class, 'icon'])->name('theme.icon.u');
Route::post( '/theme/icon/do', [ThemeController::class, 'iconDo'])->name('theme.u.icon.do');
Route::get( '/theme/share', [ThemeController::class, 'share'])->name('theme.share.u');
Route::post( '/theme/share/do', [ThemeController::class, 'shareDo'])->name('theme.u.share.do');
Route::get( '/theme/players', [ThemeController::class, 'players'])->name('theme.players.r');
Route::post( '/theme/players/do', [ThemeController::class, 'playerDo'])->name('theme.players.r.do');
Route::get( '/pagelink', [PageLinkController::class, 'index'])->name('pagelink.r');
Route::post( '/pagelinkDo', [PageLinkController::class, 'update'])->name('pagelink.r.do');
Route::post( '/pagelinkAssetDo', [PageLinkController::class, 'updateAsset'])->name('pagelink.r.asdo');
Route::post( '/pagelinkPublish', [PageLinkController::class, 'publish'])->name('pagelink.r.publish');
Route::post( '/pagelinkAssetDo/remove', [PageLinkController::class, 'destroy'])->name('pagelink.r.asdoDel');
});
/* Radio */
Route::group(['as' => 'radio.', 'prefix' => 'radio'],function () {
Route::get( '/home', [HomeController::class, 'index'])->name('home.r');
Route::get( '/settings', [SettingRadioController::class, 'index'])->name('sett.r');
Route::post( '/settings/do', [SettingRadioController::class, 'doSettings'])->name('sett.r.do');
Route::post( '/settings/device/remove', [SettingRadioController::class, 'revokeSession'])->name('sett.device.remove');
Route::get( '/file-manager', [AutoDJController::class, 'fileManager'])->name('file-manager.r');
Route::post( '/music-cover/update', [AutoDJController::class, 'doMusicCover'])->name('file-manager.r.do');
Route::post( '/file-manager/inject', [AutoDJController::class, 'inject'])->name('file-manager.r.inject');
Route::post( '/file-manager/embed', [AutoDJController::class, 'embed'])->name('file-manager.r.embed');
Route::get( '/playlists', [PlaylistsController::class, 'index'])->name('playlists.r');
Route::get( '/playlists-test', [PlaylistsController::class, 'indexTest'])->name('playlists.rTest');
Route::post( '/playlist/action/{type?}', [PlaylistsController::class, 'action'])->name('playlists.c.loadAction');
Route::get( '/playlist/new', [PlaylistsController::class, 'create'])->name('playlists.c');
Route::post( '/playlist/new/do', [PlaylistsController::class, 'store'])->name('playlists.c.do');
Route::get( '/playlist/edit/{id?}', [PlaylistsController::class, 'edit'])->name('playlists.u');
Route::post( '/playlist/edit/{id?}/do', [PlaylistsController::class, 'update'])->name('playlists.u.do');
Route::delete( '/playlist/{id?}/remove', [PlaylistsController::class, 'destroy'])->name('playlists.d');
Route::get( '/schedules', [SchedulesController::class, 'index'])->name('schedules.r');
Route::get( '/schedule/new/{day?}', [SchedulesController::class, 'create'])->name('schedules.c');
Route::post( '/schedule/new/do', [SchedulesController::class, 'store'])->name('schedules.c.do');
Route::get( '/schedule/edit/{id?}', [SchedulesController::class, 'edit'])->name('schedules.u');
Route::post( '/schedule/edit/{id?}/do', [SchedulesController::class, 'update'])->name('schedules.u.do');
Route::post( '/schedule/remove', [SchedulesController::class, 'destroy'])->name('schedules.d');
Route::post( '/schedule/removeMultiple', [SchedulesController::class, 'destroyMultiple'])->name('schedules.d.multiple');
Route::get( '/statistics', [StatisticsController::class, 'index'])->name('statistics.r');
Route::get( '/statistics/{type?}/{period?}/{range?}', [StatisticsController::class, 'types'])->name('statistics.r.type');
/* dados do grafico em json e csv das sessoes cruas, ver StatisticsController */
Route::get( '/statistics-data', [StatisticsController::class, 'data'])->name('statistics.data');
Route::get( '/statistics-export', [StatisticsController::class, 'export'])->name('statistics.export');
Route::get( '/get/statistics/listeners-info', [StatisticsController::class, 'info'])->name('statistics.r.info');
Route::post( '/post/statistics/kicklistener', [StatisticsController::class, 'kicklistener'])->name('statistics.r.blacklist');
Route::get('/live-passwords/logs', [DJController::class, 'logs'])->name('live-passwords.logs');
Route::get( '/live-passwords', [DJController::class, 'index'])->name('live-passwords.r');
Route::get( '/live-passwords', [DJController::class, 'index'])->name('live-passwords.r');
Route::get( '/live-password/loc/{id?}', [DJController::class, 'show'])->name('live-passwords.r.data');
Route::get( '/live-password-test/loc/{id?}', [DJController::class, 'showTest'])->name('live-passwords.r.dataTest');
Route::post( '/live-passwords/generate-token', [DJController::class, 'generateToken'])->name('live-passwords.gen-token');
Route::get( '/live-password/new', [DJController::class, 'create'])->name('live-passwords.c');
Route::post( '/live-password/new/do', [DJController::class, 'store'])->name('live-passwords.c.do');
Route::delete( '/live-password/{id?}/remove', [DJController::class, 'destroy'])->name('live-passwords.d');
Route::get('/live-password/edit/{id}', [DJController::class, 'edit'])->name('live-passwords.e');
Route::post('/live-password/edit/{id}', [DJController::class, 'update'])->name('live-passwords.u');
Route::get( '/studio', [DJController::class, 'studio'])->name('live-passwords.r.studio');
Route::get( '/relays', [RelayController::class, 'index'])->name('relays.r');
Route::get( '/relaysTest', [RelayController::class, 'indexTest'])->name('relays.rTest');
Route::get( '/relay/new', [RelayController::class, 'create'])->name('relays.c');
Route::get( '/relay/newTest', [RelayController::class, 'createTest'])->name('relays.cTest');
Route::post( '/relay/new/do', [RelayController::class, 'store'])->name('relays.c.do');
Route::post( '/relay/new/doTest', [RelayController::class, 'storeTest'])->name('relays.c.doTest');
Route::get( '/relay/{id?}', [RelayController::class, 'show'])->name('relays.r.data');
Route::get( '/relay/edit/{id?}', [RelayController::class, 'update'])->name('relays.u');
Route::post( '/relay/edit/{id?}/do', [RelayController::class, 'updateDo'])->name('relays.u.do');
Route::post( '/relay/{token?}/start', [RelayController::class, 'start'])->name('relays.start');
Route::delete( '/relay/{id?}/remove', [RelayController::class, 'destroy'])->name('relays.d');
Route::get( '/reports/{date?}/{time?}', [ReportsController::class, 'index'])->name('reports.r');
Route::get( '/report/export/{date?}/{time?}', [ReportsController::class, 'export'])->name('reports.r.export');
Route::post( '/get/reports', [ReportsController::class, 'getReports'])->name('reports.r.get');
Route::get( '/reportGen', [ReportsController::class, 'reportGen'])->name('reportGen');
Route::get( '/api-integration', [ApiController::class, 'index'])->name('api-integration.r');
Route::post( '/generate', [ApiController::class, 'create'])->name('api-integration.c');
Route::get( '/blacklist', [BlacklistController::class, 'index'])->name('blacklist.r');
Route::get( '/blacklist/api/server/{port?}', [BlacklistController::class, 'listAll'])->name('blacklist.r.api');
/* lista completa para o modal da tela de estatisticas, com id e endereco */
Route::get( '/blacklist/json', [BlacklistController::class, 'json'])->name('blacklist.json');
Route::get( '/blacklist/new/{id?}/{ip?}', [BlacklistController::class, 'create'])->name('blacklist.c');
Route::post( '/blacklist/do/new', [BlacklistController::class, 'store'])->name('blacklist.c.do');
Route::delete( '/blacklist/{id?}/remove', [BlacklistController::class, 'destroy'])->name('blacklist.d');
Route::get( '/library/{type?}', [LibraryController::class, 'index'])->name('library.r');
Route::get( '/download-library/{type?}/{hash?}/{date?}/{file?}/{id?}', [LibraryController::class, 'download'])->name('library.r.download');
Route::get( '/skill-alexa', [AlexaController::class, 'index'])->name('alexa.r');
Route::post( '/skill-alexa/step', [AlexaController::class, 'step'])->name('alexa.r.do');
Route::get( '/players/{type?}', [PlayersController::class, 'index'])->name('players.r');
Route::get( '/player/{type?}/{id?}', [PlayersController::class, 'playercode'])->name('players.r.playercode');
Route::get( '/players-widgets/{type?}', [WidgetsController::class, 'index'])->name('widgets.r');
/* a tela cobre Android e iOS: o endereco fala de plataforma, e o nome da rota
continua o mesmo para nao mexer em quem ja aponta para ela */
Route::get( '/app/platform/{page?}/{action?}', [AppController::class, 'index'])->name('apps.r.android');
Route::post( '/app/doAjax', [AppController::class, 'ajaxDo'])->name('apps.r.android.doAjax');
Route::post( '/app/doAds/android/', [AppController::class, 'adsDo'])->name('apps.r.android.doAds');
Route::delete( '/app/ads/{id?}/remove/{type?}', [AppController::class, 'adsRemove'])->name('apps.r.adsRemove');
Route::get('/app/ios-term', [TermController::class, 'iosTerm'])->name('app.ios-term');
Route::post('/app/ios-term/step', [TermController::class, 'iosTermStep'])->name('app.ios-term.step');
Route::post('/app/ios-term/save', [TermController::class, 'iosTermSave'])->name('app.ios-term.save');
Route::post('/app/ios-term/upload', [TermController::class, 'iosTermUpload'])->name('app.ios-term.upload');
Route::post('/app/ios-term/restart', [TermController::class, 'iosTermRestart'])->name('app.ios-term.restart');
Route::get('/app/ios-term/download', [TermController::class, 'iosTermDownload'])->name('app.ios-term.download');
Route::get( '/app/webapp', [AppController::class, 'webapp'])->name('apps.r.webapp');
Route::post( '/app/doStep', [AppController::class, 'doStep'])->name('apps.r.android-doStep');
Route::post( '/app/stepCheckWebApp', [AppController::class, 'stepWebapp'])->name('apps.r.webapp-step');
Route::post( '/app/webAppReDo', [AppController::class, 'changeWebApp'])->name('apps.r.webapp-change');
Route::post( '/app/sendNotify', [AppController::class, 'sendNotify'])->name('apps.r.android-notify');
Route::get( '/last', [ApiController::class, 'history'])->name('historyAll');
/* PREVIEW ANDROID */
Route::get( '/app/android-preview/{model?}', [AppController::class, 'preview'])->name('apps.r.android-preview');
/* PREVIEW WEBAPP */
Route::get( '/app/webapp-preview/{model?}', [AppController::class, 'webappPreview'])->name('apps.r.webapp-preview');
});
/* CRM */
Route::group(['as' => 'crm.', 'prefix' => 'crm'],function () {
Route::get( '/', [DashCrm::class, 'index'])->name('home.r');
Route::get( '/deals', [DealsController::class, 'index'])->name('deals.r');
});
});
Route::get( '/activate-administrator/{hash?}', [UserController::class, 'activate'])->name('activate.admin');
Route::post( '/activate/do', [UserController::class, 'activateDo'])->name('activate.admin.do');
Route::post( '/resend-mail/activate', [UserController::class, 'resendMail'])->name('activate.admin.mail');
/* PLAYERS */
Route::get( '/player-api/{port?}/{type?}/{id?}', [PlayersController::class, 'api'])->name('radio.playerApi');
Route::get( '/player/01/{port?}/{param?}', [PlayersController::class, 'player01'])->name('radio.player01');
Route::get( '/player/02/{port?}/{param?}', [PlayersController::class, 'player02'])->name('radio.player02');
Route::get( '/player/03/{port?}/{param?}', [PlayersController::class, 'player03'])->name('radio.player03');
Route::get( '/player/04/{port?}/{param?}', [PlayersController::class, 'player04'])->name('radio.player04');
Route::get( '/player/05/{port?}/{param?}', [PlayersController::class, 'player05'])->name('radio.player05');
Route::get( '/player/06/{port?}/{param?}', [PlayersController::class, 'player06'])->name('radio.player06');
Route::get( '/player/07/{port?}/{param?}', [PlayersController::class, 'player07'])->name('radio.player07');
Route::get( '/player/08/{port?}/{param?}', [PlayersController::class, 'player08'])->name('radio.player08');
Route::get( '/player/09/{port?}/{param?}', [PlayersController::class, 'player09'])->name('radio.player09');
Route::get( '/player/10/{port?}/{param?}', [PlayersController::class, 'player10'])->name('radio.player10');
Route::get( '/widget/01/{port?}/{param?}', [PlayersController::class, 'widget01'])->name('radio.widget01');
Route::get( '/player/box/{port?}/{param?}', [PlayersController::class, 'playerbox'])->name('radio.playerbox');
Route::get( '/player-mini/01/{port?}/{ap?}', [PlayersController::class, 'playerMini01'])->name('radio.playermini01');
Route::get( '/player-mini/02/{port?}/{ap?}', [PlayersController::class, 'playerMini02'])->name('radio.playermini02');
Route::get( '/player-mini/03/{port?}/{ap?}', [PlayersController::class, 'playerMini03'])->name('radio.playermini03');
Route::get( '/player-pop/01/{port?}/{ap?}', [PlayersController::class, 'playerPop01'])->name('radio.playerpop01');
Route::get( '/player-pop/02/{port?}/{ap?}', [PlayersController::class, 'playerPop02'])->name('radio.playerpop02');
Route::get( '/check-status-port', [StreamsController::class, 'ajaxCheckStatus'])->name('ajaxCheckStatus');
/* tudo o que a tela precisa numa resposta so, ver HomeController::state */
Route::get( '/radio-state', [HomeController::class, 'state'])->name('radio.state');
Route::get( '/listen-count', [HomeController::class, 'ajaxListeners'])->name('ajaxListeners');
Route::get( '/status-info', [HomeController::class, 'statusInfo'])->name('ajaxStatusInfo');
Route::get( '/info-current', [HomeController::class, 'infoCurrent'])->name('ajaxInfoCurrent');
Route::get( '/autodj-info', [HomeController::class, 'actionAutoDJ'])->name('ajaxBlock');
Route::get( '/live-info', [HomeController::class, 'actionLive'])->name('ajaxBlockLive');
Route::get( '/relay-info', [HomeController::class, 'actionRelay'])->name('ajaxBlockRelay');
Route::get( '/manu-info', [HomeController::class, 'actionManu'])->name('ajaxBlockManu');
Route::get( '/stream/action/{type?}/{action?}/{param?}', [HomeController::class, 'execAction'])->name('execAction');
Route::post( '/ajaxSchedule', [SchedulesController::class, 'show'])->name('ajaxSchedule');
Route::post( '/checkRelay', [RelayController::class, 'testStream'])->name('ajaxTestRelay');
Route::post( '/checkLive', [DJController::class, 'goLive'])->name('ajaxGoLive');
Route::get( '/setLive/{port?}/{action?}/{pass?}/{ip?}', [DJController::class, 'setLive'])->name('ajaxSetLive');
Route::get( '/setPlSched/{port?}/{id?}', [SchedulesController::class, 'setPlSched'])->name('ajaxsetPlSched');
Route::get( '/current-cover', [HomeController::class, 'getCover'])->name('getCover');
Route::post( '/uploadCoverRadio', [SettingsController::class, 'uploadCover'])->name('uploadCoverRadio');
Route::post( '/removeAvatarRadio', [SettingsController::class, 'delAvatar'])->name('removeAvatarRadio');
Route::post( '/setPos/{type?}/{albid?}', [HomeSiteController::class, 'setPos'])->name('setPos');
Route::get( '/chat/setBanBD/{type}/{siteID}/{user}/{adm}/{data}', [InteractivityController::class, 'actBD'])->name('chat.r');
Route::post( '/thumbnail/upload', [HomeSiteController::class, 'uploadThumb'])->name('uploadThumb');
Route::post( '/diskSpace/{ac?}/{port?}', [AutoDJController::class, 'diskSpace'])->name('ajaxsetSpace');
Route::get( '/theme/css/{id?}', [ThemeController::class, 'css'])->name('cssTheme');
Route::get( '/android-contents/ads/{port?}', [AdsController::class, 'appAndroid'])->name('appAndroidAds');
/* End Permissions Routes */
Route::get( '/manageSiteTv/{hash?}', [DashController::class, 'manageSiteTv'])->name('manageSiteTv');
Route::get( '/managerLogin/{hash?}', [DashController::class, 'managerLogin'])->name('managerLogin');
Route::get( '/tester/{arg?}', [TesterController::class, 'index'])->name('testerBrascast');
Route::group(['as' => 'admin.', 'prefix' => 'manager'],function () {
Route::get( '/login', [ManagerDashController::class, 'login'])->name('login');
Route::post( '/login/do', [ManagerDashController::class, 'doLogin'])->name('doLogin');
Route::get( '/logout', [ManagerDashController::class, 'logout'])->name('logout');
Route::group(['middleware' => ['auth:admin']], function() {
Route::get( '/', [ManagerDashController::class, 'dash'])->name('dash');
Route::get('/dash/stats/local', [ManagerDashController::class, 'statsLocal'])->name('dash.stats.local');
Route::get('/dash/stats/central', [ManagerDashController::class, 'statsCentral'])->name('dash.stats.central');
Route::get('/dash/stats/site/{server}', [ManagerDashController::class, 'statsSite'])->where('server', '[1-3]')->name('dash.stats.site');
Route::get( '/susp', [ManagerDashController::class, 'suspTest'])->name('suspTest');
Route::get( '/contents/{type?}', [ContentsController::class, 'index'])->name('contents');
Route::get( '/content/new', [ContentsController::class, 'create'])->name('contentCreate');
Route::post( '/content/new/do', [ContentsController::class, 'store'])->name('contentStore');
Route::get( '/content/edit/{id?}', [ContentsController::class, 'edit'])->name('contentEdit');
Route::post( '/content/edit/do/{id?}', [ContentsController::class, 'update'])->name('contentUpdate');
Route::get( '/content/getType/{type?}', [ContentsController::class, 'getType'])->name('contentGetType');
Route::post( '/content/ajax/do', [ContentsController::class, 'ajax'])->name('contentAjax');
Route::get( '/tasks', [TasksController::class, 'index'])->name('tasksDash');
Route::post( '/tasks/doAction/{id?}', [TasksController::class, 'doAction'])->name('doTasksDash');
Route::get( '/tasks/generateRemovalTasks', [TasksController::class, 'generateRemovalTasks'])->name('generateRemovalTasks');
Route::get( '/covers', [CoversController::class, 'index'])->name('covers');
Route::post( '/covers/lookup', [CoversController::class, 'lookup'])->name('covers.lookup');
Route::post( '/covers/save', [CoversController::class, 'save'])->name('covers.save');
Route::post( '/covers/remove', [CoversController::class, 'remove'])->name('covers.remove');
Route::get( '/contents-add/{type?}', [ContentsController::class, 'add'])->name('contents-add');
Route::get( '/ads/{server?}', [AdsDashController::class, 'index'])->name('ads');
Route::post( '/ad/do', [AdsDashController::class, 'do'])->name('adsDo');
Route::get('/terms/{server?}', [AdminTermController::class, 'index'])->name('terms.index');
Route::get('/terms-data', [AdminTermController::class, 'fetchData'])->name('terms.data');
Route::post('/terms-evaluate', [AdminTermController::class, 'evaluate'])->name('terms.evaluate');
Route::post('/terms/restart', [AdminTermController::class, 'restart'])->name('terms.restart');
Route::get('/terms-counts', [AdminTermController::class, 'fetchCounts'])->name('terms.counts');
Route::get( '/streams/{server?}/{s?}', [StreamsController::class, 'index'])->name('streams');
Route::get( '/streamsTest/{server?}/{s?}', [StreamsController::class, 'indexTest'])->name('streamsTest');
Route::get( '/start-verification-playlists', [StreamsController::class, 'ajaxStartVerificationPlaylists'])->name('ajaxStartVerificationPlaylists');
Route::get( '/getServiceLogs', [StreamsController::class, 'ajaxGetServiceLogs'])->name('ajaxGetServiceLogs');
Route::get( '/servers', [ServersController::class, 'index'])->name('servers');
Route::post( '/server/listPorts', [ServersController::class, 'listPorts'])->name('listPorts');
Route::post( '/server/stream/start', [ServersController::class, 'startStream'])->name('startStream');
Route::post( '/server/autodj/start', [ServersController::class, 'startAutodj'])->name('startAutodj');
Route::get( '/apps/{s?}', [AppsDashController::class, 'index'])->name('apps');
Route::post( '/apps/formRelease', [AppsDashController::class, 'release'])->name('apps.release');
Route::get( '/app/checkLink', [AppsDashController::class, 'checkLink'])->name('apps.checkLink');
Route::get( '/app/{server?}/{id?}', [AppsDashController::class, 'show'])->name('app');
Route::post( '/appDo/{server?}', [AppsDashController::class, 'doApp'])->name('doApp');
Route::post( '/appAccountDo/', [AppsDashController::class, 'doAppAccount'])->name('apps.doAccount');
Route::post('/apps/filter', [AppsDashController::class, 'filter'])->name('apps.filter');
Route::post( '/appAjax', [AppsDashController::class, 'ajax'])->name('ajaxApp');
Route::post( '/ajaxModules', [AppsDashController::class, 'ajaxModules'])->name('ajaxModules');
Route::post('/apps/account/store', [AppsDashController::class, 'storeAccount'])->name('apps.storeAccount');
Route::post('/apps/account/update', [AppsDashController::class, 'updateAccount'])->name('apps.updateAccount');
Route::post('/apps/quick-status', [AppsDashController::class, 'quickStatus'])->name('apps.quickStatus');
Route::get( '/apps_tv/{s?}', [AppsDashController::class, 'indexTv'])->name('appsTv');
Route::get( '/app_tv/{server?}/{id?}', [AppsDashController::class, 'showTv'])->name('appTv');
Route::post('/apps_tv/filter', [AppsDashController::class, 'filterTV'])->name('apps.filterTV');
Route::post( '/appTVDo/{server?}', [AppsDashController::class, 'doAppTV'])->name('doAppTV');
Route::post( '/apps_tv/formRelease', [AppsDashController::class, 'releaseTV'])->name('apps.releaseTV');
Route::get( '/apps_ios/{s?}', [AppsIosDashController::class, 'index'])->name('appsIos');
Route::get( '/apps_ios/{server?}/{id?}', [AppsIosDashController::class, 'show'])->name('appIos');
Route::post( '/appsIosDo/{server?}', [AppsIosDashController::class, 'doApp'])->name('doAppIos');
Route::get( '/skills/{s?}', [SkillsDashController::class, 'index'])->name('skills');
Route::get( '/skill/{server?}/{id?}', [SkillsDashController::class, 'show'])->name('skill');
Route::post( '/skillDo/{server?}', [SkillsDashController::class, 'doSkill'])->name('doSkill');
Route::get( '/skill-dl/{port?}', [SkillsDashController::class, 'download'])->name('skill-dl');
Route::get('/administrators', [AdminUsersDashController::class, 'index'])->name('adminUsers');
Route::post('/administrators/password', [AdminUsersDashController::class, 'updatePassword'])->name('adminUsers.password');
Route::get('/administrators/{userId}/sites',[AdminUsersDashController::class, 'getUserSites'])->name('adminUsers.sites');
Route::get('/contents-verify', [ContentsController::class, 'contentsVerifyIndex']) ->name('contentsVerify');
Route::get('/contents-verify/list', [ContentsController::class, 'contentsVerifyList']) ->name('contentsVerify.list');
Route::get('/contents-verify/stream/{type}/{name}/{file}', [ContentsController::class, 'contentsVerifyStream']) ->name('contentsVerify.stream');
Route::get('/contents-verify/compare', [ContentsController::class, 'contentsVerifyCompare'])->name('contentsVerify.compare');
});
});
Route::group(['as' => 'apiPart.', 'prefix' => 'apiPart'],function () {
//ApiPartnerController
Route::get('/onairData/{id?}', [ApiPartnerController::class, 'currentOnair'])->name('currentOnair');
Route::get('/lasts/{id?}', [ApiPartnerController::class, 'lasts'])->name('lasts');
Route::get('/messages/{id?}', [ApiPartnerController::class, 'messages'])->name('messages');
Route::get('/news/{id?}', [ApiPartnerController::class, 'news'])->name('news');
Route::get('/new/{id?}/{nid?}', [ApiPartnerController::class, 'postData'])->name('postData');
Route::post('/message/{id?}', [ApiPartnerController::class, 'doMessage'])->name('message');
Route::post('/request/{id?}', [ApiPartnerController::class, 'doRequest'])->name('request');
});
// Route::get('/correctSiteModules/', [BrasApiController::class, 'correctSiteModules'])->name('correctSiteModules');
});
require __DIR__.'/siteapi.php';