Request Game Accounts
Select platforms — our team will create your logins
@@ -2125,14 +2141,60 @@ function obTogglePlatform(id, checked, labelId) {
if (lbl) lbl.style.borderColor = checked ? 'rgba(240,192,64,.4)' : 'var(--border)';
}
+function obHideAll() {
+ ['ob-step1','ob-step-aliases','ob-step2'].forEach(id => {
+ const el = document.getElementById(id); if (el) el.style.display = 'none';
+ });
+}
+
+function obGoBack(fromStep) {
+ obHideAll();
+ document.getElementById('ob-step1').style.display = 'block';
+}
+
function obShowStep2() {
- document.getElementById('ob-step1').style.display = 'none';
+ obHideAll();
document.getElementById('ob-step2').style.display = 'block';
obLoadPlatforms();
}
-function obRequestNew() {
- obShowStep2();
+async function obShowAliasStep() {
+ obHideAll();
+ document.getElementById('ob-step-aliases').style.display = 'block';
+ const el = document.getElementById('ob-alias-list');
+ el.innerHTML = '
Loading...
';
+ const d = await api('/api/platforms.php?action=list').catch(()=>({success:false}));
+ if (!d.success || !d.platforms.length) {
+ el.innerHTML = '
No platforms configured yet.
';
+ return;
+ }
+ el.innerHTML = d.platforms.map(p => `
+
`).join('');
+ window._obAliasPlatforms = d.platforms;
+}
+
+async function obSaveAliases() {
+ const platforms = window._obAliasPlatforms || [];
+ const toSave = platforms.filter(p => {
+ const v = document.getElementById('ob-alias-' + p.id)?.value.trim();
+ return v && v !== (savedAliases[p.id] || '');
+ });
+ for (const p of toSave) {
+ const alias = document.getElementById('ob-alias-' + p.id).value.trim();
+ savedAliases[p.id] = alias;
+ await api('/api/game_aliases.php?action=save', { platform_slug: p.id, alias }).catch(()=>{});
+ }
+ obDismiss();
}
async function obSubmitRequests() {
@@ -2641,9 +2703,6 @@ function renderGameAliasList(platforms) {
value="${escHtml(savedAliases[p.id] || '')}"
onchange="saveOneAlias('${p.id}',this.value)">