Fix NUDE Playground Comment Paste

Fixes the issue where pasting text into comment fields is blocked on nudeplayground.com.

K instalaci tototo skriptu si budete muset nainstalovat rozšíření jako Tampermonkey, Greasemonkey nebo Violentmonkey.

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

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Violentmonkey.

K instalaci tohoto skriptu si budete muset nainstalovat rozšíření jako Tampermonkey nebo Userscripts.

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

K instalaci tohoto skriptu si budete muset nainstalovat manažer uživatelských skriptů.

(Už mám manažer uživatelských skriptů, nechte mě ho nainstalovat!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(Už mám manažer uživatelských stylů, nechte mě ho nainstalovat!)

// ==UserScript==
// @name         Fix NUDE Playground Comment Paste
// @name:ru      Fix NUDE Playground Comment Paste
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Fixes the issue where pasting text into comment fields is blocked on nudeplayground.com.
// @description:ru Исправляет проблему с блокировкой вставки текста в поля комментариев на nudeplayground.com.
// @author       DenParabal
// @match        https://nudeplayground.com/*
// @grant        none
// @run-at       document-start
// @license      MIT
// ==/UserScript==


(function() {
    'use strict';

    window.addEventListener('paste', function(event) {
        const target = document.activeElement;

        if (target && (target.classList.contains('commentBox') || target.classList.contains('post-area-input'))) {
            const items = event.clipboardData && event.clipboardData.items;
            let hasImage = false;

            if (items) {
                for (let i = 0; i < items.length; i++) {
                    if (items[i].type.indexOf('image') !== -1) {
                        hasImage = true;
                        break;
                    }
                }
            }

            // If no image is detected, block the site's listener from stopping the paste event.
            // This allows the browser to execute the default text paste behavior.
            if (!hasImage) {
                event.stopImmediatePropagation();
            }
        }
    }, true);
})();