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

De Wikincat
Ir para navegação Ir para pesquisar
Sem resumo de edição
Etiqueta: Revertido
(Desfeita a edição 3728 de Jaider.ferreira (Discussão))
Etiqueta: Desfazer
Linha 20: Linha 20:
.closest('.instanceMain')
.closest('.instanceMain')
.querySelector('.oo-ui-inputWidget-input')
.querySelector('.oo-ui-inputWidget-input')
.getAttribute('title') || 'summary';
.getAttribute('title') || '00x';
tagFromDropdown = tagFromDropdown.substring(0, 3);
tagFromDropdown = tagFromDropdown.substring(0, 3);
marcFieldHelpLink.setAttribute(
marcFieldHelpLink.setAttribute(

Edição das 12h44min de 15 de março de 2024

/* jshint esversion: 8 */
function makeMarcFieldHelpLink() {
  const inputs = document.body.querySelectorAll('[mappingtemplate="BibRecord/tags"]');
  inputs.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) => {
      let tagFromDropdown = '';
      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`,
        );
      }
    });
  });
}