AnonSec Shell
Server IP : 85.193.89.191  /  Your IP : 3.133.131.29
Web Server : Apache
System : Linux 956367-cx40159.tmweb.ru 3.10.0-1160.105.1.el7.x86_64 #1 SMP Thu Dec 7 15:39:45 UTC 2023 x86_64
User : bitrix ( 600)
PHP Version : 8.1.27
Disable Function : NONE
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/bitrix/www/bitrix/components/bitrix/news.detail/templates/bootstrap_v4/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/bitrix/www/bitrix/components/bitrix/news.detail/templates/bootstrap_v4/script.js
(function (window)
{
	if (!!window.JCNewsSlider)
	{
		return;
	}

	window.JCNewsSlider = function (containerId, options)
	{
		if (containerId && options)
		{
			var container = BX(containerId);
			if (container)
			{
				var sliderImages = BX.findChildByClassName(container, options.imagesContainerClassName, true);
				var sliderLeft = BX.findChildByClassName(container, options.leftArrowClassName, true);
				var sliderRight = BX.findChildByClassName(container, options.rightArrowClassName, true);
				var sliderControl = BX.findChildByClassName(container, options.controlContainerClassName, true);
				if (sliderImages && sliderLeft && sliderRight && sliderControl)
				{
					var slider = new JCNewsSlider;
					slider.Init(sliderImages, sliderControl, sliderLeft, sliderRight);
				}
			}
		}
	};

	window.JCNewsSlider.prototype.Init = function(sliderImages, sliderControl, sliderLeft, sliderRight)
	{
		this.time = 0.5;
		this.type = 'accelerated';
		//swipe
		this.threshold = 50;
		this.allowedTime = 500;
		this.startX = 0;
		this.startY = 0;
		this.startTime = 0;

		this.sliderImages = sliderImages;
		BX.bind(sliderImages, 'touchstart', BX.delegate(this.touchStart, this));
		BX.bind(sliderImages, 'touchend', BX.delegate(this.touchEnd, this));

		this.sliderControls = BX.findChildren(sliderControl, {tagName: 'LI'}, true);
		var proxy = function(j, func)
		{
			return function()
			{
				return func(j);
			}
		}
		for (var j = 0; j < this.sliderControls.length; j++)
		{
			BX.bind(this.sliderControls[j], 'click', proxy(j, BX.delegate(this.slideTo, this)));
		}

		this.sliderLeft = sliderLeft;
		BX.bind(sliderLeft, 'click', BX.delegate(this.slideLeft, this));

		this.sliderRight = sliderRight;
		BX.bind(sliderRight, 'click', BX.delegate(this.slideRight, this));
	};

	window.JCNewsSlider.prototype.slideRight = function()
	{
		if (this.animation)
			return;
		this.animation = true;

		var p = parseInt(this.sliderImages.style.left, 10);
		if (p <= -100 * (this.sliderControls.length-1))
		{
			this.animation = false;
			return;
		}

		var _this = this;
		(new BX.fx({
			start: p,
			finish: p - 100,
			time: this.time,
			type: this.type,
			callback: function(res){
				_this.sliderImages.style.left = res + '%';
			},
			callback_start: function(){
				_this.sliderImages.style.left = p + '%';
			},
			callback_complete: function(){
				_this.sliderImages.style.left = (p - 100) + '%';
				_this.adjustSliderControls(-(p - 100) / 100);
				_this.animation = false;
			}
		})).start();
	};

	window.JCNewsSlider.prototype.slideLeft = function()
	{
		if (this.animation)
			return;
		this.animation = true;

		var p = parseInt(this.sliderImages.style.left, 10);
		if (p >= 0)
		{
			this.animation = false;
			return;
		}

		var _this = this;
		(new BX.fx({
			start: p,
			finish: p + 100,
			time: this.time,
			type: this.type,
			callback: function(res){
				_this.sliderImages.style.left = res + '%';
			},
			callback_start: function(){
				_this.sliderImages.style.left = p + '%';
			},
			callback_complete: function(){
				_this.sliderImages.style.left = (p + 100) + '%';
				_this.adjustSliderControls(-(p + 100) / 100);
				_this.animation = false;
			}
		})).start();
	};

	window.JCNewsSlider.prototype.slideTo = function(j)
	{
		if (this.animation)
			return;
		this.animation = true;

		var p = parseInt(this.sliderImages.style.left, 10);
		if (p == (-j * 100))
		{
			this.animation = false;
			return;
		}

		var _this = this;
		(new BX.fx({
			start: p,
			finish: -j * 100,
			time: this.time,
			type: this.type,
			callback: function(res){
				_this.sliderImages.style.left = res + '%';
			},
			callback_start: function(){
				_this.sliderImages.style.left = p + '%';
				_this.adjustSliderControls(j);
			},
			callback_complete: function(){
				_this.sliderImages.style.left = (-j * 100) + '%';
				_this.animation = false;
			}
		})).start();
	};

	window.JCNewsSlider.prototype.adjustSliderControls = function(i)
	{
		for (var j = 0; j < this.sliderControls.length; j++)
		{
			if (i == j)
				BX.addClass(this.sliderControls[j], 'current');
			else
				BX.removeClass(this.sliderControls[j], 'current');
		}
	};

	window.JCNewsSlider.prototype.touchStart = function(e)
	{
		var touchObject = e.changedTouches[0];
		this.startX = touchObject.pageX;
		this.startY = touchObject.pageY;
		this.startTime = new Date().getTime();
		e.preventDefault();
	};

	window.JCNewsSlider.prototype.touchEnd = function(e)
	{
		var touchObject = e.changedTouches[0];
		var distance = touchObject.pageX - this.startX;
		var elapsedTime = new Date().getTime() - this.startTime;

		if (elapsedTime <= this.allowedTime)
		{
			if (distance > this.threshold)
				this.slideLeft();
			else if (distance < -this.threshold)
				this.slideRight();
		}
		e.preventDefault()
	};
}
)(window);

Anon7 - 2022
AnonSec Team