|
95 | 95 | }
|
96 | 96 |
|
97 | 97 | async function requestRevive() {
|
98 |
| - const provider = settings.pages.global.reviveProvider || ""; |
99 |
| - |
100 | 98 | const details = getUserDetails();
|
101 | 99 | if (details.error) return false; // TODO - Show error message.
|
102 | 100 |
|
|
110 | 108 | else if (country === "uae") country = "UAE";
|
111 | 109 | else country = capitalizeText(country.replaceAll("-", " "), { everyWord: true });
|
112 | 110 |
|
113 |
| - const source = `TornTools v${chrome.runtime.getManifest().version}`; |
114 |
| - |
115 |
| - if (provider === "nuke") { |
116 |
| - const response = await fetchData("nukefamily", { |
117 |
| - section: "api/revive-request", |
118 |
| - method: "POST", |
119 |
| - body: { torn_player_id: id, torn_player_name: name, torn_player_country: country, app_info: source }, |
120 |
| - relay: true, |
121 |
| - silent: true, |
122 |
| - succeedOnError: true, |
123 |
| - }); |
124 |
| - |
125 |
| - if (response.success) { |
126 |
| - displayMessage("Revive requested!"); |
127 |
| - } else { |
128 |
| - displayMessage("Failed to request!", true); |
129 |
| - button.removeAttribute("disabled"); |
130 |
| - console.log("TT - Failed to request a revive with Nuke!", response); |
131 |
| - } |
132 |
| - } else if (provider === "uhc") { |
133 |
| - const response = await fetchData("uhc", { |
134 |
| - section: "api/request", |
135 |
| - method: "POST", |
136 |
| - body: { userID: id, userName: name, factionName: faction, source }, |
137 |
| - relay: true, |
138 |
| - silent: true, |
139 |
| - succeedOnError: true, |
140 |
| - }); |
141 |
| - |
142 |
| - if (response.success) { |
143 |
| - displayMessage("Revive requested!"); |
144 |
| - } else { |
145 |
| - displayMessage("Failed to request!", true); |
146 |
| - button.removeAttribute("disabled"); |
147 |
| - console.log("TT - Failed to request a revive with UHC!", response); |
148 |
| - } |
149 |
| - } else if (provider === "imperium") { |
150 |
| - const response = await fetchData("imperium", { |
151 |
| - section: "revive", |
152 |
| - method: "POST", |
153 |
| - body: { userID: id, userName: name, factionName: faction, source }, |
154 |
| - relay: true, |
155 |
| - silent: true, |
156 |
| - succeedOnError: true, |
157 |
| - }); |
158 |
| - |
159 |
| - if (response.success) { |
160 |
| - displayMessage("Revive requested!"); |
161 |
| - } else { |
162 |
| - displayMessage("Failed to request!", true); |
163 |
| - button.removeAttribute("disabled"); |
164 |
| - console.log("TT - Failed to request a revive with Imperium!", response); |
165 |
| - } |
166 |
| - } else if (provider === "hela" || provider === "shadow_healers" || provider === "who") { |
167 |
| - const providers = { hela: "HeLa", shadow_healers: "Shadow Healers", who: "The Wolverines" }; |
168 |
| - const response = await fetchData(provider, { |
169 |
| - section: "request", |
170 |
| - method: "POST", |
171 |
| - body: { |
172 |
| - tornid: id.toString(), |
173 |
| - username: name, |
174 |
| - source: source, |
175 |
| - vendor: providers[provider], |
176 |
| - type: "revive", |
177 |
| - }, |
178 |
| - relay: true, |
179 |
| - silent: true, |
180 |
| - succeedOnError: true, |
181 |
| - }); |
182 |
| - |
183 |
| - if (response.hasOwnProperty("contract")) { |
184 |
| - displayMessage((response["contract"] ? "Contract " : "") + " Revive requested!"); |
185 |
| - } else { |
| 111 | + doRequestRevive(id, name, country, faction) |
| 112 | + .then(({ provider }) => displayMessage(`Revive requested for ${calculateRevivePrice(provider)}!`)) |
| 113 | + .catch(({ provider, response }) => { |
186 | 114 | displayMessage("Failed to request!", true);
|
187 | 115 | button.removeAttribute("disabled");
|
188 |
| - console.log("TT - Failed to request a revive with " + providers[provider] + "!", response); |
189 |
| - } |
190 |
| - } else if (provider === "wtf") { |
191 |
| - const response = await fetchData("wtf", { |
192 |
| - section: "wtfapi/revive", |
193 |
| - method: "POST", |
194 |
| - body: { userID: id, userName: name, Faction: faction, Country: country, requestChannel: source }, |
195 |
| - relay: true, |
196 |
| - silent: true, |
197 |
| - succeedOnError: true, |
| 116 | + console.log(`TT - Failed to request a revive with ${provider.name}!`, response); |
198 | 117 | });
|
199 |
| - |
200 |
| - if (response.success) { |
201 |
| - displayMessage("Revive requested!"); |
202 |
| - } else { |
203 |
| - displayMessage("Failed to request!", true); |
204 |
| - button.removeAttribute("disabled"); |
205 |
| - console.log("TT - Failed to request a revive with WTF!", response); |
206 |
| - } |
207 |
| - } else { |
208 |
| - console.error("There was an attempt to request revives from an non-existing provider.", settings.pages.global.reviveProvider); |
209 |
| - } |
210 | 118 | }
|
211 | 119 |
|
212 | 120 | function getSidebar() {
|
|
223 | 131 | setTimeout(() => {
|
224 | 132 | element.textContent = "Request Revive";
|
225 | 133 | element.classList.remove("tt-revive-success");
|
226 |
| - }, 2500); |
| 134 | + }, 10 * TO_MILLIS.SECONDS); |
227 | 135 | }
|
228 | 136 | }
|
229 | 137 |
|
|
0 commit comments