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/components/bitrix/bizproc.script.edit/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/components/bitrix/bizproc.script.edit/class.php
<?php
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) die();

use Bitrix\Main;

class BizprocScriptEditComponent extends \CBitrixComponent
{
	protected function listKeysSignedParameters()
	{
		return ['SCRIPT_ID'];
	}

	public function onPrepareComponentParams($params)
	{
		$params["SCRIPT_ID"] = (int)($params["SCRIPT_ID"] ?? null);
		if (isset($params['DOCUMENT_TYPE_SIGNED']) && Main\Loader::includeModule('bizproc'))
		{
			$params['DOCUMENT_TYPE_SIGNED'] = htmlspecialcharsback($params['DOCUMENT_TYPE_SIGNED']);
			$params['DOCUMENT_TYPE'] = CBPDocument::unSignDocumentType($params['DOCUMENT_TYPE_SIGNED']);
		}
		else
		{
			$params['DOCUMENT_TYPE'] = null;
		}

		$params["PLACEMENT"] = isset($params["PLACEMENT"]) ? (string)$params["PLACEMENT"] : null;
		$params["SET_TITLE"] = (($params["SET_TITLE"] ?? null) == "N" ? "N" : "Y");

		return $params;
	}

	public function executeComponent()
	{
		global $APPLICATION;

		\Bitrix\UI\Toolbar\Facade\Toolbar::deleteFavoriteStar();

		if (!Main\Loader::includeModule('bizproc'))
		{
			return false;
		}

		$scriptId = $this->arParams['SCRIPT_ID'];
		$isNew = empty($scriptId);

		if ($this->arParams['SET_TITLE'] === 'Y')
		{
			$helpButton = \Bitrix\UI\Buttons\CreateButton::create([
				'text' => Main\Localization\Loc::getMessage('BP_SCR_ED_CMP_HELP_BUTTON_TITLE'),
				'color' => \Bitrix\UI\Buttons\Color::LIGHT_BORDER,
				'dataset' => [
					'toolbar-collapsed-icon' => \Bitrix\UI\Buttons\Icon::INFO,
				],
				'click' => new \Bitrix\UI\Buttons\JsCode(
					"top.BX.Helper.show('redirect=detail&code=13281632');",
				),
			]);

			$APPLICATION->SetTitle(GetMessage($isNew? "BP_SCR_ED_CMP_TITLE_NEW" : "BP_SCR_ED_CMP_TITLE"));
			\Bitrix\UI\Toolbar\Facade\Toolbar::addButton($helpButton, \Bitrix\UI\Toolbar\ButtonLocation::AFTER_TITLE);
		}

		if ($isNew && empty($this->arParams['DOCUMENT_TYPE']))
		{
			return $this->showError(GetMessage("BP_SCR_ED_CMP_SCRIPT_CREATE_ERROR"));
		}

		$userId = Main\Engine\CurrentUser::get()->getId();

		if ($isNew && !\Bitrix\Bizproc\Script\Manager::canUserCreateScript($this->arParams['DOCUMENT_TYPE'], $userId))
		{
			return $this->showError(GetMessage("BP_SCR_ED_CMP_SCRIPT_CAN_CREATE_ERROR"));
		}

		if (!$isNew && !\Bitrix\Bizproc\Script\Manager::canUserEditScript($scriptId, $userId))
		{
			return $this->showError(GetMessage("BP_SCR_ED_CMP_SCRIPT_CAN_EDIT_ERROR"));
		}

		if ($isNew)
		{
			$script = \Bitrix\Bizproc\Script\Manager::createScript(
				$this->arParams['DOCUMENT_TYPE']
			);
		}
		else
		{
			$script = \Bitrix\Bizproc\Script\Manager::getById($scriptId)->collectValues();
		}

		if (!$script)
		{
			return $this->showError(GetMessage("BP_SCR_ED_CMP_SCRIPT_NOT_FOUND"));
		}

		$documentType = [$script['MODULE_ID'], $script['ENTITY'], $script['DOCUMENT_TYPE']];

		$this->arResult['SCRIPT'] = $script;
		$this->arResult['DOCUMENT_TYPE_SIGNED'] = CBPDocument::signDocumentType($documentType);

		$this->includeComponentTemplate();
	}

	protected function showError($message): bool
	{
		$this->arResult['errorMessage'] = (string)$message;
		$this->includeComponentTemplate('error');

		return false;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit