Simple sign in button

Remove the intrusive header bar in favour of a button.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey, Greasemonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

You will need to install an extension such as Tampermonkey to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey किंवा Violentmonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला Tampermonkey यासारखे एक्स्टेंशन इंस्टॉल करावे लागेल..

ही स्क्रिप्ट इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्क्रिप्ट व्यवस्थापक एक्स्टेंशन इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्क्रिप्ट व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला Stylus सारखे एक्स्टेंशन इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

ही स्टाईल इंस्टॉल करण्यासाठी तुम्हाला एक युझर स्टाईल व्यवस्थापक इंस्टॉल करावे लागेल.

(माझ्याकडे आधीच युझर स्टाईल व्यवस्थापक आहे, मला इंस्टॉल करू द्या!)

// ==UserScript== 
// @name        Simple sign in button
// @author      Schimon Jehudah, Adv.
// @copyright   2024 - 2025, Schimon Jehudah (http://schimon.i2p)
// @license     AGPL-3.0-only; https://www.gnu.org/licenses/agpl-3.0.en.html
// @namespace   org.openuserjs.sjehuda.simplebutton
// @description Remove the intrusive header bar in favour of a button.
// @match       https://github.com/* 
// @version     25.05.14
// @grant       none
// @homepageURL https://greasyfork.org/scripts/515813-simple-sign-in-button
// @supportURL  https://greasyfork.org/scripts/515813-simple-sign-in-button/feedback
// ==/UserScript==

var signInLink = document.evaluate('//a[contains(@href, "/login?")]/@href', document, null, XPathResult.STRING_TYPE).stringValue;

if (signInLink) {
  document.querySelector('header').remove();
  let elementsignIn = document.createElement('a');
  //elementsignIn.textContent = '🔌';
  elementsignIn.textContent = 'Connect';
  elementsignIn.title = 'You are encouraged to migrate to cgit, Codeberg, Forgejo, Gitea, or GitLab.';
  elementsignIn.setAttribute ('aria-label', 'You are encouraged to migrate to cgit, Codeberg, Forgejo, Gitea, or GitLab.');
  elementsignIn.style.background = '#000';
  elementsignIn.style.color = '#fff';
  elementsignIn.href = signInLink;
  elementsignIn.className = 'tooltipped tooltipped-sw btn-sm btn';
  let elementLi = document.createElement('li');
  elementLi.append(elementsignIn);
  let elementButtons = document.querySelector('#repository-details-container > ul');
  if (elementButtons) {
    elementButtons.append(elementLi);
  } else {
    let elementHeaderSlim = document.createElement('div');
    elementHeaderSlim.style.background = '#333';
    elementHeaderSlim.style.fontWeight = 'bold';
    elementHeaderSlim.style.padding = '1em';
    elementHeaderSlim.style.textAlign = 'center';
    elementsignIn.textContent = 'Connect';
    elementsignIn.title = 'You are encouraged to migrate to cgit, Codeberg, Forgejo, Gitea, or GitLab.';
    elementsignIn.href = signInLink;
    elementsignIn.style.color = '#fff';
    elementHeaderSlim.append(elementsignIn);
    document.body.prepend(elementHeaderSlim);
  }
}