<?php

use Illuminate\Support\Facades\Route;

// Route::get('/', function () {
//     return view('welcome');
// });

Route::get('/', [App\Http\Controllers\Frontend\FrontendController::class, 'index'])->name('welcome');
Route::get('/winners', [App\Http\Controllers\Frontend\FrontendController::class, 'winners'])->name('winners');
Route::get('/tiktok', [App\Http\Controllers\Frontend\FrontendController::class, 'tiktok'])->name('tiktok');
Route::get('/startup-form', [App\Http\Controllers\Frontend\FrontendController::class, 'startup'])->name('startup-form');
Route::get('/india', [App\Http\Controllers\Frontend\FrontendController::class, 'india'])->name('india');
Route::get('/vote', [App\Http\Controllers\Frontend\FrontendController::class, 'vote'])->name('vote');
Route::get('/apply', [App\Http\Controllers\Frontend\FrontendController::class, 'apply'])->name('apply');
Route::get('/get-candidates', [App\Http\Controllers\Frontend\FrontendController::class, 'getCandidatesByCountry']);

Route::get('/get-candidates', [App\Http\Controllers\VoteController::class, 'getCandidates'])->name('getCandidates');
Route::post('/vote/{candidateId}', [App\Http\Controllers\VoteController::class, 'submitVote'])->name('submitVote');
Route::post('/vote/verify/{voteId}', [App\Http\Controllers\VoteController::class, 'verifyOtp'])->name('verifyOtp');
Route::post('/apply/store', [App\Http\Controllers\ApplicationController::class, 'store'])->name('application.store');

Auth::routes(['register' => false]);

Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');

Route::middleware(['auth'])->prefix('admin')->group(function () {
    Route::resource('countries', App\Http\Controllers\Backend\CountryController::class);
    Route::resource('candidates', App\Http\Controllers\Backend\CandidateController::class);

    // Route to show candidates and their submission counts
    Route::get('/votes', [App\Http\Controllers\Backend\AdminController::class, 'showVotes'])->name('admin.votes');
    // Route to export candidates and submission counts as CSV
    Route::get('/votes/export', [App\Http\Controllers\Backend\AdminController::class, 'exportVotes'])->name('admin.exportVotes');
    Route::get('view-submissions/{candidate_id}', [App\Http\Controllers\Backend\AdminController::class, 'viewSubmissions'])->name('admin.viewSubmissions');
});