403Webshell
Server IP : 108.167.142.43  /  Your IP : 216.73.216.115
Web Server : Apache
System : Linux gator4174.hostgator.com 5.14.0-687.39.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Aug 18 06:09:16 EDT 2026 x86_64
User : delarice ( 2406)
PHP Version : 8.3.36
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home2/delarice/public_html/wp-content/plugins/elementor/assets/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home2/delarice/public_html/wp-content/plugins/elementor/assets/js/youtube-handler.js
"use strict";

(function() {

//#region \0rolldown/runtime.js
	var __defProp = Object.defineProperty;
	var __name = (target, value) => __defProp(target, "name", {
		value,
		configurable: true
	});

//#endregion

//#region modules/atomic-widgets/elements/atomic-youtube/youtube-handler.js
	var _frontendHandlers = (globalThis.elementorV2.frontendHandlers);
	var getYoutubeVideoIdFromUrl = (url) => {
		const match = url.match(/^(?:https?:\/\/)?(?:www\.)?(?:m\.)?(?:youtu\.be\/|youtube\.com\/(?:(?:watch)?\?(?:.*&)?vi?=|(?:embed|v|vi|user|shorts)\/))([^?&"'>]+)/);
		return match ? match[1] : null;
	};
	var loadYouTubeAPI = () => {
		return new Promise((resolve) => {
			if (window.YT && window.YT.loaded) {
				resolve(window.YT);
				return;
			}
			const YOUTUBE_IFRAME_API_URL = "https://www.youtube.com/iframe_api";
			if (!document.querySelector(`script[src="${YOUTUBE_IFRAME_API_URL}"]`)) {
				const tag = document.createElement("script");
				tag.src = YOUTUBE_IFRAME_API_URL;
				const firstScriptTag = document.getElementsByTagName("script")[0];
				firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
			}
			const checkYT = () => {
				if (window.YT && window.YT.loaded) resolve(window.YT);
				else setTimeout(checkYT, 350);
			};
			checkYT();
		});
	};
	(0, _frontendHandlers.register)({
		elementType: "e-youtube",
		id: "e-youtube-handler",
		callback: ({ element }) => {
			const youtubeElement = document.createElement("div");
			youtubeElement.style.height = "100%";
			element.appendChild(youtubeElement);
			const settingsAttr = element.getAttribute("data-settings");
			const parsedSettings = settingsAttr ? JSON.parse(settingsAttr) : {};
			const videoId = getYoutubeVideoIdFromUrl(parsedSettings.source);
			if (!videoId) return;
			let player;
			let observer;
			const prepareYTVideo = (YT) => {
				const playerOptions = {
					videoId,
					events: {
						onReady: () => {
							if (parsedSettings.mute) player.mute();
							if (parsedSettings.autoplay) player.playVideo();
						},
						onStateChange: (event) => {
							if (event.data === YT.PlayerState.ENDED && parsedSettings.loop) player.seekTo(parsedSettings.start || 0);
						}
					},
					playerVars: {
						controls: parsedSettings.controls ? 1 : 0,
						rel: parsedSettings.rel ? 0 : 1,
						cc_load_policy: parsedSettings.cc_load_policy ? 1 : 0,
						autoplay: parsedSettings.autoplay ? 1 : 0,
						start: parsedSettings.start,
						end: parsedSettings.end
					}
				};
				if (parsedSettings.privacy) {
					playerOptions.host = "https://www.youtube-nocookie.com";
					playerOptions.origin = window.location.hostname;
				}
				player = new YT.Player(youtubeElement, playerOptions);
				return player;
			};
			if (parsedSettings.lazyload) {
				observer = new IntersectionObserver((entries) => {
					if (entries[0].isIntersecting) {
						loadYouTubeAPI().then((apiObject) => prepareYTVideo(apiObject));
						observer.unobserve(element);
					}
				});
				observer.observe(element);
			} else loadYouTubeAPI().then((apiObject) => prepareYTVideo(apiObject));
			return () => {
				if (player && "function" === typeof player.destroy) {
					player.destroy();
					player = null;
				}
				if (element.contains(youtubeElement)) element.removeChild(youtubeElement);
				if (observer && "function" === typeof observer.disconnect) {
					observer.disconnect();
					observer = null;
				}
			};
		}
	});

//#endregion
})();
//# sourceMappingURL=youtube-handler.js.map

Youez - 2016 - github.com/yon3zu
LinuXploit