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/modules/grain.iiko/lib/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/grain.iiko/lib/modifierimage.php
<?php

namespace Grain\Iiko;

use \Bitrix\Main\Entity;
use \Bitrix\Main\Type;
use \Bitrix\Main\Localization\Loc;

Loc::loadMessages(__FILE__);

class ModifierImageTable extends Entity\DataManager
{
	/*
	public static function getTableName()
	{
		return 'b_grain_iiko_modifier_image'; // auto create
	}
	*/

	public static function getUfId()
	{
		return 'GRAIN_IIKO_MODIFIER_IMAGE';
	}

	/*public static function getConnectionName()
	{
		return 'default';
	}
	*/

	public static function getMap()
	{
		return array(

			new Entity\IntegerField('ID', array(
				'primary' => true,
				'autocomplete' => true
			)),

			new Entity\IntegerField('SORT',array(
				'default_value' => 100,
			)),

			new Entity\IntegerField('FILE_ID', array(
				'required' => true,
			)),

			new Entity\IntegerField('MODIFIER_ID', array(
				'required' => true,
			)),

            new Entity\ReferenceField(
                'MODIFIER',
                '\Grain\Iiko\ModifierListTable',
                array('=this.MODIFIER_ID' => 'ref.ID')
            ),

		);
	}
	
	public static function saveImages($modifierId,$imageLinks)
	{
		$modifierId = intval($modifierId);
		if($modifierId<=0 || !is_array($imageLinks))
			return false;
			
		$rsExistingData = static::getList(array('filter'=>array('MODIFIER_ID'=>$modifierId)));
		
		$existingData = array();
		$existingNames = array();
		while($image=$rsExistingData->fetch())
		{
			$image['FILE'] = \CFile::GetFileArray($image['FILE_ID']);
			$existingData[] = $image;
			$existingNames[] = $image['FILE']['ORIGINAL_NAME'];
		}
		
		$newExistingNames = array();
		foreach($imageLinks as $imageLink)
		{
			$basename = pathinfo($imageLink,PATHINFO_BASENAME);
			$newExistingNames[] = $basename;
			if(in_array($basename,$existingNames))
				continue;
			if(!$fileId=\CFile::SaveFile(\CFile::MakeFileArray($imageLink),"grain.iiko"))
				continue;
			if(!$file=\CFile::GetFileArray($fileId))
				continue;
			static::add(array(
				'MODIFIER_ID' => $modifierId,
				'FILE_ID' => $fileId,
			));
		} 
		
		foreach($existingData as $existingFile)
		{
			if(in_array($existingFile['FILE']['ORIGINAL_NAME'],$newExistingNames))
				continue;
			static::delete($existingFile['ID']);
		}
	}
	
	public static function OnDelete(\Bitrix\Main\Entity\Event $event)
	{
		$id = $event->getParameter("id");
		if(is_array($id))
			$id = $id["ID"];
		
		if(!$image=static::getById($id)->fetch())
			return;
		
		\CFile::Delete($image['FILE_ID']);
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit