Twitter Widget Fixer for TT1069

Fix Twitter widgets on TT1069 which are not working

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name        Twitter Widget Fixer for TT1069
// @namespace   https://greasyfork.org/users/790126-erohmst
// @version     0.1.1
// @description Fix Twitter widgets on TT1069 which are not working
// @author      erohmst
// @match       *://www.tt1069.com/bbs/thread-*
// @match       *://www.tt1069.com/bbs/forum.php*
// @grant       none
// ==/UserScript==

(function() {
  'use strict';
  const widgetScript = document.createElement('script');
  widgetScript.src = 'https://platform.twitter.com/widgets.js';
  widgetScript.async = true;
  widgetScript.charset = 'utf-8';
  document.head.append(widgetScript);
  
  const embeds = document.querySelectorAll('iframe[src^="https://twitter.com/i/videos/tweet/"]');
  for(const emb of embeds) {
    const tweetId = emb.src.replace('https://twitter.com/i/videos/tweet/', '');
    emb.insertAdjacentHTML('beforebegin', '<blockquote class="twitter-tweet"><a href="https://twitter.com/i/status/'
                           + tweetId + '?ref_src=twsrc%5Etfw"></a></blockquote>');
    emb.remove();
  }
})();