/** * Creator revenue / withdraw form. * * @package AKSRT */ (function () { "use strict"; var page = document.querySelector("[data-aksrt-revenue-page]"); if (!page || !window.aksrtData) return; function restBase() { return ((aksrtData.siteUrl || "").replace(/\/$/, "")) + "/wp-json/aksrt/v1"; } function rest(path, method, body) { var opts = { method: method || "GET", credentials: "same-origin", headers: { "X-WP-Nonce": aksrtData.restNonce || "" }, }; if (body !== undefined) { opts.headers["Content-Type"] = "application/json"; opts.body = JSON.stringify(body); } return fetch(restBase() + path, opts).then(function (r) { return r.json(); }); } var form = page.querySelector("[data-aksrt-withdraw-form]"); var msg = page.querySelector("[data-aksrt-withdraw-msg]"); var balanceEl = page.querySelector("[data-aksrt-revenue-balance]"); var list = page.querySelector("[data-aksrt-withdraw-list]"); if (!form) return; form.addEventListener("submit", function (e) { e.preventDefault(); var fd = new FormData(form); var amount = Number(fd.get("amount") || 0); var method = String(fd.get("method") || "alipay"); var account = String(fd.get("account_info") || "").trim(); var min = Number(page.getAttribute("data-min-amount") || 50); if (amount < min) { if (msg) { msg.hidden = false; msg.textContent = "最低提现金额为 " + min; } return; } if (!account) { if (msg) { msg.hidden = false; msg.textContent = "请填写收款账户信息"; } return; } var btn = form.querySelector('button[type="submit"]'); if (btn) { btn.disabled = true; btn.textContent = "提交中..."; } rest("/shop/frontend/revenue/withdraw", "POST", { amount: amount, method: method, account_info: account, }) .then(function (result) { if (btn) { btn.disabled = false; btn.textContent = "提交提现申请"; } if (!result || !result.success) { if (msg) { msg.hidden = false; msg.textContent = (result && result.message) || "提现失败"; } return; } if (msg) { msg.hidden = false; msg.textContent = result.message || "提现申请已提交"; } if (balanceEl && result.data && typeof result.data.balance !== "undefined") { balanceEl.textContent = "¥" + Number(result.data.balance).toFixed(2); } if (list && result.data) { var item = document.createElement("div"); item.className = "aksrt-revenue-page__item"; item.innerHTML = "