LINUX.ORG.RU

А как смотреть игноренные удалённые?

 


0

1

Нажимаю посмотреть удалённые, мне говорят: «показано X из Y», и ссылка «показать все». Нажимаешь на «все», показывают все, кроме удалённых. А удалённые как посмотреть?

А то мне тут удалили парочку, я даже не знаю какие ;-)

★★★★★

Ответ на: комментарий от Deleted

Это я догадался, спасибо.

Aceler ★★★★★
() автор топика

А то мне тут удалили парочку

Вы начали проходить квест?

Shulman
()
11 мая 2021 г.

Делаем через IIFE, чтобы не гадить в контекст.

(form => {
  const formData = new FormData(form);
  formData.append("filter", "show"); /* вырубает игнор */

  return fetch(form.action, {
    credentials: "include",
    body: new URLSearchParams(formData),
    method: "POST"
  }).then(response => response.text());
})(document.querySelector("form:not(#commentForm)")).then(html => {
  const parser = new DOMParser();
  const doc = parser.parseFromString(html, "text/html");
  const comments = document.querySelector("#comments");
  comments.textContent = "";

  doc.querySelectorAll("[itemprop=comment]").forEach(node => comments.appendChild(node));
});
Princesska ★★★★
()
Ответ на: комментарий от Princesska

Бонус: только удалённые сообщения в треде.

(form => {
  const formData = new FormData(form);
  formData.append("filter", "show"); /* вырубает игнор */

  return fetch(form.action, {
    credentials: "include",
    body: new URLSearchParams(formData),
    method: "POST"
  }).then(response => response.text());
})(document.querySelector("form:not(#commentForm)")).then(html => {
  const parser = new DOMParser();
  const doc = parser.parseFromString(html, "text/html");
  const comments = document.querySelector("#comments");
  comments.textContent = "";

  doc.querySelectorAll("[itemprop=comment]").forEach(node => {
    const title = node.querySelector(".title");
    if (title && /Сообщение удалено .* по причине .* \(..*\)/.test(title.textContent)) {
      comments.appendChild(node);
    }
  });
});
Princesska ★★★★
()
Ответ на: комментарий от Princesska

Ря, сам себе ответил, отредактировать не могу. Второй сниппет написал раньше первого, очевидно тут эффективнее innerHTML класть из #comments пришедшего документа в текущий, ну и ладно.

Princesska ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.