feat(users): normalize center routes and withdrawal limits
This commit is contained in:
+33
-5
@@ -930,11 +930,27 @@
|
||||
var amountEl = form.querySelector('[data-aksrt-withdraw-amount]');
|
||||
var methodEl = form.querySelector('[data-aksrt-withdraw-method]');
|
||||
var accountEl = form.querySelector('[data-aksrt-withdraw-account]');
|
||||
var amount = amountEl ? parseFloat(amountEl.value || '0') : 0;
|
||||
var rawAmount = amountEl ? String(amountEl.value || '').trim() : '';
|
||||
var amount = rawAmount ? Number(rawAmount) : 0;
|
||||
var minAmount = amountEl ? Number(amountEl.getAttribute('data-withdraw-min') || '0') : 0;
|
||||
var remainingAmount = amountEl ? Number(amountEl.getAttribute('data-withdraw-remaining-amount') || '0') : 0;
|
||||
var remainingCount = amountEl ? Number(amountEl.getAttribute('data-withdraw-remaining-count') || '0') : 0;
|
||||
var method = methodEl ? methodEl.value : 'alipay';
|
||||
var account = accountEl ? String(accountEl.value || '').trim() : '';
|
||||
if (!(amount > 0)) {
|
||||
setTip('请输入提现金额', true);
|
||||
if (!Number.isInteger(amount) || !(amount > 0)) {
|
||||
setTip('提现金额必须为正整数', true);
|
||||
return;
|
||||
}
|
||||
if (amount < minAmount) {
|
||||
setTip('提现金额低于最低提现门槛', true);
|
||||
return;
|
||||
}
|
||||
if (remainingCount <= 0) {
|
||||
setTip('当日提现次数已用尽', true);
|
||||
return;
|
||||
}
|
||||
if (amount > remainingAmount) {
|
||||
setTip('本次提现后将超出单日提现总额上限', true);
|
||||
return;
|
||||
}
|
||||
if (!account) {
|
||||
@@ -953,8 +969,20 @@
|
||||
return;
|
||||
}
|
||||
var data = (r.json && r.json.data) ? r.json.data : r.json;
|
||||
setTip((data && data.message) || '申请已提交,正在刷新…');
|
||||
window.location.reload();
|
||||
setTip((data && data.message) || '申请已提交');
|
||||
closeModal(modal);
|
||||
var panel = modal.closest ? modal.closest('.dashboard-panel') : null;
|
||||
panel = panel || document.getElementById('panel-credits');
|
||||
var rest = (window.aksrtData && (window.aksrtData.restUrl || window.aksrtData.apiUrl)) || (window.aksrtUserCenter && window.aksrtUserCenter.restUrl) || '';
|
||||
if (panel && rest) {
|
||||
fetch(rest.replace(/\/$/, '') + '/user-center/panel/credits', { credentials: 'same-origin', headers: { 'X-WP-Nonce': (window.aksrtData && (window.aksrtData.restNonce || window.aksrtData.nonce)) || '' } })
|
||||
.then(function (response) { return response.json(); })
|
||||
.then(function (payload) {
|
||||
if (!payload || !payload.success || !payload.data || typeof payload.data.html !== 'string') return;
|
||||
panel.innerHTML = payload.data.html;
|
||||
if (window.AksrtFrontend && typeof window.AksrtFrontend.rehydrate === 'function') window.AksrtFrontend.rehydrate(panel, 'ajax');
|
||||
});
|
||||
}
|
||||
}).catch(function () {
|
||||
busy = false;
|
||||
setTip('网络错误,请重试', true);
|
||||
|
||||
@@ -124,16 +124,17 @@
|
||||
}
|
||||
|
||||
function tabFromUrl() {
|
||||
var m = window.location.search.match(/[?&]tab=([^&]+)/);
|
||||
var name = m ? decodeURIComponent(m[1]) : (cfg.activeTab || defaultTab);
|
||||
var pathParts = window.location.pathname.replace(/\/+$/, '').split('/');
|
||||
var pathTab = pathParts.length > 2 && pathParts[pathParts.length - 2] === 'user' ? pathParts[pathParts.length - 1] : '';
|
||||
var name = pathTab || (cfg.activeTab || defaultTab);
|
||||
if (name === 'balance') name = 'credits';
|
||||
return tabAliases[name] || name;
|
||||
}
|
||||
|
||||
function updateUrl(name) {
|
||||
if (!window.history.replaceState) return;
|
||||
var u = new URL(window.location);
|
||||
if (name === defaultTab) u.searchParams.delete('tab');
|
||||
else u.searchParams.set('tab', name);
|
||||
var pathTab = name === 'credits' ? 'balance' : name;
|
||||
var u = new URL('/user/' + pathTab + '/', window.location.origin);
|
||||
window.history.replaceState({}, '', u);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user