Перейти до вмісту

MediaWiki:Common.js: відмінності між версіями

login v2.25: inject .mw-register-panel
(Country main pages: collapse all Minerva sections by default)
(login v2.25: inject .mw-register-panel)
Рядок 159: Рядок 159:
   drawer.insertBefore(banner, drawer.firstChild);
   drawer.insertBefore(banner, drawer.firstChild);
   aboutLi.parentNode.removeChild(aboutLi);
   aboutLi.parentNode.removeChild(aboutLi);
});
/* ========================================
  Auth pages: інжект правої панелі реєстрації
  поряд з лівою панеллю входу (Special:UserLogin / Special:CreateAccount)
  ======================================== */
mw.loader.using(["mediawiki.util"], function () {
  $(function () {
    var specialName = mw.config.get("wgCanonicalSpecialPageName");
    if (specialName !== "Userlogin" && specialName !== "CreateAccount") return;
    var loginCard = document.querySelector(".mw-body");
    if (!loginCard) return;
    // Якщо вже додано — не дублюємо
    if (document.querySelector(".mw-register-panel")) return;
    var isLogin = (specialName === "Userlogin");
    // Створити правy панель
    var panel = document.createElement("aside");
    panel.className = "mw-register-panel";
    var title = document.createElement("div");
    title.className = "mw-register-panel__title";
    title.textContent = isLogin ? "Створити акаунт" : "Вже з нами?";
    var sub = document.createElement("div");
    sub.className = "mw-register-panel__sub";
    sub.textContent = isLogin
      ? "Долучайтесь до спільноти українців за кордоном"
      : "Увійдіть у свій акаунт";
    var btn = document.createElement("a");
    btn.className = "mw-register-panel__cta";
    if (isLogin) {
      btn.href = mw.util.getUrl("Special:CreateAccount");
      btn.textContent = "Зареєструватись";
    } else {
      btn.href = mw.util.getUrl("Special:UserLogin");
      btn.textContent = "Увійти";
    }
    panel.appendChild(title);
    panel.appendChild(sub);
    panel.appendChild(btn);
    // Вставити одразу після лівої картки
    loginCard.parentNode.insertBefore(panel, loginCard.nextSibling);
  });
});
});