Bitrix-D7 23.9
 
Загрузка...
Поиск...
Не найдено
Класс Facet

Открытые члены

 __construct ($iblockId)
 
 isValid ()
 
 getIblockId ()
 
 getSkuIblockId ()
 
 getSkuPropertyId ()
 
 getStorage ()
 
 getDictionary ()
 
 lookupDictionaryValue ($valueId)
 
 query (array $filter, array $facetTypes=array(), $facetId=0)
 
 whereToSql (array $where, $tableAlias, $subsectionsCondition="")
 
 setSectionId ($sectionId)
 
 setPrices (array $prices)
 
 addNumericPropertyFilter ($propertyId, $operator, $value)
 
 addPriceFilter ($priceId, $operator, $value)
 
 addDictionaryPropertyFilter ($propertyId, $operator, $value)
 
 addDatetimePropertyFilter ($propertyId, $operator, $value)
 
 isEmptyWhere ()
 
 enableCurrencyConversion ($toCurrencyId, array $convertCurrencyId)
 

Защищенные члены

 getFacetFilter (array $facetTypes)
 
 getWhere ($facetToExclude)
 
 getSectionFilterProperty ($sectionId)
 
 getFilterPrices ()
 

Защищенные данные

 $iblockId = 0
 
 $valid = false
 
 $skuIblockId = 0
 
 $skuPropertyId = 0
 
 $sectionFilter = array()
 
 $priceFilter = null
 
 $toCurrencyId = 0
 
 $convertCurrencyId = array()
 
 $dictionary = null
 
 $storage = null
 
 $sectionId = 0
 
 $where = array()
 

Статические защищенные данные

static $catalog = null
 

Подробное описание

См. определение в файле facet.php строка 10

Конструктор(ы)

◆ __construct()

__construct ( $iblockId)
Аргументы
integer$iblockIdInformation block identifier.

См. определение в файле facet.php строка 33

Методы

◆ addDatetimePropertyFilter()

addDatetimePropertyFilter ( $propertyId,
$operator,
$value )

Adds a condition for further filtering.

Аргументы
integer$propertyIdIblock property identifier.
string$operatorComparing operator.
float$valueTimestamp to compare.
Возвращает
void

См. определение в файле facet.php строка 735

◆ addDictionaryPropertyFilter()

addDictionaryPropertyFilter ( $propertyId,
$operator,
$value )

Adds a condition for further filtering.

Аргументы
integer$propertyIdIblock property identifier.
string$operatorComparing operator.
float$valueValue to compare.
Возвращает
void

См. определение в файле facet.php строка 705

◆ addNumericPropertyFilter()

addNumericPropertyFilter ( $propertyId,
$operator,
$value )

Adds a condition for further filtering.

Аргументы
integer$propertyIdIblock property identifier.
string$operatorComparing operator.
float$valueValue to compare.
Возвращает
void

См. определение в файле facet.php строка 631

◆ addPriceFilter()

addPriceFilter ( $priceId,
$operator,
$value )

Adds a condition for further filtering.

Аргументы
integer$priceIdCatalog price identifier.
string$operatorComparing operator.
float$valueValue to compare.
Возвращает
void

См. определение в файле facet.php строка 668

◆ enableCurrencyConversion()

enableCurrencyConversion ( $toCurrencyId,
array $convertCurrencyId )

When called subsequent queries will use currency conversion for filtering. Works only with 'currency' module installed.

Аргументы
string$toCurrencyIdValid currency id for price value passed into addPriceFilter method.
array$convertCurrencyIdArray of valid currencies ids.
Возвращает
void

См. определение в файле facet.php строка 798

◆ getDictionary()

getDictionary ( )

Returns facet dictionary object.

Возвращает
\Bitrix\Iblock\PropertyIndex\Dictionary

См. определение в файле facet.php строка 115

◆ getFacetFilter()

getFacetFilter ( array $facetTypes)
protected

Returns array of facets id filtered against $facetTypes.

Аргументы
array$facetTypesFilter types.
Возвращает
integer[]

См. определение в файле facet.php строка 352

◆ getFilterPrices()

getFilterPrices ( )
protected

Returns list of price IDs for storing in the index.

Возвращает
integer[]

См. определение в файле facet.php строка 601

◆ getIblockId()

getIblockId ( )

Returns iblock identifier.

Возвращает
integer

См. определение в файле facet.php строка 75

◆ getSectionFilterProperty()

