itch.io "Open in app" button

"Open in app" button for itch.io

2016-05-25 기준 버전입니다. 최신 버전을 확인하세요.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         itch.io "Open in app" button
// @namespace    http://tampermonkey.net/
// @version      1.1.0
// @description  "Open in app" button for itch.io
// @author       Amos Wenger
// @match        https://*.itch.io/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    var pathTag = document.querySelector("meta[name='itch:path']");
    if (!pathTag) {
        return;
    }

    var leftCol = document.querySelector(".left_col");
    if (leftCol) {
        var gameButton = document.createElement("div");
        gameButton.innerHTML = "<div class=\"uploads has_buttons\">" +
            "<h2>Open in app</h2>" +
            "<div class=\"upload\">" +
              "<a href=\"itchio://" + pathTag.content + "\" class=\"button\">" +
                "Open in app" +
              "</a>" +
              "<span style=\"padding: 0 .5em;\">or</span>" +
              "<a class=\"button\" href=\"https://itch.io/app\">" +
                "<span class=\"icon icon-download\"></span> Download the itch app" +
              "</a>" +
            "</div>" +
          "</div>";
        leftCol.insertBefore(gameButton, leftCol.querySelector(".uploads"));
        return;
    }

    var userLinks = document.querySelector(".profile_column .user_links");
    if (userLinks) {
        var userButton = document.createElement("div");
        userButton.innerHTML = "<div class=\"user_website\"><a href=\"itchio://" + pathTag.content + "\">Open in app</a></div>";
        userLinks.appendChild(userButton);
        return;
    }
})();