✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ webm004.cluster127.gra.hosting.ovh.net ​🇻​♯➤ 6.18.42-ovh-vps-grsec-zfs+ #1 SMP 🇾​♯➤ 2026

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 54.36.91.62 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.216.67
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ _dyuweyrj4,_dyuweyrj4r,dl

𝗛𝗢𝗠𝗘
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /home/docteuh/www/envhttps/application/meta/modules//hoverTooltip_bu.js
// src/utils/hoverTooltip.js
import {useEffect} from '@wordpress/element';

const tooltipStyles = {
    display: 'none',
    position: 'absolute',
    backgroundColor: 'rgba(0,0,0,0.8)',
    color: 'white',
    padding: '10px',
    borderRadius: '3px',
    fontSize: '13px',
    left: '0px',
    zIndex: 1000,
};

const allowedClasses = ['enable_firewall', '404_blocking_threshold', '404_blocking_lockout_duration'];

const hasAllowedClass = (element) => {
    if (!element) return false;

    // Check if the element itself has the allowed class
    const elementHasClass = allowedClasses.some((cls) => {
        const hasClass = element.classList.contains(cls);
        return hasClass;
    });

    if (elementHasClass) return true;

    // Check child elements for the allowed class
    const children = Array.from(element.querySelectorAll('*'));

    return children.some((child) =>
        allowedClasses.some((cls) => {
            const hasClass = child.classList.contains(cls);
            return hasClass;
        })
    );
};

const hoverTooltip = (ref, condition, tooltipText) => {
    useEffect(() => {
        const element = ref.current;
        if (!element) return;

        if (!hasAllowedClass(element)) return;

        let tooltip = document.getElementById('rsssl-hover-tooltip');
        if (!tooltip) {
            tooltip = document.createElement('div');
            tooltip.id = 'rsssl-hover-tooltip';
            Object.assign(tooltip.style, tooltipStyles);
        }

        tooltip.innerHTML = tooltipText;

        const parent = element.parentElement;
        if (parent.style.position !== 'relative') {
            parent.style.position = 'relative';
        }

        if (!parent.contains(tooltip)) {
            parent.appendChild(tooltip);
        }

        const showTooltip = () => {
            // Show tooltip when condition (originalDisabled) is true
            // This means show it when the field is disabled by PHP
            if (condition) {
                tooltip.style.display = 'block';
            }
        };

        const hideTooltip = () => {
            tooltip.style.display = 'none';
        };

        // Use the parent element as the hover target since the select
        // itself might not trigger hover events when disabled
        const target = element.parentElement;
        target.addEventListener('mouseover', showTooltip);
        target.addEventListener('mouseout', hideTooltip);

        return () => {
            target.removeEventListener('mouseover', showTooltip);
            target.removeEventListener('mouseout', hideTooltip);
            if (parent && parent.contains(tooltip) && !document.body.contains(element)) {
                parent.style.position = '';
                tooltip.remove();
            }
        };
    }, [ref.current, condition]); // Only re-run if ref or condition changes
};

export default hoverTooltip;


Current_dir [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
19 Sep 2026 3.06 AM
docteuh / users
0755
toast
--
11 Sep 2026 8.39 AM
docteuh / users
0755
wizard
--
11 Sep 2026 8.39 AM
docteuh / users
0755
GridBlock.js
1.118 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
LICENSE
1.045 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
MenuData.js
9.838 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
ModalControl.js
0.463 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
ModalData-20260903235149.js
0.782 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
ModalData.js
0.782 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
TaskElement.js
4.363 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
animations.css
1.422 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
animations.css.map
0.345 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
animations.min.css
0.726 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
animations.scss
1.379 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
badges-20260903210302.css
0.955 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
badges.css
0.955 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
badges.css.map
0.249 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
badges.min.css
0.794 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
badges.scss
2.141 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
bullets.scss
1.295 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
buttons.scss
2.994 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
dashboard.scss
4.226 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
datatables.scss
10.296 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
header.scss
0.798 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
hoverTooltip_bu.js
2.843 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
icon-redirect-manager-20260827115920.svg
1.299 KB
23 Jun 2026 6.19 PM
docteuh / users
0644
icons.scss
0.488 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
introcontainer.css
0.825 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
introcontainer.css.map
0.26 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
introcontainer.min.css
0.609 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
introcontainer.scss
1.397 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
modal.scss
3.033 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
new-features.scss
0.747 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
notices.scss
0.021 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
onboarding.scss
0.601 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
other-plugins.scss
2.041 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
placeholder.css
2.881 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
placeholder.css.map
0.566 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
placeholder.min.css
2.44 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
placeholder.scss
1.688 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
premium_overlay.scss
1.442 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
progress.scss
5.311 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
ssltest.scss
0 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
tips-tricks.scss
1.138 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
tooltip.scss
0.297 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
two-fa.scss
0.851 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
webpack.feature.config.js
3.781 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
wizard.scss
4.756 KB
18 Jun 2026 6.25 PM
docteuh / users
0644
xml-rpc.scss
0.177 KB
18 Jun 2026 6.25 PM
docteuh / users
0644

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF