270 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>Manager Center</title>
<link rel="stylesheet" href="./style.css?v=20260626-0100" />
</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 action-card" id="actionCard" aria-label="Manager actions">
<button class="action-item" id="addBDLeaderButton" type="button">
<span class="action-item-icon" aria-hidden="true">
<svg viewBox="0 0 24 24">
<path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2" />
<circle cx="9" cy="7" r="4" />
<path d="M19 8v6" />
<path d="M22 11h-6" />
</svg>
</span>
<span class="action-item-copy">
<span class="action-item-title" data-i18n="add_bd_leader">Add BD Leader</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="countryEntryButton" type="button">
<span class="action-item-icon" aria-hidden="true">
<svg viewBox="0 0 24 24">
<circle cx="12" cy="12" r="9" />
<path d="M3 12h18" />
<path d="M12 3a14 14 0 0 1 0 18" />
<path d="M12 3a14 14 0 0 0 0 18" />
</svg>
</span>
<span class="action-item-copy">
<span class="action-item-title" data-i18n="change_country">Change Country</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="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">
<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">
<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>
<button class="action-item" id="bdLeaderListButton" type="button">
<span class="action-item-icon" aria-hidden="true">
<svg viewBox="0 0 24 24">
<path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2" />
<circle cx="9" cy="7" r="4" />
<path d="M23 21v-2a4 4 0 0 0-3-3.87" />
<path d="M16 3.13a4 4 0 0 1 0 7.75" />
</svg>
</span>
<span class="action-item-copy">
<span class="action-item-title" data-i18n="bd_leaders">BD Leaders</span>
<span class="action-item-subtitle" id="bdLeaderSummary">0</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>
<div class="form-status" id="pageStatus" role="status" hidden></div>
</main>
<div class="modal-mask" id="actionModal" role="dialog" aria-modal="true" aria-labelledby="actionModalTitle" hidden>
<section class="modal-sheet">
<div class="modal-head">
<h2 id="actionModalTitle">-</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">
<form class="search-form modal-search-form" id="modalSearchForm" autocomplete="off">
<input id="modalAccountInput" type="text" inputmode="text" placeholder="Enter user ID or account" data-i18n-placeholder="user_search_placeholder" />
<button id="modalSearchButton" type="submit" data-i18n="search">Search</button>
</form>
<div class="form-status" id="modalSearchStatus" role="status" hidden></div>
<section class="target-card modal-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>
<span class="status-pill" id="targetCountryStatus">-</span>
</div>
</div>
</section>
<div class="operation-panel" id="addBDLeaderPanel" hidden>
<button class="primary-action" id="addBDLeaderConfirmButton" type="button" disabled data-i18n="add_bd_leader">Add BD Leader</button>
<div class="form-status" id="addBDLeaderStatus" role="status" hidden></div>
</div>
<div class="operation-panel" id="countryPanel" hidden>
<label class="field-label" id="countryLabelText" data-i18n="select_country">Select country</label>
<div class="current-country" id="currentCountryText">-</div>
<div class="custom-select" id="countrySelect" data-value="">
<button
class="custom-select-button"
id="countryButton"
type="button"
aria-expanded="false"
aria-haspopup="listbox"
aria-labelledby="countryLabelText countrySelectedLabel"
>
<span id="countrySelectedLabel">-</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="countryMenu" role="listbox" aria-labelledby="countryLabelText" hidden></div>
</div>
<button class="primary-action" id="changeCountryButton" type="button" disabled data-i18n="change_country">Change Country</button>
<div class="form-status" id="countryStatus" role="status" hidden></div>
</div>
<div class="operation-panel" id="giftPanel" hidden>
<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>
<div class="operation-panel" id="banPanel" hidden>
<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>
<div class="operation-panel" id="unbanPanel" hidden>
<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>
<div class="operation-panel" id="bdLeaderPanel" hidden>
<div class="section-head">
<div>
<h2 data-i18n="bd_leaders">BD Leaders</h2>
<div class="section-subtitle" id="bdLeaderCount">0</div>
</div>
<button class="text-button" id="refreshBDLeaderButton" type="button" data-i18n="refresh">Refresh</button>
</div>
<div class="form-status" id="bdLeaderStatus" role="status" hidden></div>
<div class="bd-leader-list" id="bdLeaderList"></div>
</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=20260626-0100" defer></script>
</body>
</html>