Открытые члены | |
_init () | |
getDebugActions () | |
keepSpecDirs ($bool) | |
keepUpdateProductCategory ($bool) | |
getPropObjects () | |
afterObjectLoad () | |
beforeWrite ($flag) | |
afterWrite ($flag) | |
fillProperty ($onlyVisible=false) | |
fillOffersStock () | |
fillOffersStockStars () | |
getMainOffer () | |
getOffers () | |
fillOffers () | |
fillAffiliateDynamicNum () | |
setWarehousesForDynamicNum ($warehouse_ids) | |
fillMultiOffers () | |
fillVirtualMultiOffers () | |
getVirtualMultiOffersByPropertyKeys () | |
getWarehouseGroupStocks ($offer_id=null, $only_available_warehouses=true) | |
getMultiOffersByPropertyKeys () | |
getUnit ($property=null) | |
getRatingPercent () | |
getRatingBall () | |
getMaxBall () | |
getCommentsNum () | |
inDir ($alias) | |
getSpecDirs ($only_id=false) | |
specDirCount () | |
fillCategories () | |
getMainDir () | |
inCompareList () | |
inFavorite () | |
fillCost () | |
calculateUserCost () | |
updateSearchIndex () | |
getOffersBarcodes () | |
getImageStub () | |
fillImages () | |
getMainImage ($width=null, $height=null, $type= 'xy', $absolute=false) | |
getOfferMainImage ($offer_id=null, $width=null, $height=null, $type= 'xy') | |
getImages ($without_first=false) | |
hasImage () | |
hasCost () | |
getCost ($cost_id=null, $offer_id=null, $format=true, $inBaseCurrency=false) | |
getBaseCost ($cost_id=null, $offer_id=null) | |
getOldCost ($offer_id=null, $format=true, $inBaseCurrency=false) | |
getUserCost () | |
setUserCost ($cost) | |
getOfferCost ($offer_key, $xcost) | |
getCurrency () | |
getCurrencyCode () | |
getBaseCurrency () | |
getUrl ($absolute=false) | |
getVisiblePropertyList ($cache=true, $exportVisible=false) | |
getPropertyValueByTitle ($name, $default=null, $textView=true, $available=false) | |
cleanForBasket () | |
getProductsDialog () | |
getProductsDialogConcomitant () | |
getRecommended ($return_hidden=false, $add_dir_recommended=true, $hide_self=true) | |
isHaveRecommended () | |
getConcomitant ($add_dir_concomitant=true) | |
isHaveConcomitant () | |
getMetaTitle () | |
getMetaKeywords () | |
getMetaDescription () | |
getOrderType () | |
getBarCode ($offer_id) | |
getOfferTitle ($offer_id) | |
addProperty ($property_id, $value, $is_my=1) | |
getShortDescription ($max_len=300) | |
getWeight ($offer_id=null, $weight_unit=null) | |
shouldReserve () | |
canBeReserved () | |
getOfferCount () | |
getNum ($offer_id=null) | |
getSKU ($offer_id=null) | |
getCurrencies () | |
getCostList () | |
getMySpecDir () | |
setFastMarkOffersUse ($bool) | |
isOffersUse () | |
setFastMarkMultiOffersUse ($bool) | |
isMultiOffersUse () | |
setFastMarkVirtualMultiOffersUse ($bool) | |
isVirtualMultiOffersUse () | |
fillMultiOffersPhotos () | |
isAvailable ($only_main_offer=true) | |
getBrand () | |
getWarehouseStock () | |
getWarehouseFullStock () | |
getWarehouseStickInfo ($cache=true) | |
getAvailableWarehouses ($offer_id=null, $cache=true) | |
useOffersUnconvertedPropsdata ($bool=true) | |
getFiles ($access=null) | |
setDefaultProductDimensions ($width, $height, $depth) | |
getDefaultProductDimensions ($dimention_type=null) | |
getButtonTypeByOffer ($offer_sortn) | |
getListProperties (Dir $dir=null) | |
getMinPrice ($cost_id=null, $format=true, $in_base_currency=false, &$has_difference=null) | |
getAmountStep ($offer_id=0, $cache=true) | |
getMinOrderQuantity ($cache=true) | |
getMaxOrderQuantity ($cache=true) | |
checkPropExist () | |
getDimensionsObject () | |
getFlag ($flag) | |
setFlag (string $flag, $value=true) | |
getYoutubeVideoId () | |
getYoutubeVideoType () | |
getOffersJson (array $options=[], $as_array=false, $cache=true, $update_db=true) | |
![]() | |
__construct ($id=null, $cache=true) | |
getPrimaryKeyProperty () | |
saveInCache ($id) | |
loadFromCache ($id) | |
![]() | |
static | __construct () |
__destruct () | |
fillDefaults () | |
getClassParameter ($key=null) | |
setClassParameter ($key, $value=null) | |
issetClassParameter ($key=null) | |
setLocalParameter ($key, $value=null) | |
getLocalParameter ($key, $default=null) | |
getParameter ($key, $default=null) | |
setPropertyIterator (PropertyIterator $iterator) | |
checkRights ($bool) | |
clear () | |
offsetExists ($offset) | |
offsetGet ($offset) | |
offsetSet ($offset, $value) | |
__set ($offset, $value) | |
__get ($offset) | |
offsetUnset ($offset) | |
getShortAlias () | |
load ($primaryKeyValue=null) | |
insert ($ignore=false, $on_duplicate_update_keys=[], $on_duplicate_uniq_fields=[]) | |
update ($primaryKey=null) | |
replace () | |
delete () | |
exists ($primaryKeyValue) | |
getFromArray (array $data, $remove_prefix=null, $mark_modify=true, $call_afterload_event=false) | |
getValues () | |
isModified ($property) | |
getPropertyIterator () | |
appendProperty (array $properties) | |
_getTableArray () | |
getPrimaryKeyProperty () | |
getProperties () | |
getProp ($offset) | |
save ($primaryKeyValue=null, $user_post=[], $post_var=null, $files_var=null) | |
replaceOn ($bool) | |
setWriteBit ($n) | |
usePostKeys (array $keys) | |
excludePostKeys (array $keys) | |
checkData ($user_post=[], $post_var=null, $files_var=null, $usekeys=null, $exclude=null, $flag=self::UPDATE_FLAG) | |
fillFromPost ($user_post=[], $post_var=null, $files_var=null, $usekeys=null, $exclude=null) | |
validateData ($flag=self::UPDATE_FLAG) | |
validate () | |
setCheckFields (array $fields) | |
escapeFields (array $escape_fields) | |
escapeAll ($bool) | |
checkField ($property) | |
addError ($string, $form=null) | |
addErrors ($array, $form=null) | |
getLastError () | |
getErrors () | |
getErrorsStr () | |
hasError () | |
getFormError () | |
getErrorsByForm ($key=null, $sep=null) | |
getDisplayErrors () | |
noWriteRights ($right=DefaultModuleRights::RIGHT_UPDATE) | |
getNonFormErrors () | |
clearErrors () | |
setTemporaryId () | |
setFormTemplate ($template) | |
dbUpdate () | |
addIndex ($fields, $type=self::INDEX_KEY, $name=null, $using=null) | |
getIndexes () | |
getForm (array $tpl_vars=null, $switch=null, $is_multiedit=false, $template=null, $tpl_maker=null, $tpl_folder=null) | |
getPropertyView ($key, $attributes=[], $view_params=[]) | |
getHiddenKeyVal () | |
addHiddenFields ($keys, $value=null) | |
addDebugActions (array $actions, $local=false) | |
addDebugAction (\RS\Debug\Action\AbstractAction $action, $local=false) | |
getDebugAttributes () | |
beforeWrite ($save_flag) | |
afterWrite ($save_flag) | |
afterObjectLoad () | |
getDebugActions () | |
dropTable () | |
exportErrors () | |
current () | |
key () | |
next () | |
rewind () | |
valid () | |
__sleep () | |
__wakeup () | |
__clone () | |
__isset ($offset) | |
getRightRead () | |
getRightCreate () | |
getRightUpdate () | |
getRightDelete () | |
getHtmlEncodedFields () | |
![]() | |
attachInstanceBehavior (BehaviorAbstract $behavior_class) | |
detachInstanceBehavior (BehaviorAbstract $behavior_class=null) | |
getAttachedBehaviors () | |
behaviorMethodExists ($method_name) | |
__call ($method_name, $arguments) | |
![]() | |
attachInstanceBehavior (\RS\Behavior\BehaviorAbstract $behavior_class) | |
detachInstanceBehavior (\RS\Behavior\BehaviorAbstract $behavior_class=null) | |
Открытые статические члены | |
static | resetOffersJsonCache ($id) |
![]() | |
static | loadSingle ($id) |
![]() | |
static | loadByWhere ($expr, array $values=null, $prefix= 'AND', $in_prefix= 'AND') |
static | _getTable () |
static | chkDepend ($coreobj, $value, $real_errtext, $real_chk, array $conditions, $real_params=[]) |
static | destroyClass () |
![]() | |
static | attachClassBehavior (BehaviorAbstract $behavior_class) |
static | detachClassBehavior (BehaviorAbstract $behavior_class=null) |
![]() | |
static | attachClassBehavior (\RS\Behavior\BehaviorAbstract $behavior_class) |
static | detachClassBehavior (\RS\Behavior\BehaviorAbstract $behavior_class=null) |
Поля данных | |
const | MAX_RATING = 5 |
const | IMAGES_TYPE = 'catalog' |
const | FILE_ACCESS_HIDE = 0 |
const | FILE_ACCESS_PUBLIC = 1 |
const | FILE_ACCESS_PAID = 2 |
const | ORDER_TYPE_BASKET = 'basket' |
const | ORDER_TYPE_UNOBTAINABLE = 'unobtainable' |
const | ORDER_TYPE_ADVORDER = 'advorder' |
const | FLAG_DONT_RESET_IMPORT_HASH = 'dont_reset_import_hash' |
const | FLAG_DONT_UPDATE_SEARCH_INDEX = 'dont_update_search_index' |
const | FLAG_DONT_UPDATE_DIR_COUNTER = 'dont_update_dir_counter' |
const | DP_NUM_HASH = 'dynamic_num_hash' |
const | DP_COST_ID = 'cost_id' |
const | DP_OLD_COST_ID = 'old_cost_id' |
const | VIDEO_TYPE_SHORTS = 'shorts' |
const | VIDEO_TYPE_DEFAULT = 'default' |
![]() | |
const | INSERT_FLAG = 'insert' |
const | UPDATE_FLAG = 'update' |
const | REPLACE_FLAG = 'replace' |
const | INDEX_PRIMARY = 'primary key' |
const | INDEX_UNIQUE = 'unique' |
const | INDEX_KEY = 'index' |
const | INDEX_FULLTEXT = 'fulltext' |
![]() | |
$class_behaviors = [] | |
$cache_behavior_instances = [] | |
$instance_behaviors = [] | |
Защищенные члены | |
buildOffersStockStars ($offer_items) | |
isMainOffer ($offer_id=null) | |
appendOfferDynamicNum (OrmRequest $q) | |
baseWarehouseAvailabilityRequest ($offer_id=null, $only_available_warehouses=true) | |
getCostIdByTitle ($title) | |
fixDynamicBefore ($data, $dynamic_params) | |
fixDynamicAfter ($data, $dynamic_params, $options) | |
updateOffersJson ($data, $update_db) | |
getOffersJsonMultioffersSection (array $data) | |
getOffersJsonOffersSection (array $data, $dynamic_params) | |
getOffersJsonVirtualSection ($data) | |
prepareOffersImagesUrl ($data, array $options) | |
![]() | |
_init () | |
![]() | |
initProperties () | |
_init () | |
_initDefaults () | |
afterInit () | |
getStorageInstance () | |
getTableEngine () | |
getPropertyHash ($is_multiedit, $switch=null) | |
Защищенные данные | |
$fast_mark_offers_use | |
$fast_mark_multioffers_use | |
$fast_mark_virtual_multioffers_use | |
$keep_update_prod_cat = true | |
$keep_spec_dirs = false | |
$cache_visible_property | |
$cache_amount_step = [] | |
$cache_min_order_quantity | |
$cache_max_order_quantity | |
$cache_warehouse_stick | |
$user_cost | |
$stock = null | |
$full_stock = null | |
$offer_xcost = [] | |
$dir_alias_cache = [] | |
$calculate_user_cost = null | |
$files | |
$dimensions_object | |
$flags = [] | |
![]() | |
$_values = [] | |
$_self_class | |
$_local_id | |
Статические защищенные данные | |
static | $table = 'product' |
static | $property_name_id = [] |
static | $cost_title_id = [] |
static | $spec_dirs = [] |
static | $cost_list |
static | $dirlist |
![]() | |
static | $self_singleton_cache = [] |
![]() | |
static | $db = DB_NAME |
static | $table = null |
static | $iterator = 0 |
static | $init_default_method = '_initDefaults' |
static | $local = [] |
static | $default_local_parameters |
static static | $class = [] |
static | $default_class_parameters |
Дополнительные унаследованные члены | |
![]() | |
static | $self_cache = [] |
![]() | |
static | getIdHash ($id) |
![]() | |
static | _tableName ($with_quotes=true) |
static | _dbName ($with_quotes=true) |
_init | ( | ) |
addProperty | ( | $property_id, | |
$value, | |||
$is_my = 1 |
|||
) |
Добавить характеристику для сохранения
integer | $property_id | - уникальный идентификатор характеристики |
mixed | $value | - значение характеристики |
integer | $is_my | - флаг означающий, что нужно добавить флаг перезаписывающий значения установленные через категорию |
afterObjectLoad | ( | ) |
Вызывается после загрузки объекта
afterWrite | ( | $flag | ) |
Вызывается после сохранения объекта
mixed | $flag | - флаг процедуры записи (insert, update, replace) |
DbException | |
EventException | |
RSException |
|
protected |
Добавляет к оъекту запроса комплектаций условие для выборки остатков только на связанных с филиалом складах. Результат будет в поле dynamic_num
OrmRequest | $q |
|
protected |
Возвращает базовый запрос на получение остатков по группам складов
int | $offer_id | - id комплектации |
bool | $only_available_warehouses | - искать остатки только на доступных складах |
beforeWrite | ( | $flag | ) |
Вызывается перед сохранением объекта
string | $flag | - строковое представление текущей операции (insert или update) |
|
protected |
Заполняет поле sticks у каждой комплектации
array | $offer_items |
calculateUserCost | ( | ) |
Пересчитает автоматически формируемые цены
canBeReserved | ( | ) |
Возвращает true, если товар потенциально может быть предзаказан. т.е. у него не установлен запрет на предзаказ и опция в админ панели "разрешить предзаказ товаров с нулевым остатком"
checkPropExist | ( | ) |
Проверка есть ли у какой то из комплектаций персональные характеристики
cleanForBasket | ( | ) |
Очищает поля, которые не понадобятся при отображении товара в корзине Это уменьшит объект в сериализованном виде.
fillAffiliateDynamicNum | ( | ) |
Добавляет к товару поле dynamic_num с остатком только на складах выбранного филиала. После вызова данного метода fillOffers() бдет также добавлять dynamic_num к каждой комплектации Актуально для Мегамаркета
fillCategories | ( | ) |
Загружает категории, в которых состоит товар
fillCost | ( | ) |
Подгружает все цены товара, если они не загружены раннее
fillImages | ( | ) |
Загружает фотографии для товара
fillMultiOffers | ( | ) |
Заполняет уровни многомерных комплектаций у товара
fillMultiOffersPhotos | ( | ) |
Подгружает к многомерным комплектациями фото к вариантам выбора Работает только, если у товара есть как комплектации так и многомерные комплектации
fillOffers | ( | ) |
Загружает информацию о комплектациях
fillOffersStock | ( | ) |
Заполняет значениями остатки по складам для разных складов
fillOffersStockStars | ( | ) |
Заполняет у товара остатки по складам в виде градаций по параметру warehouse_stars в настройках модуля Включает метки остатков только для тех складов, которые должны отображаться с учетом текущего филиала
fillProperty | ( | $onlyVisible = false | ) |
Загружает характеристики у товара
bool | $onlyVisible | - если true, вернёт только видимые не пустые характеристики |
fillVirtualMultiOffers | ( | ) |
Заполняет виртуальные многомерные комплектации у товаров
|
protected |
Заполняет корректно поля price, oldPrice. В случае необходимости догружает данные в БД по новым cost_id, old_cost_id
array | $data | |
array | $dynamic_params | динамические параметры |
array | $options |
|
protected |
Заполняет корректно поле num (остаток товара), в случае, если в JSON нет данных об остатках с учетом связанных с текущим филиалом складов, то остаток высчитывается и происходит частичная коррекция данных в offers_json в базе.
Заполняет корректно поля price, oldPrice.
array | $data | |
array | $dynamic_params | Динамические данные |
getAmountStep | ( | $offer_id = 0 , |
|
$cache = true |
|||
) |
Возвращает шаг количества товара
int | $offer_id | ID комплектации, если необходимо узнать ее шаг изменения количества |
bool | $cache | - использовать кеш |
getAvailableWarehouses | ( | $offer_id = null , |
|
$cache = true |
|||
) |
Возвращает количество складов, на которых доступен товар Перед вызовом данного метода нужно вызвать fillOffersStockStars
integer | $offer_id | - id комплектации |
bool | $cache | - использовать кэш |
getBarCode | ( | $offer_id | ) |
Возвращает артикул в зависимости от комплектации
integer | $offer_id | ID комплектации |
getBaseCost | ( | $cost_id = null , |
|
$offer_id = null |
|||
) |
Возвращает базовую цену товара
int | string | $cost_id | - id или Название цены. Если null, то текущая цена у пользователя. |
integer | $offer_id | - id комплектации |
getBaseCurrency | ( | ) |
Возвращает символ базовой валюты
getBrand | ( | ) |
Возвращает объект бренда товара
getButtonTypeByOffer | ( | $offer_sortn | ) |
Возвращает тип кнопки для показа в зависимости от переданной комплектации. Купить, заказать, не показывать. (buy|reservation|none)
integer | $offer_sortn | - сортировочный индекс комплектации |
getCommentsNum | ( | ) |
Возвращает количество комментариев
getConcomitant | ( | $add_dir_concomitant = true | ) |
Возвращает товары, сопутствующие для текущего
bool | $add_dir_concomitant | - Если true, будут добавлены сопутствующие из основной категории |
getCost | ( | $cost_id = null , |
|
$offer_id = null , |
|||
$format = true , |
|||
$inBaseCurrency = false |
|||
) |
Возвращает цену товара
int | string | $cost_id | - id или Название цены. Если null, то текущая цена у пользователя. |
integer | $offer_id | - id комплектации |
bool | $format | - форматировать цену |
bool | $inBaseCurrency | - возвращать стоимость в базовой валюте |
|
protected |
Возвращает id типа цены по его названию
string | $title | - имя типа цен |
getCostList | ( | ) |
Возвращает Список цен, имеющихся в системе
getCurrencies | ( | ) |
Возвращает список доступных валют Используется в карточке товара в админ. панели
getCurrency | ( | ) |
Возвращает текущую валюту
getCurrencyCode | ( | ) |
Возвращает код текущей валюты
getDebugActions | ( | ) |
Возвращает отладочные действия, которые можно произвести с объектом
getDefaultProductDimensions | ( | $dimention_type = null | ) |
string | $dimention_type | - тип габарита (width|height|depth). Если null - то вернёт массив значений |
getDimensionsObject | ( | ) |
Возвращает объект габаритов товара
getFiles | ( | $access = null | ) |
Возвращает привязанные файлы к товару
string|string[] | $access - идентификатор(ы) уровня доступа. |
getFlag | ( | $flag | ) |
Возвращает специальный флаг, список возможных флагов находится в константах класса
string | $flag | - флаг |
getImages | ( | $without_first = false | ) |
Возвращает список картинок, привязанных к товару
boolean | $without_first | - если true, то не возвращать первое фото |
getImageStub | ( | ) |
Возвращает объект фото-заглушку
getListProperties | ( | Dir | $dir = null | ) |
Возвращает характеристики, которые нужно отобразить в списке товаров в конкретной категории $dir
Dir | $dir | объект текущей категории |
getMainDir | ( | ) |
Возвращает объект главной директории
getMainImage | ( | $width = null , |
|
$height = null , |
|||
$type = 'xy' , |
|||
$absolute = false |
|||
) |
Возвращает ссылку на главную фотографию (первая в списке фотографий) При вызове без параметров возвращает объект фотографии
int | $width | - ширина в пикселях |
int | $height | - высота в пикселях |
string | $type | - тип ресайза |
boolean | $absolute | - возвращает абсолютный путь |
getMainOffer | ( | ) |
Возвращает основную комплектацию товара
getMaxBall | ( | ) |
Возвращает максимальное количество баллов, которое можно поставить данному товару
getMaxOrderQuantity | ( | $cache = true | ) |
Возвращает максимальное количество товара для заказа
bool | $cache | - использовать кеш |
getMetaDescription | ( | ) |
Возвращает описание из карточки товара или генерирует его
getMetaKeywords | ( | ) |
Возвращает заданные в админ панели ключевые слова, а если они не заданны, то генерирует новые
getMetaTitle | ( | ) |
Возвращает заголовок МЕТА данных товара, если нет, то берёт из категорий
getMinOrderQuantity | ( | $cache = true | ) |
Возвращает минимальное количество товара для заказа
bool | $cache | - использовать кеш |
getMinPrice | ( | $cost_id = null , |
|
$format = true , |
|||
$in_base_currency = false , |
|||
& | $has_difference = null |
||
) |
Возвращает минимальную цену за товар, если существуют различия в стоимости комплектаций
integer | null | $cost_id | ID или название цены. Если null, то будет использована цена по умолчанию |
bool | $format | если true, то будет возвращена строка "от 12 500", в противном случае 12500.00 |
boolean | $in_base_currency | если true, то будет возвращена цена всегда в базовой валюте |
bool | $has_difference | возвращает в данной переменно true, если цены комплектаций отличаются |
getMultiOffersByPropertyKeys | ( | ) |
Возвращает виртуальные многомерные комплектации, где в ключи идут ключи из параметров со множеством возможных значений
getMySpecDir | ( | ) |
Возвращает список спецкатегорий, в которых состоит товар
getNum | ( | $offer_id = null | ) |
Возвращает количество для необходимой комплектации или всего товара. Сперва возвращает динамически высчитанное значение из dynamic_num, если таковое есть. иначе - статическое значение из поля num.
Только данный метод может отдавать остаток с учетом всех опций в административной панели. Используйте его вместо обращения к свойству num напрямую.
int | null | $offer_id | - id комплектации или если null, то всего товара |
getOfferCost | ( | $offer_key, | |
$xcost | |||
) |
Возвращает цены откорректированные с учетом выбранной комплектации
integer | $offer_key | комплектация |
array | $xcost | массив: ID цены => Значение цены для нулевого offer'а |
getOfferCount | ( | ) |
Возвращает количество комплектаций
getOfferMainImage | ( | $offer_id = null , |
|
$width = null , |
|||
$height = null , |
|||
$type = 'xy' |
|||
) |
Возвращает ссылку на главную фотографию комплектации (первая в списке фотографий) если не указана ширина изображения - возвращает объект фотографии
mixed | $offer_id | - id комплектации |
mixed | $width | - ширина изображения |
mixed | $height | - высота изображения |
mixed | $type | - тип ресайза |
getOffers | ( | ) |
Возвращает список комплектаций товара
getOffersBarcodes | ( | ) |
Возвращает артикулы комплектаций, используется для построения поискового индекса
getOffersJson | ( | array | $options = [] , |
$as_array = false , |
|||
$cache = true , |
|||
$update_db = true |
|||
) |
Возвращает специально подготовленный JSON о комплектациях товара. Данный json будет использоваться в теме оформления для вывода комплектаций в списках, а также в карточке товара.
Данный JSON кэшируется у товара в базе, в случае если поле offers_json пустое, оно формируется налету и записывается в базу.
Данный JSON учитывает настройки ReadyScript и возвращает актуальную информацию даже с учетом текущего выбранного филиала (на Мегамаркете)
array | $options | Массив, с помощью которого можно указывать размер и масштабирование фото товара, ссылки на которые будут представлены в json. Пример: [ 'noVirtual' => false, // Если true, то не возвращать json, если товар содержит виртуальные многомерные 'disableCheckOffers' => false, //Если true, то будет возвращен массив с информацией даже об одной основной комплектации 'showStockNum' => true, //Если true, то у комплектаций будут оставаться сведения о конкретном количестве на складах. По умолчанию - false 'images' => [ 'url' => [ 'width' => 268, 'height' => 268, 'scale' => 'xy' ], 'url2x' => [ 'width' => 536, 'height' => 536, 'scale' => 'xy' ] ] ]; |
bool | $as_array | |
bool | $cache | Если true, то данные первично будут браться из кэша в базе. |
bool | $update_db | Если true, каждый раз, когда кэш в базе не найден, он будет там создан |
|
protected |
Подготавиливает секцию levels со сведениями об уровнях многомерной комплектации
array | $data | Начальный массив с данными о комплектациях |
|
protected |
Подготавливает секции offers, со сведениями о комплектациях
array | $data | Начальный массив с данными о комплектациях |
array | $dynamic_params | Уникальные параметры для пользователя |
|
protected |
Формирует массив данных по виртуальным многомерным комплектациям
$data |
getOfferTitle | ( | $offer_id | ) |
Возвращает название комплектации. Если у товара есть комплектации, иначе false
integer | $offer_id | комплектация |
getOldCost | ( | $offer_id = null , |
|
$format = true , |
|||
$inBaseCurrency = false |
|||
) |
Возвращает старую(зачеркнутую) цену, если она есть
integer | $offer_id | - id комплектации |
bool | $format | - форматировать цену |
bool | $inBaseCurrency | - возвращать стоимость в базовой валюте |
getOrderType | ( | ) |
Возвращает тип кнопки, которую нужно отобразить на месте кнопки заказать
getProductsDialog | ( | ) |
Возвращает HTML код для блока "рекомендуемые товары"
getProductsDialogConcomitant | ( | ) |
Возвращает HTML код для блока "сопутствующие товары"
getPropertyValueByTitle | ( | $name, | |
$default = null , |
|||
$textView = true , |
|||
$available = false |
|||
) |
Возвращает значение свойста по его имени
string | $name | - название свойства |
mixed | $default | - значение по-умолчанию |
bool | $textView | - если задано true, то возвращает всегда текстовое значение характеристики |
bool | $available | - возвращать только те значения, что есть в наличии у товара |
getPropObjects | ( | ) |
Возвращает список характеристик в виде списка объектов. Для формы редактирования товара
getRatingBall | ( | ) |
Возвращает средний балл товара
getRatingPercent | ( | ) |
Возвращает райтинг товара в процентах от 0 до 100
getRecommended | ( | $return_hidden = false , |
|
$add_dir_recommended = true , |
|||
$hide_self = true |
|||
) |
Возвращает товары, рекомендуемые вместе с текущим
bool | $return_hidden | - Если true, то метод вернет даже не публичные товары. Если false, то только публичные |
bool | $add_dir_recommended | - Если true, будут добавлены рекоммендуемые из основной категории |
bool | $hide_self | Если true, то исключит из списка текущий товар |
getShortDescription | ( | $max_len = 300 | ) |
Возвращает текст с кратким описание товара
integer | $max_len | максимально количество знаков |
getSKU | ( | $offer_id = null | ) |
Возвращает штрихкод указанной комплектации, в случае отсутствия возвращает штрихкод товара
int | $offer_id | - id комплектации |
getSpecDirs | ( | $only_id = false | ) |
Возвращает все спец. категории
bool | $only_id | - если true, то массив будет содержать только id категорий, иначе - объект Dir |
getUnit | ( | $property = null | ) |
getUrl | ( | $absolute = false | ) |
Возвращает URL страницы товара
bool | $absolute | - Если true, то вернет абсолютный URL, иначе относительный |
getUserCost | ( | ) |
Возвращает персональную цену для данного товара если у товара указана персональная цена, метод getCost вернёт именно её вне зависимости от параметров
getVirtualMultiOffersByPropertyKeys | ( | ) |
Возвращает виртуальные многомерные комплектации, где в ключи идут ключи из параметров со множеством возможных значений
getVisiblePropertyList | ( | $cache = true , |
|
$exportVisible = false |
|||
) |
Возвращает видимые характеристики товара
bool | $cache | - кэшировать результат |
bool | $exportVisible | - если true, то возвращает видимые для эекспорта характеристики товара |
getWarehouseFullStock | ( | ) |
Получает общие остатки по складам товара в виде массива Ключ - id склада Значение - количество товаров на складе
getWarehouseGroupStocks | ( | $offer_id = null , |
|
$only_available_warehouses = true |
|||
) |
Возвращает список остатков на группах складов, отсортированный по приоритету групп
int | $offer_id | - id комплектации |
bool | $only_available_warehouses | - искать остатки только на доступных складах |
getWarehouseStickInfo | ( | $cache = true | ) |
Возвращает необходимую информацию для отображения остатков по складам на сайте
bool | $cache | - использовать кэш |
getWarehouseStock | ( | ) |
Получает остатки у комплектаций по складам товара в виде массива Ключ - id склада Значение - информация по складам
getWeight | ( | $offer_id = null , |
|
$weight_unit = null |
|||
) |
Возвращает вес товара с учетом настроек ОСНОВНОЙ категории и настроек модуля
null | integer | $offer_id | - id комплектации от которой нужно вернуть вес |
null | string | $weight_unit | - идентификатор единицы измерения, в которой нужно получить вес (список возможных констант в ) |
getYoutubeVideoId | ( | ) |
Возвращает ID ыидео, полученный из ссылки
getYoutubeVideoType | ( | ) |
hasCost | ( | ) |
Возвращает true если цены на товар заполнены
hasImage | ( | ) |
Возвращает true, если у объекта есть фото
inCompareList | ( | ) |
Возвращает true, если товар присутствует в списке для сравнения
inDir | ( | $alias | ) |
Возвращает true, если товар состоит в категории с псевдонимом alias, иначе false
string | integer | $alias | - псевдоним категории |
inFavorite | ( | ) |
Возвращает true если данный продукт уже в избранном
isAvailable | ( | $only_main_offer = true | ) |
Возвращает true, если имеется возможность купить товар в комплектации по-умолчанию Если отключен контроль остатков - возвращает true Если включен контроль остатков - общее количество товара и остаток выбранной комплектации больше нуля - возвращает true В остальных случаях - false
bool | $only_main_offer | - Если true, то информация предоставляется только по основной комплектации. Если false, то по всему товару, т.е. если общий остаток > 0, значит вернется true |
isHaveConcomitant | ( | ) |
Возвращает есть ли у товара рекомендуемые Облегченный метод в основном используется для проверки показа блока рекомендуемых
isHaveRecommended | ( | ) |
Возвращает есть ли у товара рекомендуемые Облегченный метод в основном используется для проверки показа блока рекомендуемых
|
protected |
Возвращает true, если $offer_id - это ID основной комплектации
integer | $offer_id |
isMultiOffersUse | ( | ) |
Возвращает true, если у товара должны использоваться многомерные комплектации.
isOffersUse | ( | ) |
Возвращает true, если у товара должны использоваться комплектации.
isVirtualMultiOffersUse | ( | ) |
Возвращает true, если у товара должны использоваться виртуальные многомерные комплектации.
keepSpecDirs | ( | $bool | ) |
Устанавливает, сохранять ли связь со spec категориями
bool | $bool |
keepUpdateProductCategory | ( | $bool | ) |
Устанавливает обновлять ли категорию у товара или нет при обновлении данных товара В основном используется для импорта из 1С
bool | $bool |
|
protected |
Заменяет изображеия на конкретные ссылки на эти изображения
array | $data | Начальный массив с данными о комплектациях |
array | $options |
|
static |
Очищает кэш сведения по комплектациям товара. Они будут восстановлены при следующем обращении к getOffersJson
$id |
setDefaultProductDimensions | ( | $width, | |
$height, | |||
$depth | |||
) |
integer | $width | - ширина товара в условных единицах |
integer | $height | - высота товара в условных единицах |
integer | $depth | - глубина товара в условных единицах |
setFastMarkMultiOffersUse | ( | $bool | ) |
Устанавливает используются ли у товаров комплектации. Установленное значение будет импользоваться для быстрого возврата результата методом isOffersUse
bool | null | $bool |
setFastMarkOffersUse | ( | $bool | ) |
Устанавливает используются ли у товаров комплектации. Установленное значение будет импользоваться для быстрого возврата результата методом isOffersUse
bool | null | $bool |
setFastMarkVirtualMultiOffersUse | ( | $bool | ) |
Устанавливает используются ли у товаров виртуальные многомерные комплектации. Установленное значение будет импользоваться для быстрого возврата результата методом isVirtualMultiOffersUse
bool | null | $bool |
setFlag | ( | string | $flag, |
$value = true |
|||
) |
Устанавливает специальный флаг, список возможных флагов находится в константах класса
string | $flag | - флаг |
bool | $value | - значение |
setUserCost | ( | $cost | ) |
Устанавливает персональную цену для данного товара если у товара указана персональная цена, метод getCost вернёт именно её все зависимости от параметров
float | null | $cost | - пользовательская цена в базовой валюте |
setWarehousesForDynamicNum | ( | $warehouse_ids | ) |
Добавляет к товару поле dynamic_num с остатком только на указанных складах. После вызова данного метода fillOffers() бдет также добавлять dynamic_num к каждой комплектации
int[] | $warehouse_ids |
shouldReserve | ( | ) |
Возвращает true, если необходимо отобразить форму предварительного заказа, иначе false
specDirCount | ( | ) |
Возвращает количество спец категорий
|
protected |
Обновляет поле offers_json в БД
$data | |
$update_db |
updateSearchIndex | ( | ) |
Обновляет поисковый индекс
useOffersUnconvertedPropsdata | ( | $bool = true | ) |
Устанавливает, что при сохранении комплектаций, нужно учитывать поле _propsdata, в котором характеристики комплектаций находятся в денормализованном виде.
mixed | $bool |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |
|
protected |
|
staticprotected |
|
protected |
const DP_COST_ID = 'cost_id' |
const DP_NUM_HASH = 'dynamic_num_hash' |
const DP_OLD_COST_ID = 'old_cost_id' |
const FILE_ACCESS_HIDE = 0 |
const FILE_ACCESS_PAID = 2 |
const FILE_ACCESS_PUBLIC = 1 |
const FLAG_DONT_RESET_IMPORT_HASH = 'dont_reset_import_hash' |
const FLAG_DONT_UPDATE_DIR_COUNTER = 'dont_update_dir_counter' |
const FLAG_DONT_UPDATE_SEARCH_INDEX = 'dont_update_search_index' |
const IMAGES_TYPE = 'catalog' |
const MAX_RATING = 5 |
const ORDER_TYPE_ADVORDER = 'advorder' |
const ORDER_TYPE_BASKET = 'basket' |
const ORDER_TYPE_UNOBTAINABLE = 'unobtainable' |
const VIDEO_TYPE_DEFAULT = 'default' |
const VIDEO_TYPE_SHORTS = 'shorts' |