<?php
namespace Misuzu;

use Misuzu\Pagination;

$authInfo = $msz->getAuthInfo();
$currentUser = $authInfo->getUserInfo();
if($currentUser === null)
    Template::throwError(401);

$authCtx = $msz->getAuthContext();
$loginAttempts = $authCtx->getLoginAttempts();
$auditLog = $msz->getAuditLog();

$loginHistoryPagination = new Pagination($loginAttempts->countAttempts(userInfo: $currentUser), 5, 'hp');
$accountLogPagination = new Pagination($auditLog->countLogs(userInfo: $currentUser), 10, 'ap');

$loginHistory = iterator_to_array($loginAttempts->getAttempts(userInfo: $currentUser, pagination: $loginHistoryPagination));
$auditLogs = iterator_to_array($auditLog->getLogs(userInfo: $currentUser, pagination: $accountLogPagination));

Template::render('settings.logs', [
    'login_history_list' => $loginHistory,
    'login_history_pagination' => $loginHistoryPagination,
    'account_log_list' => $auditLogs,
    'account_log_pagination' => $accountLogPagination,
]);