206 lines
9.8 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>Manager Center</title>
<link rel="stylesheet" href="./style.css?v=20260511-0109" />
</head>
<body>
<div class="manager-center" aria-label="Manager Center" data-i18n-aria="page_label" data-loading="true">
<nav class="title-bar">
<button class="back-button" type="button" aria-label="Back" data-i18n-aria="back">
<svg viewBox="0 0 32 32" aria-hidden="true">
<path d="M20 8 12 16l8 8" />
</svg>
</button>
<h1 data-i18n="title">Manager Center</h1>
<div class="language-switcher">
<button class="language-button" type="button" aria-label="Change language" data-i18n-aria="language_button_aria" aria-expanded="false">EN</button>
<div class="language-menu" hidden>
<button type="button" data-lang="en">EN</button>
<button type="button" data-lang="ar">AR</button>
<button type="button" data-lang="tr">TR</button>
<button type="button" data-lang="id">ID</button>
</div>
</div>
</nav>
<main class="content">
<section class="card profile-card">
<div class="avatar-shell">
<img id="managerAvatar" alt="" hidden />
<span id="managerAvatarFallback">M</span>
</div>
<div class="profile-copy">
<div class="eyebrow" data-i18n="current_manager">Current Manager</div>
<div class="name" id="managerName">-</div>
<div class="meta" id="managerUid">UID: -</div>
</div>
</section>
<section class="card search-card">
<div class="section-head">
<h2 data-i18n="user">User</h2>
</div>
<form class="search-form" id="searchForm" autocomplete="off">
<input id="accountInput" type="text" inputmode="text" placeholder="Enter user ID or account" data-i18n-placeholder="user_search_placeholder" />
<button id="searchButton" type="submit" data-i18n="search">Search</button>
</form>
<div class="form-status" id="searchStatus" role="status" hidden></div>
</section>
<section class="card target-card" id="targetCard" hidden>
<div class="avatar-shell">
<img id="targetAvatar" alt="" hidden />
<span id="targetAvatarFallback">U</span>
</div>
<div class="profile-copy">
<div class="eyebrow" data-i18n="target_user">Target User</div>
<div class="name" id="targetName">-</div>
<div class="meta" id="targetUid">UID: -</div>
<div class="pill-row">
<span class="status-pill" id="targetAccountStatus">-</span>
</div>
</div>
</section>
<section class="card action-card" id="actionCard" hidden>
<button class="action-item" id="giftEntryButton" type="button">
<span class="action-item-icon" aria-hidden="true">
<svg viewBox="0 0 24 24">
<path d="M20 12v8H4v-8" />
<path d="M2 7h20v5H2z" />
<path d="M12 22V7" />
<path d="M12 7H7.5a2.5 2.5 0 1 1 2.2-3.7L12 7Z" />
<path d="M12 7h4.5a2.5 2.5 0 1 0-2.2-3.7L12 7Z" />
</svg>
</span>
<span class="action-item-copy">
<span class="action-item-title" data-i18n="gift_props">Gift Props</span>
</span>
<svg class="action-item-arrow" viewBox="0 0 24 24" aria-hidden="true">
<path d="m9 6 6 6-6 6" />
</svg>
</button>
<button class="action-item is-danger" id="banEntryButton" type="button" disabled>
<span class="action-item-icon" aria-hidden="true">
<svg viewBox="0 0 24 24">
<circle cx="12" cy="12" r="9" />
<path d="m8 8 8 8" />
</svg>
</span>
<span class="action-item-copy">
<span class="action-item-title" data-i18n="ban_user">Ban User</span>
</span>
<svg class="action-item-arrow" viewBox="0 0 24 24" aria-hidden="true">
<path d="m9 6 6 6-6 6" />
</svg>
</button>
<button class="action-item" id="unbanEntryButton" type="button" disabled>
<span class="action-item-icon" aria-hidden="true">
<svg viewBox="0 0 24 24">
<path d="M12 3 20 7v5c0 5-3.4 8-8 9-4.6-1-8-4-8-9V7l8-4Z" />
<path d="m8.5 12.5 2.2 2.2 4.8-5" />
</svg>
</span>
<span class="action-item-copy">
<span class="action-item-title" data-i18n="unban_user">Unban User</span>
</span>
<svg class="action-item-arrow" viewBox="0 0 24 24" aria-hidden="true">
<path d="m9 6 6 6-6 6" />
</svg>
</button>
</section>
</main>
<div class="modal-mask" id="giftModal" role="dialog" aria-modal="true" aria-labelledby="giftModalTitle" hidden>
<section class="modal-sheet">
<div class="modal-head">
<h2 id="giftModalTitle" data-i18n="gift_props">Gift Props</h2>
<button class="modal-close" type="button" data-modal-close aria-label="Close" data-i18n-aria="close">
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="M6 6 18 18M18 6 6 18" />
</svg>
</button>
</div>
<div class="modal-body">
<label class="field-label" id="propsTypeLabelText" data-i18n="gift_type">Gift Type</label>
<div class="custom-select" id="propsTypeSelect" data-value="RIDE">
<button
class="custom-select-button"
id="propsTypeButton"
type="button"
aria-expanded="false"
aria-haspopup="listbox"
aria-labelledby="propsTypeLabelText propsTypeSelectedLabel"
>
<span id="propsTypeSelectedLabel">Ride</span>
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="m7 9 5 5 5-5" />
</svg>
</button>
<div class="custom-select-menu" id="propsTypeMenu" role="listbox" aria-labelledby="propsTypeLabelText" hidden>
<button type="button" role="option" data-value="RIDE" data-i18n="prop_type_ride">Ride</button>
<button type="button" role="option" data-value="NOBLE_VIP" data-i18n="prop_type_noble_vip">Noble VIP</button>
<button type="button" role="option" data-value="AVATAR_FRAME" data-i18n="prop_type_avatar_frame">Avatar Frame</button>
<button type="button" role="option" data-value="BADGE" data-i18n="prop_type_badge">Badge</button>
<button type="button" role="option" data-value="CHAT_BUBBLE" data-i18n="prop_type_chat_bubble">Chat Bubble</button>
<button type="button" role="option" data-value="DATA_CARD" data-i18n="prop_type_data_card">Profile Card</button>
</div>
</div>
<div class="props-status" id="propsStatus" role="status" hidden></div>
<div class="props-list" id="propsList"></div>
<button class="primary-action" id="sendPropsButton" type="button" disabled data-i18n="send">Send</button>
</div>
</section>
</div>
<div class="modal-mask" id="banModal" role="dialog" aria-modal="true" aria-labelledby="banModalTitle" hidden>
<section class="modal-sheet">
<div class="modal-head">
<h2 id="banModalTitle" data-i18n="ban_user">Ban User</h2>
<button class="modal-close" type="button" data-modal-close aria-label="Close" data-i18n-aria="close">
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="M6 6 18 18M18 6 6 18" />
</svg>
</button>
</div>
<div class="modal-body">
<span class="danger-chip" id="banEligibility">-</span>
<textarea id="banReason" maxlength="200" rows="3" placeholder="Ban reason" data-i18n-placeholder="ban_reason"></textarea>
<button class="danger-action" id="banButton" type="button" disabled data-i18n="ban">Ban</button>
<div class="form-status" id="banStatus" role="status" hidden></div>
</div>
</section>
</div>
<div class="modal-mask" id="unbanModal" role="dialog" aria-modal="true" aria-labelledby="unbanModalTitle" hidden>
<section class="modal-sheet">
<div class="modal-head">
<h2 id="unbanModalTitle" data-i18n="unban_user">Unban User</h2>
<button class="modal-close" type="button" data-modal-close aria-label="Close" data-i18n-aria="close">
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="M6 6 18 18M18 6 6 18" />
</svg>
</button>
</div>
<div class="modal-body">
<span class="danger-chip" id="unbanEligibility">-</span>
<textarea id="unbanReason" maxlength="200" rows="3" placeholder="Unban reason" data-i18n-placeholder="unban_reason"></textarea>
<button class="primary-action" id="unbanButton" type="button" disabled data-i18n="unban">Unban</button>
<div class="form-status" id="unbanStatus" role="status" hidden></div>
</div>
</section>
</div>
<div class="loading-mask" id="loadingMask" role="status" aria-live="polite">
<div class="loader" aria-hidden="true"></div>
<span data-i18n="loading">Loading...</span>
</div>
<div class="toast" id="toast" role="status" hidden></div>
</div>
<script src="./script.js?v=20260511-0112" defer></script>
</body>
</html>