fix bot invite creator

This commit is contained in:
MathMan05
2025-03-10 14:20:07 -05:00
parent 99c348b086
commit 3ce6748ad6

View File

@@ -52,14 +52,14 @@ class Bot{
const finput = settingsLeft.addFileInput( const finput = settingsLeft.addFileInput(
I18n.getTranslation("uploadPfp"), I18n.getTranslation("uploadPfp"),
_=>{ (_) => {
if (file) { if (file) {
this.updatepfp(file); this.updatepfp(file);
} }
}, },
{ clear: true } {clear: true},
); );
finput.watchForChange(_=>{ finput.watchForChange((_) => {
if (!_) { if (!_) {
file = null; file = null;
hypouser.avatar = null; hypouser.avatar = null;
@@ -78,14 +78,14 @@ class Bot{
let bfile: undefined | File | null; let bfile: undefined | File | null;
const binput = settingsLeft.addFileInput( const binput = settingsLeft.addFileInput(
I18n.getTranslation("uploadBanner"), I18n.getTranslation("uploadBanner"),
_=>{ (_) => {
if (bfile !== undefined) { if (bfile !== undefined) {
this.updatebanner(bfile); this.updatebanner(bfile);
} }
}, },
{ clear: true } {clear: true},
); );
binput.watchForChange(_=>{ binput.watchForChange((_) => {
if (!_) { if (!_) {
bfile = null; bfile = null;
hypouser.banner = undefined; hypouser.banner = undefined;
@@ -104,7 +104,7 @@ class Bot{
let changed = false; let changed = false;
const pronounbox = settingsLeft.addTextInput( const pronounbox = settingsLeft.addTextInput(
I18n.getTranslation("pronouns"), I18n.getTranslation("pronouns"),
_=>{ (_) => {
if (newpronouns || newbio || changed) { if (newpronouns || newbio || changed) {
this.updateProfile({ this.updateProfile({
pronouns: newpronouns, pronouns: newpronouns,
@@ -113,17 +113,17 @@ class Bot{
}); });
} }
}, },
{ initText: bot.pronouns } {initText: bot.pronouns},
); );
pronounbox.watchForChange(_=>{ pronounbox.watchForChange((_) => {
hypouser.pronouns = _; hypouser.pronouns = _;
newpronouns = _; newpronouns = _;
regen(); regen();
}); });
const bioBox = settingsLeft.addMDInput(I18n.getTranslation("bio"), _=>{}, { const bioBox = settingsLeft.addMDInput(I18n.getTranslation("bio"), (_) => {}, {
initText: bot.bio.rawString, initText: bot.bio.rawString,
}); });
bioBox.watchForChange(_=>{ bioBox.watchForChange((_) => {
newbio = _; newbio = _;
hypouser.bio = new MarkDown(_, this.owner); hypouser.bio = new MarkDown(_, this.owner);
regen(); regen();
@@ -136,10 +136,10 @@ class Bot{
} }
const colorPicker = settingsLeft.addColorInput( const colorPicker = settingsLeft.addColorInput(
I18n.getTranslation("profileColor"), I18n.getTranslation("profileColor"),
_=>{}, (_) => {},
{ initColor: color } {initColor: color},
); );
colorPicker.watchForChange(_=>{ colorPicker.watchForChange((_) => {
console.log(); console.log();
color = _; color = _;
hypouser.accent_color = Number.parseInt("0x" + _.substr(1), 16); hypouser.accent_color = Number.parseInt("0x" + _.substr(1), 16);
@@ -151,8 +151,10 @@ class Bot{
const guildsettings = settings.addButton("Guilds"); const guildsettings = settings.addButton("Guilds");
guildsettings.addTitle(I18n.getTranslation("botGuilds")); guildsettings.addTitle(I18n.getTranslation("botGuilds"));
fetch(this.info.api + "/users/@me/guilds/", { fetch(this.info.api + "/users/@me/guilds/", {
headers:this.headers headers: this.headers,
}).then(_=>_.json()).then((json:(guildjson["properties"])[])=>{ })
.then((_) => _.json())
.then((json: guildjson["properties"][]) => {
for (const guild of json) { for (const guild of json) {
const content = document.createElement("div"); const content = document.createElement("div");
content.classList.add("discovery-guild"); content.classList.add("discovery-guild");
@@ -161,7 +163,8 @@ class Bot{
const banner = document.createElement("img"); const banner = document.createElement("img");
banner.classList.add("banner"); banner.classList.add("banner");
banner.crossOrigin = "anonymous"; banner.crossOrigin = "anonymous";
banner.src = this.info.cdn + "/icons/" + guild.id + "/" + guild.banner + ".png?size=256"; banner.src =
this.info.cdn + "/icons/" + guild.id + "/" + guild.banner + ".png?size=256";
banner.alt = ""; banner.alt = "";
content.appendChild(banner); content.appendChild(banner);
} }
@@ -171,7 +174,11 @@ class Bot{
const img = document.createElement("img"); const img = document.createElement("img");
img.classList.add("icon"); img.classList.add("icon");
img.crossOrigin = "anonymous"; img.crossOrigin = "anonymous";
img.src = this.info.cdn + (guild.icon? "/icons/" + guild.id + "/" + guild.icon + ".png?size=48": "/embed/avatars/3.png"); img.src =
this.info.cdn +
(guild.icon
? "/icons/" + guild.id + "/" + guild.icon + ".png?size=48"
: "/embed/avatars/3.png");
img.alt = ""; img.alt = "";
nameContainer.appendChild(img); nameContainer.appendChild(img);
@@ -183,7 +190,6 @@ class Bot{
desc.textContent = guild.description; desc.textContent = guild.description;
content.appendChild(desc); content.appendChild(desc);
guildsettings.addHTMLArea(content); guildsettings.addHTMLArea(content);
content.onclick = () => { content.onclick = () => {
const guildsetting = guildsettings.addSubOptions(guild.name); const guildsetting = guildsettings.addSubOptions(guild.name);
@@ -192,13 +198,13 @@ class Bot{
if (confirm(I18n.getTranslation("confirmGuildLeave", guild.name))) { if (confirm(I18n.getTranslation("confirmGuildLeave", guild.name))) {
fetch(this.info.api + "/users/@me/guilds/" + guild.id, { fetch(this.info.api + "/users/@me/guilds/" + guild.id, {
method: "DELETE", method: "DELETE",
headers:this.headers headers: this.headers,
}) });
} }
}) });
};
} }
} });
})
} }
settings.show(); settings.show();
} }
@@ -239,11 +245,7 @@ class Bot{
}); });
} }
} }
updateProfile(json: { updateProfile(json: {bio?: string; pronouns?: string; accent_color?: number}) {
bio?: string;
pronouns?: string;
accent_color?: number;
}){
fetch(this.info.api + "/users/@me/profile", { fetch(this.info.api + "/users/@me/profile", {
method: "PATCH", method: "PATCH",
headers: this.headers, headers: this.headers,
@@ -252,7 +254,7 @@ class Bot{
} }
static InviteMaker(id: string, container: Form, info: Localuser["info"]) { static InviteMaker(id: string, container: Form, info: Localuser["info"]) {
const gen = container.addSubOptions(I18n.getTranslation("UrlGen"), { const gen = container.addSubOptions(I18n.getTranslation("UrlGen"), {
noSubmit:true noSubmit: true,
}); });
const params = new URLSearchParams(""); const params = new URLSearchParams("");
params.set("instance", info.wellknown); params.set("instance", info.wellknown);
@@ -271,8 +273,11 @@ class Bot{
} }
params.set("permissions", perms.allow.toString()); params.set("permissions", perms.allow.toString());
const encoded = params.toString(); const encoded = params.toString();
url.setText(`${location.origin}/oauth2/authorize?${encoded}`); const urlStr = `${location.origin}/oauth2/authorize?${encoded}`;
},100) if (urlStr == url.elm.deref()?.textContent) return;
console.log(urlStr, url.text);
url.setText(urlStr);
}, 100);
} }
} }
export {Bot}; export {Bot};