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

De Wikincat
Ir para navegação Ir para pesquisar
(test)
Etiqueta: Revertido
(Desfeita a edição 3756 de Jaider.ferreira (Discussão))
Etiqueta: Desfazer
Linha 1: Linha 1:
/* jshint esversion: 10 */
/* jshint esversion: 10 */
const indicatorsByTags = {
/* jshint esversion: 10 */
'022': {
var indicatorsByTags = require( 'MediaWiki:IndicatorsByTags.js' );
ind1: [
'# - Nível não especificado',
'0 - Recurso contínuo de interesse internacional',
'1 - Recurso contínuo sem interesse internacional',
],
},
'041': {
ind1: [
'# - Informação não fornecida',
'0 - Não é tradução/não inclui tradução',
'1 - É ou inclui tradução',
],
ind2: [
'# - Código MARC para idiomas',
'7 - Fonte especificada no subcampo $2',
],
},
'045': {
ind1: [
'# - subcampos $b ou $c não estão presentes',
'0 - data/período únicos',
'1 - data/período múltiplos',
'2 - extensão de datas/períodos',
],
},
'080': {
ind1: ['# - Informação não fornecida', '0 - Completa', '1 - Abreviada'],
},
'082': {
ind1: [
'0 - Edição completa',
'1 - Edição abreviada',
'7 - Outra edição especificada no subcampo $2',
],
ind2: [
'# - Informação não fornecida',
'0 - Atribuído pela LC',
'4 - Atribuído por outra agência',
],
},
100: {
ind1: ['1 - Sobrenome', '0 - Prenome', '3 - Nome de família'],
},
245: {
ind1: [
'0 - Entrada principal para o título (sem entrada principal para uma autoria)',
'1 - Entrada secundária para o título (entrada principal para uma autoria)',
],
ind2: [
'0 - Caracteres a serem desprezados',
'1 - Caracteres a serem desprezados',
'2 - Caracteres a serem desprezados',
'3 - Caracteres a serem desprezados',
'4 - Caracteres a serem desprezados',
'5 - Caracteres a serem desprezados',
'6 - Caracteres a serem desprezados',
'7 - Caracteres a serem desprezados',
'8 - Caracteres a serem desprezados',
'9 - Caracteres a serem desprezados',
],
},
260: {
ind1: [
'# - Não se aplica/nenhuma informação fornecida/editor mais antigo',
'2 - Editor intermediário',
'3 - Editor atual',
],
},
650: {
ind1: [
'# - Nenhuma informação fornecida',
'0 - Nível não especificado',
'1 - Primário',
'2 - Secundário',
],
ind2: [
'4 - Fonte não especificada',
'0 - Library of Congress Subject Headings (LCSH)',
"1 - LC subject headings for children's literature",
'2 - Medical Subject Headings',
'3 - National Agricultural Library subject authority file',
'5 - Canadian Subject Headings',
'6 - Répertoire de vedettes-matière',
'7 - Fonte especificada no subcampo 2',
],
},
700: {
ind1: ['1 - Sobrenome', '0 - Prenome', '3 - Nome de família'],
ind2: ['# - Nenhuma informação fornecida', '2 - Entrada analítica'],
},
};


