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/main/core/core_uploader/src/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/main/core/core_uploader/src/dropzone.js
import {Type, Runtime, Loc, Dom} from 'main.core';
import {EventEmitter} from 'main.core.events';
import Options from './options';
import type {UploaderType, UploadQueueType} from "./types";

export default class DropZone {
	dndObject;

	constructor(dropZoneNode: ?Element)
	{
		if (Type.isStringFilled(dropZoneNode))
		{
			dropZoneNode = document.getElementById(dropZoneNode);
		}

		if (Type.isDomNode(dropZoneNode) && BX.DD && BX.ajax.FormData.isSupported())
		{
			this.initialize(dropZoneNode);
		}
	}

	initialize(dropZoneNode: ?Element)
	{
		this.dndObject = new BX.DD.dropFiles(dropZoneNode);
		if (!this.dndObject || !this.dndObject.supported())
		{
			return;
		}
		const handlers = {
			dropFiles: ({compatData: [files, e]}) => {
				if (e
					&& e["dataTransfer"]
					&& e["dataTransfer"]["items"]
					&& e["dataTransfer"]["items"].length > 0)
				{
					let replaceFileArray = false;
					const fileCopies = [];
					let item;
					for (let i = 0; i < e["dataTransfer"]["items"].length; i++) {
						item = e["dataTransfer"]["items"][i];
						if (item["webkitGetAsEntry"] && item["getAsFile"])
						{
							replaceFileArray = true;
							const entry = item["webkitGetAsEntry"]();
							if (entry && entry.isFile)
							{
								fileCopies.push(item["getAsFile"]());
							}
						}
					}
					if (replaceFileArray)
						files = fileCopies;
				}
				EventEmitter.emit(this, Options.getEventName('caught'), {files: files});
			},
			dragEnter : ({compatData: [e]}) => {
				let isFileTransfer = false;
				if (e && e["dataTransfer"] && e["dataTransfer"]["types"])
				{
					for (var i = 0; i < e["dataTransfer"]["types"].length; i++)
					{
						if (e["dataTransfer"]["types"][i] === "Files")
						{
							isFileTransfer = true;
							break;
						}
					}
				}
				if (isFileTransfer)
				{
					this.dndObject.DIV.classList.add('bxu-file-input-over');
					BX.onCustomEvent(this, 'dragEnter', [e]); // compatibility event
				}
			},
			dragLeave : ({compatData: [e]}) => {
				this.dndObject.DIV.classList.remove('bxu-file-input-over');
				BX.onCustomEvent(this, 'dragLeave', [e]); // compatibility event
			}
		}
		EventEmitter.subscribe(this.dndObject, 'dropFiles', handlers.dropFiles);
		EventEmitter.subscribe(this.dndObject, 'dragEnter', handlers.dragEnter);
		EventEmitter.subscribe(this.dndObject, 'dragLeave' , handlers.dragLeave);
	}

	destroy()
	{
		EventEmitter.unsubscribeAll(this.dndObject);
		delete this.dndObject.DIV;
		delete this.dndObject;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit