319 lines
13 KiB
HTML
319 lines
13 KiB
HTML
<!doctype html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta
|
||
name="viewport"
|
||
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover"
|
||
/>
|
||
<title>Superadmin Center</title>
|
||
<link rel="stylesheet" href="../../common/theme.css" />
|
||
<link
|
||
rel="stylesheet"
|
||
href="../common/center.css?v=20260604-superadmin"
|
||
/>
|
||
<link rel="stylesheet" href="./style.css?v=20260604-summary" />
|
||
</head>
|
||
|
||
<body>
|
||
<div class="superadmin-center" aria-label="Superadmin Center">
|
||
<div class="hero-bg" aria-hidden="true"></div>
|
||
|
||
<nav class="title-bar">
|
||
<button
|
||
class="back-button"
|
||
id="backButton"
|
||
type="button"
|
||
aria-label="Back"
|
||
data-i18n-aria="superadmin_center.back"
|
||
>
|
||
<svg viewBox="0 0 32 32" aria-hidden="true">
|
||
<path d="M20 8 12 16l8 8" />
|
||
</svg>
|
||
</button>
|
||
<h1 data-i18n="superadmin_center.title">Superadmin Center</h1>
|
||
<div class="language-switcher">
|
||
<button
|
||
class="language-button"
|
||
type="button"
|
||
aria-label="Change language"
|
||
aria-expanded="false"
|
||
data-language-toggle
|
||
data-current-lang
|
||
data-i18n-aria="superadmin_center.change_language"
|
||
>
|
||
EN
|
||
</button>
|
||
<div class="language-menu" data-language-menu hidden>
|
||
<button type="button" data-lang-option="en">EN</button>
|
||
<button type="button" data-lang-option="ar">AR</button>
|
||
<button type="button" data-lang-option="tr">TR</button>
|
||
<button type="button" data-lang-option="es">ES</button>
|
||
<button type="button" data-lang-option="zh">ZH</button>
|
||
<button type="button" data-lang-option="id">ID</button>
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
|
||
<main class="content">
|
||
<section class="card profile-card">
|
||
<div class="avatar-shell">
|
||
<img class="avatar-image" id="profileAvatar" alt="" />
|
||
<div
|
||
class="avatar-fallback"
|
||
id="profileAvatarFallback"
|
||
aria-hidden="true"
|
||
hidden
|
||
>
|
||
S
|
||
</div>
|
||
</div>
|
||
<div class="profile-copy">
|
||
<div
|
||
class="role-pill"
|
||
data-i18n="superadmin_center.role"
|
||
>
|
||
Super Admin
|
||
</div>
|
||
<div class="name" id="profileName">-</div>
|
||
<div class="meta" id="profileUID">UID: -</div>
|
||
</div>
|
||
</section>
|
||
|
||
<div data-contact-card></div>
|
||
|
||
<section class="card salary-card">
|
||
<div class="salary-head">
|
||
<h2 data-i18n="superadmin_center.salary">Salary</h2>
|
||
<button
|
||
class="text-link"
|
||
id="withdrawExchangeButton"
|
||
type="button"
|
||
data-i18n="superadmin_center.withdraw_exchange"
|
||
>
|
||
Withdraw/Exchange
|
||
</button>
|
||
</div>
|
||
<div class="salary-value">
|
||
<span class="coin-icon" aria-hidden="true">$</span>
|
||
<strong id="availableBalance">0.00</strong>
|
||
</div>
|
||
</section>
|
||
|
||
<section class="card menu-card" aria-label="Superadmin tools">
|
||
<button
|
||
class="menu-row"
|
||
type="button"
|
||
data-action="history"
|
||
>
|
||
<span class="menu-icon" aria-hidden="true">
|
||
<svg viewBox="0 0 24 24">
|
||
<path d="M12 4a8 8 0 1 1-7.2 4.5" />
|
||
<path d="M5 4v5h5" />
|
||
<path d="M12 8v5l3 2" />
|
||
</svg>
|
||
</span>
|
||
<span
|
||
class="menu-label"
|
||
data-i18n="superadmin_center.salary_history"
|
||
>Salary History</span
|
||
>
|
||
<span class="chevron" aria-hidden="true">›</span>
|
||
</button>
|
||
<button
|
||
class="menu-row"
|
||
type="button"
|
||
data-action="invite-bd"
|
||
>
|
||
<span class="menu-icon" aria-hidden="true">
|
||
<svg viewBox="0 0 24 24">
|
||
<path d="M10 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8Z" />
|
||
<path
|
||
d="M3 21c.9-4.7 3.2-7 7-7 2 0 3.7.7 5 2"
|
||
/>
|
||
<path d="M19 9v8" />
|
||
<path d="M15 13h8" />
|
||
</svg>
|
||
</span>
|
||
<span
|
||
class="menu-label"
|
||
data-i18n="superadmin_center.invite_bd"
|
||
>Invite BD</span
|
||
>
|
||
<span class="chevron" aria-hidden="true">›</span>
|
||
</button>
|
||
</section>
|
||
|
||
<section class="card team-card">
|
||
<div class="team-summary" id="teamSummary"></div>
|
||
<div class="team-list" id="teamList"></div>
|
||
</section>
|
||
</main>
|
||
|
||
<div class="home-indicator" aria-hidden="true"></div>
|
||
|
||
<div
|
||
class="sheet-modal"
|
||
id="historyModal"
|
||
hidden
|
||
aria-hidden="true"
|
||
>
|
||
<button
|
||
class="modal-backdrop"
|
||
type="button"
|
||
data-close-modal="historyModal"
|
||
aria-label="Close"
|
||
data-i18n-aria="superadmin_center.close"
|
||
></button>
|
||
<section
|
||
class="bottom-sheet history-sheet"
|
||
role="dialog"
|
||
aria-modal="true"
|
||
aria-labelledby="historyTitle"
|
||
>
|
||
<div class="sheet-head">
|
||
<h2
|
||
id="historyTitle"
|
||
data-i18n="superadmin_center.salary_history"
|
||
>
|
||
Salary History
|
||
</h2>
|
||
<button
|
||
class="sheet-close"
|
||
type="button"
|
||
data-close-modal="historyModal"
|
||
aria-label="Close"
|
||
data-i18n-aria="superadmin_center.close"
|
||
>
|
||
×
|
||
</button>
|
||
</div>
|
||
<div class="history-summary" id="historySummary"></div>
|
||
<div class="history-list" id="historyList"></div>
|
||
</section>
|
||
</div>
|
||
|
||
<div
|
||
class="sheet-modal"
|
||
id="detailsModal"
|
||
hidden
|
||
aria-hidden="true"
|
||
>
|
||
<button
|
||
class="modal-backdrop"
|
||
type="button"
|
||
data-close-modal="detailsModal"
|
||
aria-label="Close"
|
||
data-i18n-aria="superadmin_center.close"
|
||
></button>
|
||
<section
|
||
class="bottom-sheet history-sheet"
|
||
role="dialog"
|
||
aria-modal="true"
|
||
aria-labelledby="detailsTitle"
|
||
>
|
||
<div class="sheet-head">
|
||
<h2 id="detailsTitle">-</h2>
|
||
<button
|
||
class="sheet-close"
|
||
type="button"
|
||
data-close-modal="detailsModal"
|
||
aria-label="Close"
|
||
data-i18n-aria="superadmin_center.close"
|
||
>
|
||
×
|
||
</button>
|
||
</div>
|
||
<div
|
||
class="history-summary compact"
|
||
id="detailsSummary"
|
||
></div>
|
||
<div class="history-list" id="detailsList"></div>
|
||
</section>
|
||
</div>
|
||
|
||
<div
|
||
class="invite-modal"
|
||
id="inviteModal"
|
||
hidden
|
||
aria-hidden="true"
|
||
>
|
||
<button
|
||
class="modal-backdrop"
|
||
type="button"
|
||
data-close-modal="inviteModal"
|
||
aria-label="Close"
|
||
data-i18n-aria="superadmin_center.close"
|
||
></button>
|
||
<section
|
||
class="invite-dialog"
|
||
role="dialog"
|
||
aria-modal="true"
|
||
aria-labelledby="inviteModalTitle"
|
||
>
|
||
<div class="invite-head">
|
||
<h2 id="inviteModalTitle">Invite BD</h2>
|
||
<button
|
||
class="invite-close"
|
||
type="button"
|
||
data-close-modal="inviteModal"
|
||
aria-label="Close"
|
||
data-i18n-aria="superadmin_center.close"
|
||
>
|
||
×
|
||
</button>
|
||
</div>
|
||
<div class="invite-body">
|
||
<form class="invite-search-form" id="inviteSearchForm">
|
||
<label class="invite-field">
|
||
<span
|
||
data-i18n="superadmin_center.enter_user_id"
|
||
>Enter User ID</span
|
||
>
|
||
<div class="invite-search-control">
|
||
<input
|
||
id="inviteSearchInput"
|
||
type="text"
|
||
inputmode="text"
|
||
autocomplete="off"
|
||
placeholder="Enter User ID"
|
||
data-i18n-placeholder="superadmin_center.enter_user_id"
|
||
/>
|
||
<button
|
||
id="inviteSearchButton"
|
||
type="submit"
|
||
data-i18n="superadmin_center.search"
|
||
>
|
||
Search
|
||
</button>
|
||
</div>
|
||
</label>
|
||
</form>
|
||
<div
|
||
class="invite-status"
|
||
id="inviteStatus"
|
||
role="status"
|
||
hidden
|
||
></div>
|
||
<div class="invite-list" id="inviteList"></div>
|
||
<div
|
||
class="invite-empty"
|
||
id="inviteEmpty"
|
||
data-i18n="superadmin_center.no_users_found"
|
||
>
|
||
No users found
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</div>
|
||
</div>
|
||
|
||
<script src="../../common/toast.js"></script>
|
||
<script src="../../common/jsbridge.js"></script>
|
||
<script src="../../common/api.js?v=20260604-superadmin-api"></script>
|
||
<script src="../../common/i18n.js?v=20260604"></script>
|
||
<script src="../common/contact-card.js?v=20260629-user-contact"></script>
|
||
<script src="./script.js?v=20260604-api"></script>
|
||
</body>
|
||
</html>
|