function setIndOptions(event, ind) {
function setIndOptions(event, ind) {

Edição das 22h42min de 20 de março de 2024

/* jshint esversion: 10 */
const indicatorsByTags = {
  '022': {
    ind1: [
      '# - Nível não especificado',
      '0 - Recurso contínuo de interesse internacional',
      '1 - Recurso contínuo sem interesse internacional',
    ],
  },
  '041': {
    ind1: [
      '# - Informação não fornecida',
      '0 - Não é tradução/não inclui tradução',
      '1 - É ou inclui tradução',
    ],
    ind2: [
      '# - Código MARC para idiomas',
      '7 - Fonte especificada no subcampo $2',
    ],
  },
  '045': {
    ind1: [
      '# - subcampos $b ou $c não estão presentes',
      '0 - data/período únicos',
      '1 - data/período múltiplos',
      '2 - extensão de datas/períodos',
    ],
  },
  '080': {
    ind1: ['# - Informação não fornecida', '0 - Completa', '1 - Abreviada'],
  },
  '082': {
    ind1: [
      '0 - Edição completa',
      '1 - Edição abreviada',
      '7 - Outra edição especificada no subcampo $2',
    ],
    ind2: [
      '# - Informação não fornecida',
      '0 - Atribuído pela LC',
      '4 - Atribuído por outra agência',
    ],
  },
  100: {
    ind1: ['1 - Sobrenome', '0 - Prenome', '3 - Nome de família'],
  },
  245: {
    ind1: [
      '0 - Entrada principal para o título (sem entrada principal para uma autoria)',
      '1 - Entrada secundária para o título (entrada principal para uma autoria)',
    ],
    ind2: [
      '0 - Caracteres a serem desprezados',
      '1 - Caracteres a serem desprezados',
      '2 - Caracteres a serem desprezados',
      '3 - Caracteres a serem desprezados',
      '4 - Caracteres a serem desprezados',
      '5 - Caracteres a serem desprezados',
      '6 - Caracteres a serem desprezados',
      '7 - Caracteres a serem desprezados',
      '8 - Caracteres a serem desprezados',
      '9 - Caracteres a serem desprezados',
    ],
  },
  260: {
    ind1: [
      '# - Não se aplica/nenhuma informação fornecida/editor mais antigo',
      '2 - Editor intermediário',
      '3 - Editor atual',
    ],
  },
  650: {
    ind1: [
      '# - Nenhuma informação fornecida',
      '0 - Nível não especificado',
      '1 - Primário',
      '2 - Secundário',
    ],
    ind2: [
      '4 - Fonte não especificada',
      '0 - Library of Congress Subject Headings (LCSH)',
      "1 - LC subject headings for children's literature",
      '2 - Medical Subject Headings',
      '3 - National Agricultural Library subject authority file',
      '5 - Canadian Subject Headings',
      '6 - Répertoire de vedettes-matière',
      '7 - Fonte especificada no subcampo 2',
    ],
  },
  700: {
    ind1: ['1 - Sobrenome', '0 - Prenome', '3 - Nome de família'],
    ind2: ['# - Nenhuma informação fornecida', '2 - Entrada analítica'],
  },
};

function setIndOptions(event, ind) {
  const { target } = event;
  let tagFromDropdown = '';
  tagFromDropdown =
    target
      .closest('.instanceMain')
      .querySelector('.oo-ui-inputWidget-input')
      .getAttribute('title') ?? '   ';
  tagFromDropdown = tagFromDropdown.substring(0, 3);

  if (tagFromDropdown in indicatorsByTags) {
    target.innerHTML = '';
    const indArr = indicatorsByTags[tagFromDropdown][ind] ?? ['# - Indefinido'];

    for (let i = 0; i < indArr.length; i += 1) {
      const option = document.createElement('option');
      option.setAttribute('value', indArr[i][0]);
      option.innerText = indArr[i];
      target.appendChild(option);
    }
  } else {
    target.innerHTML = '';
    const option = document.createElement('option');
    option.setAttribute('value', '#');
    option.innerText = '# - Indefinido';
    target.appendChild(option);
  }
}

function setIndicators() {
  const inds1 = document.body.querySelectorAll('[origname="Field[ind1]"');
  const inds2 = document.body.querySelectorAll('[origname="Field[ind2]"');
  inds1.forEach((ind1Elem) => {
    ind1Elem.addEventListener('focusin', (event) => {
      setIndOptions(event, 'ind1');
    });
  });
  inds2.forEach((elem) => {
    elem.addEventListener('focusin', (event) => {
      setIndOptions(event, 'ind2');
    });
  });
}