TORN - Quick Bazaar

Helps add items to your bazaar quicker by copying the item quantity available and value to the clipboard so you just need to Ctl+V.

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

You will need to install an extension such as Tampermonkey to install this script.

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         TORN - Quick Bazaar
// @namespace    bazaar
// @version      1.0
// @description  Helps add items to your bazaar quicker by copying the item quantity available and value to the clipboard so you just need to Ctl+V.
// @author       DrCode[1973772]
// @match        https://www.torn.com/bazaar.php
// @require      https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
// @grant        GM_setClipboard
// @run-at       document-idle
// ==/UserScript==

(function() {
    'use strict';
    var observer = new MutationObserver(function(mutations) {
        if($("div.amount").length) {
            observer.disconnect();
        }
        $("div.amount").children("input.clear-all").focus(function() {
            var rgx = /.* x(.*)$/g;
            var quantityText = $(this).parent().parent().parent().prev().children(".name-wrap").text();
            var match = rgx.exec(quantityText);
            var quantity = match == null ? 1 : match[1];
            GM_setClipboard(quantity, "text");
        });
        $("div.price").children("div.input-money-group").children("input.clear-all").focus(function() {
            var priceText = $(this).parent().parent().parent().next().children().text().substring(1).replace(/\D/g, '');
            var price = Math.ceil(parseInt(priceText) * 0.9999);
            GM_setClipboard(price, "text");
        });
    });
    var observerTarget = $(".content-wrapper")[0];
    var observerConfig = { attributes: false, childList: true, characterData: false, subtree: true };
    observer.observe(observerTarget, observerConfig);
})();