利用者:1108-Kiju/calculate.js

出典: 謎の百科事典もどき『エンペディア(Enpedia)』
ナビゲーションに移動 検索に移動

注意: 保存後、変更を確認するにはブラウザーのキャッシュを消去する必要がある場合があります。

  • Firefox / Safari: Shift を押しながら 再読み込み をクリックするか、Ctrl-F5 または Ctrl-R を押してください (Mac では ⌘-R)
  • Google Chrome: Ctrl-Shift-R を押してください (Mac では ⌘-Shift-R)
  • Internet Explorer / Microsoft Edge: Ctrl を押しながら 最新の情報に更新 をクリックするか、Ctrl-F5 を押してください
  • Opera: Ctrl-F5を押してください
if (window.location.href.includes("&listing=true")) {
  const contributionTitles = document.querySelectorAll('.mw-contributions-title');
  const listSection = document.createElement('div');
  contributionTitles.forEach(titleElement => {
    const titleText = titleElement.textContent;
    const listItem = document.createElement('div');
    listItem.textContent = `# [[${titleText}]]`;
    listSection.appendChild(listItem);
  });
  const listHeader = document.createElement('h2');
  listHeader.textContent = 'リスト';
  const copyButton = document.createElement('input');
  copyButton.type = 'button';
  copyButton.value = 'コピー';
  copyButton.style.backgroundColor = '#0073ea';
  copyButton.style.color = 'white';
  copyButton.style.padding = '5px 10px';
  copyButton.style.border = 'none';
  copyButton.style.borderRadius = '5px';
  copyButton.style.cursor = 'pointer';
  copyButton.style.marginTop = '10px';
  copyButton.addEventListener('click', () => {
    const textToCopy = Array.from(listSection.children)
      .map(item => item.textContent)
      .join('\n');
    const tempTextarea = document.createElement('textarea');
    tempTextarea.value = textToCopy;
    document.body.appendChild(tempTextarea);
    tempTextarea.select();
    document.execCommand('copy');
    document.body.removeChild(tempTextarea);
    alert('コピーしました');
  });
  const contentSub = document.querySelector('#contentSub');
  contentSub.appendChild(listHeader);
  contentSub.appendChild(listSection);
  contentSub.appendChild(copyButton);
}


var username = mw.config.get( 'wgUserName' );
mw.util.addPortletLink(
		'p-tb',
		'https://enpedia.rxy.jp/w/index.php?target=' + username + '&namespace=0&newOnly=1&start=2024-01-01&end=2024-01-31&limit=5000&title=%E7%89%B9%E5%88%A5%3A%E6%8A%95%E7%A8%BF%E8%A8%98%E9%8C%B2&listing=true',
		'集計',
		't-calculate',
		'現在投稿した記事を集計'
);