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/catalog/store-enable-wizard/src/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/catalog/store-enable-wizard/src/enable-trait.js
import { Text } from 'main.core';
import { EnableWarning } from './enable-warning';
import { IconHint } from './icon-hint';
import { PopupField } from './popup-field';
import { Service } from './service';

import 'ui.forms';
import 'ui.buttons';

export const EnableTrait = {
	data() {
		return {
			isShownPopup: false,
			isEnabling: false,
		};
	},
	props: {
		options: {
			type: Object,
			required: true,
		},
	},
	components: {
		IconHint,
		EnableWarning,
		PopupField,
	},
	methods: {
		onBack()
		{
			this.$emit('back');
		},
		/**
		 * @abstract
		 */
		getMode(): string
		{
			throw new Error('Abstract method "getMode" must be implemented');
		},
		getEnableOptions(): Object
		{
			return {};
		},
		onEnableSuccess(): void
		{
			this.$Bitrix.Application.instance.sendEnableDoneEvent(this.getMode(), 'success');

			const slider = BX.SidePanel.Instance.getTopSlider();
			if (slider)
			{
				slider.getData().set('isInventoryManagementEnabled', true);
				slider.getData().set('inventoryManagementMode', this.getMode());
				slider.close();
			}
		},
		onEnableError(error): void
		{
			this.$Bitrix.Application.instance.sendEnableDoneEvent(
				this.getMode(),
				`error_${error?.customData?.analyticsCode ?? 'unknown'}`,
			);

			top.BX.UI.Notification.Center.notify({ content: Text.encode(error.message) });
		},
		enable(): void
		{
			if (this.isEnabling)
			{
				return;
			}

			this.isEnabling = true;

			this.$Bitrix.Application.instance.sendEnableProceededEvent(this.getMode());

			Service.enable({
				analyticsLabel: this.makeAnalyticsData(),
				data: {
					mode: this.getMode(),
					options: this.getEnableOptions(),
				},
			})
				.then(() => this.onEnableSuccess())
				.catch((error) => this.onEnableError(error))
				.finally(() => {
					this.isEnabling = false;
					this.isShownPopup = false;
				});
		},
		makeAnalyticsData(): Object
		{
			const result = {
				iME: 'inventoryManagementEnabled',
			};
			if (this.options.inventoryManagementSource)
			{
				result.inventoryManagementSource = this.options.inventoryManagementSource;
			}

			return result;
		},
		openHelp(): void
		{
			if (top.BX && top.BX.Helper)
			{
				top.BX.Helper.show(this.getHelpLink());
			}
		},
		/**
		 * @abstract
		 */
		getHelpLink(): string
		{
			throw new Error('Abstract method "getHelpLink" must be implemented');
		},
	},
};

Youez - 2016 - github.com/yon3zu
LinuXploit