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/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/modules/landing/lib/node.php
<?php
namespace Bitrix\Landing;

abstract class Node
{
	/**
	 * Must return js class - frontend handler.
	 * @return string
	 */
	abstract public static function getHandlerJS();

	/**
	 * Save data for this node.
	 * @param \Bitrix\Landing\Block $block Block instance.
	 * @param string $selector Selector.
	 * @param array $data Data array.
	 * @return void
	 */
	abstract public static function saveNode(\Bitrix\Landing\Block $block, $selector, array $data);

	/**
	 * Get data for this node.
	 * @param \Bitrix\Landing\Block $block Block instance.
	 * @param string $selector Selector.
	 * @return array
	 */
	abstract public static function getNode(\Bitrix\Landing\Block $block, $selector);

	/**
	 * Prepare item-node of manifest.
	 * @param \Bitrix\Landing\Block $block Block instance.
	 * @param array $manifest Manifest of current node.
	 * @param array $manifestFull Full manifest of block (by ref).
	 * @return array|null Return null no delete from manifest.
	 */
	//abstract public static function prepareManifest(\Bitrix\Landing\Block $block, array $manifest, array &$manifestFull = array());

	/**
	 * If exists, means that this node may participate in searching. Must returns content for search.
	 * @param Block &$block Block instance.
	 * @param string $selector Selector.
	 * @return array
	 */
	//abstract public static function getSearchableNode($block, $selector);

	/**
	 * Prepares some content for search.
	 * @param string $value Text value.
	 * @return string
	 */
	protected static function prepareSearchContent($value)
	{
		if (is_string($value))
		{
			$value = strip_tags($value);
			$value = preg_replace('/[\s]{2,}/', ' ', $value);
			$value = trim($value);
		}

		return $value;
	}

	/**
	 * Prepare field definition for node.
	 *
	 * @param array $field
	 * @return array|null
	 */
	public static function prepareFieldDefinition(array $field)
	{
		$field = array_change_key_case($field, CASE_LOWER);
		$field['id'] = static::prepareStringValue($field, 'id');
		$field['type'] = static::prepareStringValue($field, 'type');
		$field['name'] = static::prepareStringValue($field, 'name');
		if (empty($field['id']) || empty($field['type']) || empty($field['name']))
		{
			return null;
		}

		/** @var Node $className */
		$className = Node\Type::getClassName($field['type']);
		if (!class_exists($className))
		{
			return null;
		}
		return $className::validateFieldDefinition($field);
	}

	/**
	 * @param array $field
	 * @return array|null
	 */
	protected static function validateFieldDefinition(array $field)
	{
		return [
			'id' => $field['id'],
			'type' => $field['type'],
			'name' => $field['name']
		];
	}

	/**
	 * @param array $row
	 * @param string $name
	 * @return string|null
	 */
	protected static function prepareStringValue(array $row, $name)
	{
		if (empty($row[$name]) || !is_string($row[$name]))
		{
			return null;
		}
		$row[$name] = trim($row[$name]);
		if ($row[$name] === '')
		{
			return null;
		}
		return $row[$name];
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit