PageSourceSearch

https://spinnersuk.com/wp-content/plugins/dynamic-content-for-elementor/assets/js/advanced-video.js?ver=3.4.9

js spinnersuk.com collected 2026-09-26 09:20:48 UTC 2,264 bytes, 81 lines download raw bytes

1(function ($) {
2	var WidgetElements_AdvancedVideoHandler = function ($scope, $) {
3		var elementSettings = dceGetElementSettings($scope);
4		var id_scope = $scope.attr("data-id");
5		var customControls = elementSettings.dce_video_custom_controls;
6
7		if (customControls) {
8			var videoType = elementSettings.video_type;
9			var autoplay = Boolean(elementSettings.autoplay);
10			var lightbox = Boolean(elementSettings.lightbox);
11			var muted = Boolean(elementSettings.mute);
12			var loop = Boolean(elementSettings.loop);
13			var controls = elementSettings.dce_video_controls;
14			var captionsOnStart =
15				elementSettings.dce_captions_on_start === "yes";
16			var captionsLang = elementSettings.dce_captions_lang;
17
18			var generatePlyrVideo = function () {
19				var videoContainer = ".elementor-element-" + id_scope;
20				var videoSelector = videoContainer + " .elementor-wrapper";
21				if (videoType == "hosted") {
22	
23					var videoElement = $scope.find('.elementor-video')[0];
24					if (videoElement) {
25						videoSelector = videoElement;
26					}
27				}
28
29				// Lightbox
30				if (lightbox) {
31					videoContainer = "#elementor-lightbox-" + id_scope;
32					videoSelector =
33						videoContainer + " .elementor-video-container > div";
34				}
35				const plyr = new Plyr(videoSelector, {
36					controls: controls,
37					autoplay: autoplay,
38					muted: muted,
39					captions: {
40						active: captionsOnStart,
41						language: captionsLang,
42					},
43					loop: { active: loop },
44					disableContextMenu: false,
45					hideControls: false,
46				});
47				$scope.data("dce-plyr", plyr);
48				$scope.addClass("dce-video-plyr");
49			};
50
51			if ($scope.find(".elementor-custom-embed-image-overlay").length) {
52				$scope.on(
53					"mouseup",
54					".elementor-custom-embed-image-overlay",
55					function () {
56						if (lightbox) {
57							setTimeout(function () {
58								generatePlyrVideo();
59							}, 1000);
60						} else {
61							setTimeout(function () {
62								generatePlyrVideo();
63							}, 400);
64						}
65					},
66				);
67			} else {
68				setTimeout(function () {
69					generatePlyrVideo();
70				}, 1000);
71			}
72		}
73	};
74
75	$(window).on("elementor/frontend/init", function () {
76		elementorFrontend.hooks.addAction(
77			"frontend/element_ready/video.default",
78			WidgetElements_AdvancedVideoHandler,
79		);
80	});
81})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.