<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\API\Company\RegistrationController;
use App\Http\Controllers\API\Company\Account\SetupController;

use App\Http\Controllers\API\Company\Account\AccountController;
use App\Http\Controllers\API\Company\Account\FreezeAccountController;

Route::prefix('company')->group(function () {
    Route::get('/registration-data', [SetupController::class, 'fetchRegistrationData']);
    Route::post('/account-final-setup', [RegistrationController::class, 'finalSetup']);

    //! Freeze Account
    Route::post('/account-freeze',          [FreezeAccountController::class, 'freezeAccount']); 
});

Route::post('/user/send-current-mobile-verification', [AccountController::class, 'verifyCurrentMobile'])->middleware("throttle:two-per-minute");
Route::post('/user/verify-mobile-code', [AccountController::class, 'verifyMobileCode'])->middleware("throttle:two-per-minute");


// update user personal information
Route::put('/update-personal-info/{user}', [AccountController::class, 'updateProfile']);
Route::post('/user/verification-new-email-mobile', [AccountController::class, 'verificationNewMobileAndEmaillAddress']);
 
// New Emal Addres and Mobile, Solo update
Route::post('/user/verify-updated-email', [AccountController::class, 'verifyUpdatedEmail'])->middleware("throttle:two-per-minute");
Route::post('/user/verify-updated-mobile', [AccountController::class, 'verifyUpdatedMobile'])->middleware("throttle:two-per-minute");

//Both new email and mobile verification
Route::post('/user/verify-updated-mobile-email', [AccountController::class, 'verifyNewMobileAndEmaillAddress']);

//send sms
Route::post('/user-send-mobile', [AccountController::class, 'sendMobile'])->middleware("throttle:two-per-minute");
Route::post('/user-resend-new-mobile', [AccountController::class, 'sendMobile'])->middleware("throttle:two-per-minute");
Route::post('/user-mobile-verification', [AccountController::class, 'verifyMobile']); //cen be clean up, using Account::@verifyMobileCode

//two facto authentication
Route::post('/user/disable-2fa', [AccountController::class, 'disableTwoFactor']);
Route::post('/user/check-2fa', [AccountController::class, 'check2faStatus']);





