gfsd
This commit is contained in:
+25
-5
@@ -11,8 +11,14 @@
|
||||
|
||||
const tagsContainer = document.querySelector("#tags");
|
||||
const inner = tagsContainer ? (tagsContainer.querySelector(".tags-inner") || tagsContainer) : null;
|
||||
const currentSub = (window.albumGallery && typeof window.albumGallery.getCurrentSubf0ck === 'function')
|
||||
? window.albumGallery.getCurrentSubf0ck()
|
||||
: null;
|
||||
const subf0ck_id = currentSub ? (currentSub.slug || currentSub.id) : (tagsContainer?.dataset?.subf0ckSlug || tagsContainer?.dataset?.subf0ckId || null);
|
||||
|
||||
return {
|
||||
postid: /^\d+$/.test(String(rawId).trim()) ? parseInt(rawId, 10) : rawId.trim(),
|
||||
subf0ck_id,
|
||||
poster: document.querySelector("a#a_username")?.innerText,
|
||||
tags: inner ? [...inner.querySelectorAll(".badge")].map(t => t.innerText.slice(0, -2)) : []
|
||||
};
|
||||
@@ -182,7 +188,7 @@
|
||||
if (e) e.preventDefault();
|
||||
const ctx = getContext();
|
||||
if (!ctx) return;
|
||||
const { postid, tags } = ctx;
|
||||
const { postid, subf0ck_id, tags } = ctx;
|
||||
const anchor = document.querySelector("a#a_addtag");
|
||||
if (!anchor) return;
|
||||
|
||||
@@ -191,13 +197,27 @@
|
||||
existingTags: tags,
|
||||
anchorEl: anchor,
|
||||
onSubmit: async (tag) => {
|
||||
const res = await post("/api/v2/tags/" + postid, { tagname: tag });
|
||||
if (res.success && window.invalidateItemCache) {
|
||||
window.invalidateItemCache(postid);
|
||||
const payload = { tagname: tag };
|
||||
if (subf0ck_id) payload.subf0ck_id = subf0ck_id;
|
||||
const res = await post("/api/v2/tags/" + postid, payload);
|
||||
if (res.success) {
|
||||
if (window.albumGallery && typeof window.albumGallery.getCurrentSubf0ck === 'function') {
|
||||
const cur = window.albumGallery.getCurrentSubf0ck();
|
||||
if (cur && res.tags) cur.tags = res.tags;
|
||||
}
|
||||
if (window.invalidateItemCache) {
|
||||
window.invalidateItemCache(postid);
|
||||
}
|
||||
}
|
||||
return res;
|
||||
},
|
||||
renderTags
|
||||
renderTags: (newTags, hl) => {
|
||||
if (window.albumGallery && typeof window.albumGallery.getCurrentSubf0ck === 'function') {
|
||||
const cur = window.albumGallery.getCurrentSubf0ck();
|
||||
if (cur) cur.tags = newTags;
|
||||
}
|
||||
renderTags(newTags, hl);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user