MediaWiki:MakeMarcFieldHelpLink.js: mudanças entre as edições

De Wikincat
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
Linha 1: Linha 1:
/*jshint esversion: 8 */
/* jshint esversion: 8 */
let tag = '';
let tagFromDropdown = '';
let tagFromDropdown = '';



Edição das 20h27min de 14 de março de 2024

/* jshint esversion: 8 */
let tagFromDropdown = '';

function makeMarcFieldHelpLink() {
  const tagInputs = document.body.querySelectorAll('.tagInput');
  tagInputs.forEach((elem) => {
    const marcFieldHelpLink = document.createElement('a');
    marcFieldHelpLink.setAttribute('target', '_blank');
    marcFieldHelpLink.innerText = '(?)';

    const marcFieldHelpLinkClass = elem
      .closest('table')
      .querySelector('.marcFieldHelpLink');
    marcFieldHelpLinkClass.innerHTML = '';
    marcFieldHelpLinkClass.appendChild(marcFieldHelpLink);

    // find the tag value from the chosen dropdown
    marcFieldHelpLinkClass.addEventListener('mouseover', (event) => {
      tagFromDropdown =
        event.target
          .closest('.instanceMain')
          .querySelector('.oo-ui-inputWidget-input')
          .getAttribute('title') || '00x';
      tagFromDropdown = tagFromDropdown.substring(0, 3);
      marcFieldHelpLink.setAttribute(
        'title',
        `Documentação do campo ${tagFromDropdown}`,
      );
      // build the URL
      if (
        window.location.href.match(/A\d{6}/) ||
        window.location.href.match(/AutRecord/)
      ) {
        marcFieldHelpLink.setAttribute(
          'href',
          `http://marc.febab.org/a${tagFromDropdown}`,
        );
      } else {
        marcFieldHelpLink.setAttribute(
          'href',
          `https://www.loc.gov/marc/bibliographic/bd${tagFromDropdown}.html`,
        );
      }
    });
  });
}