משתמש:Guycn2/ViewText.js
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
$(() => {
"use strict";
const $hiddenText = $(".discussion_page_hidden_text");
if (!$hiddenText.length) {
return;
}
$hiddenText.css("cursor", "pointer").on("click", async () => {
await mw.loader.using(["oojs-ui-windows", "mediawiki.storage"]);
const messageDialog = new OO.ui.MessageDialog();
const windowManager = new OO.ui.WindowManager();
$(document.body).append(windowManager.$element);
windowManager.addWindows([messageDialog]);
const $dialogContent =
$("<div>").css({
display: "flex",
flexDirection: "column",
alignItems: "center",
gap: ".8rem"
}).append(
$("<label>", {
"for": "discussion_page_hidden_text_dialog_date",
text: "נא לבחור תאריך:"
}),
$("<input>", {
type: "date",
id: "discussion_page_hidden_text_dialog_date",
value:
mw.storage.get("wp_discussion_page_hidden_text_date") ||
"2022-05-10"
})
);
const openWindow = windowManager.openWindow(messageDialog, {
message: $dialogContent
});
let selectedDate;
openWindow.opening.done(data => {
const $dateInput =
$(data.message[0]).find("#discussion_page_hidden_text_dialog_date");
selectedDate = $dateInput.val();
$dateInput.on("change", () => {
selectedDate = $dateInput.val();
});
});
openWindow.closing.done(async (data) => {
if (data && data.action === "accept" && selectedDate) {
await mw.loader.using("mediawiki.util");
open(mw.util.getUrl(null, {
action: "history",
"date-range-to": selectedDate
}));
mw.storage.set(
"wp_discussion_page_hidden_text_date",
selectedDate
);
}
windowManager.$element.remove();
});
});
});