getSectionFilterProperty ( $sectionId)
protected

Returns list of properties IDs linked to the section according their "TYPE". Property has to be not only linked to the section, but has to be marked as smart filter one.

  • N - maps to Indexer::NUMERIC
  • S - to Indexer::STRING
  • F, E, G, L - to Indexer::DICTIONARY
Аргументы
integer$sectionIdSection for with properties will be returned.
Возвращает
integer[]

См. определение в файле facet.php строка 522

◆ getSkuIblockId()

getSkuIblockId ( )

Returns SKU iblock identifier.

Возвращает
integer

См. определение в файле facet.php строка 85

◆ getSkuPropertyId()

getSkuPropertyId ( )

Returns SKU property identifier.

Возвращает
integer

См. определение в файле facet.php строка 95

◆ getStorage()

getStorage ( )

Returns facet storage object.

Возвращает
\Bitrix\Iblock\PropertyIndex\Storage

См. определение в файле facet.php строка 105

◆ getWhere()

getWhere ( $facetToExclude)
protected

Returns where condition without facet given.

Аргументы
integer$facetToExcludeFacet id.
Возвращает
array

См. определение в файле facet.php строка 379

◆ isEmptyWhere()

isEmptyWhere ( )

Returns true if not filters were applied.

Возвращает
boolean

См. определение в файле facet.php строка 784

◆ isValid()

isValid ( )

Returns true if filter rewrite is possible.

Возвращает
boolean

См. определение в файле facet.php строка 65

◆ lookupDictionaryValue()

lookupDictionaryValue ( $valueId)

Returns string by its identifier in the dictionary.

Аргументы
integer$valueIdValue identifier for dictionary lookup.
Возвращает
string

См. определение в файле facet.php строка 127

◆ query()

query ( array $filter,
array $facetTypes = array(),
$facetId = 0 )

Returns filter join with index tables.

$filter parameters same as for CIBlockElement::getList

$facetTypes allows to get only "checkboxes" or "prices" and such.

Аргументы
array$filterFilter to apply additionally to filter elements.
array$facetTypesWhich facet types will be used.
integer$facetIdWhich facet category filter should not be applied.
Возвращает
\Bitrix\Main\DB\Result|false

См. определение в файле facet.php строка 145

◆ setPrices()

setPrices ( array $prices)

Sets prices for further filtering.

Returns this object instance for calls chaining.

Аргументы
array$pricesPrices identifiers.
Возвращает
\Bitrix\Iblock\PropertyIndex\Facet

См. определение в файле facet.php строка 587

◆ setSectionId()

setSectionId ( $sectionId)

Sets section context for further filtering.

Returns this object instance for calls chaining.

Аргументы
integer$sectionIdSection identifier.
Возвращает
\Bitrix\Iblock\PropertyIndex\Facet

См. определение в файле facet.php строка 572

◆ whereToSql()

whereToSql ( array $where,
$tableAlias,
$subsectionsCondition = "" )

Converts structured $where array into sql condition or empty string.

Аргументы
array$whereStructured condition.
string$tableAliasTable alias to use in sql.
string$subsectionsConditionIf not empty will be added.
Возвращает
string

См. определение в файле facet.php строка 399

Данные класса

◆ $catalog

$catalog = null
staticprotected

См. определение в файле facet.php строка 25

◆ $convertCurrencyId

$convertCurrencyId = array()
protected

См. определение в файле facet.php строка 19

◆ $dictionary

$dictionary = null
protected

См. определение в файле facet.php строка 22

◆ $iblockId

$iblockId = 0
protected

См. определение в файле facet.php строка 12

◆ $priceFilter

$priceFilter = null
protected

См. определение в файле facet.php строка 17

◆ $sectionFilter

$sectionFilter = array()
protected

См. определение в файле facet.php строка 16

◆ $sectionId

$sectionId = 0
protected

См. определение в файле facet.php строка 27

◆ $skuIblockId

$skuIblockId = 0
protected

См. определение в файле facet.php строка 14

◆ $skuPropertyId

$skuPropertyId = 0
protected

См. определение в файле facet.php строка 15

◆ $storage

$storage = null
protected

См. определение в файле facet.php строка 24

◆ $toCurrencyId

$toCurrencyId = 0
protected

См. определение в файле facet.php строка 18

◆ $valid

$valid = false
protected

См. определение в файле facet.php строка 13

◆ $where

$where = array()
protected

См. определение в файле facet.php строка 28