Версия: 4.x
Класс Product
Граф наследования:Product:
OrmObject AbstractObject AcceptBehavior AcceptBehaviorInterface

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

ORM Объект - товар

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

 _init ()
 
 getDebugActions ()
 
 keepSpecDirs ($bool)
 
 keepUpdateProductCategory ($bool)
 
 getPropObjects ()
 
 afterObjectLoad ()
 
 beforeWrite ($flag)
 
 afterWrite ($flag)
 
 fillProperty ($onlyVisible=false)
 
 fillOffersStock ()
 
 fillOffersStockStars ()
 
 fillOffers ()
 
 fillAffiliateDynamicNum ()
 
 setWarehousesForDynamicNum ($warehouse_ids)
 
 fillMultiOffers ()
 
 fillVirtualMultiOffers ()
 
 getVirtualMultiOffersByPropertyKeys ()
 
 getWarehouseGroupStocks ($offer=0, $only_available_warehouses=true)
 
 getMultiOffersByPropertyKeys ()
 
 getUnit ($property=null)
 
 getRatingPercent ()
 
 getRatingBall ()
 
 getMaxBall ()
 
 getCommentsNum ()
 
 inDir ($alias)
 
 getSpecDirs ($only_id=false)
 
 specDirCount ()
 
 fillCategories ()
 
 fillMainRubric ()
 
 getMainDir ()
 
 inCompareList ()
 
 inFavorite ()
 
 fillCost ()
 
 calculateUserCost ()
 
 updateSearchIndex ()
 
 getOffersBarcodes ()
 
 getImageStub ()
 
 fillImages ()
 
 getMainImage ($width=null, $height=null, $type= 'xy', $absolute=false)
 
 getOfferMainImage ($offer_index=0, $width=null, $height=null, $type= 'xy')
 
 getImages ($without_first=false)
 
 hasImage ()
 
 hasCost ()
 
 getCost ($cost_id=null, $offer=null, $format=true, $inBaseCurrency=false)
 
 getBaseCost ($cost_id=null, $offer=null)
 
 getOldCost ($offer=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)
 
 isHaveRecommended ()
 
 getConcomitant ($add_dir_concomitant=true)
 
 isHaveConcomitant ()
 
 getMetaTitle ()
 
 getMetaKeywords ()
 
 getMetaDescription ()
 
 getOrderType ()
 
 getBarCode ($offer)
 
 getOfferTitle ($offer)
 
 addProperty ($property_id, $value, $is_my=1)
 
 getShortDescription ($max_len=300)
 
 getWeight ($offer=null, $weight_unit=null)
 
 shouldReserve ()
 
 canBeReserved ()
 
 getOfferCount ()
 
 getNum ($offer=null)
 
 getSKU ($offer=0)
 
 getCurrencies ()
 
 getCostList ()
 
 getMySpecDir ()
 
 setFastMarkOffersUse ($bool)
 
 isOffersUse ()
 
 setFastMarkMultiOffersUse ($bool)
 
 isMultiOffersUse ()
 
 setFastMarkVirtualMultiOffersUse ($bool)
 
 isVirtualMultiOffersUse ()
 
 fillMultiOffersPhotos ()
 
 isAvailable ()
 
 getBrand ()
 
 getWarehouseStock ()
 
 getWarehouseFullStock ()
 
 getWarehouseStickInfo ($cache=true)
 
 getAvailableWarehouses ($offer=0, $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 ($cache=true)
 
 checkPropExist ()
 
 getDimensionsObject ()
 
 getFlag ($flag)
 
 setFlag (string $flag, $value=true)
 
- Открытые члены унаследованные от OrmObject
 __construct ($id=null, $cache=true)
 
 getPrimaryKeyProperty ()
 
 saveInCache ($id)
 
 loadFromCache ($id)
 
- Открытые члены унаследованные от AbstractObject
 __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=array(), $on_duplicate_uniq_fields=array())
 
 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=array(), $post_var=null, $files_var=null)
 
 replaceOn ($bool)
 
 setWriteBit ($n)
 
 usePostKeys (array $keys)
 
 excludePostKeys (array $keys)
 
 checkData ($user_post=array(), $post_var=null, $files_var=null, $usekeys=null, $exclude=null, $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=array(), $view_params=array())
 
 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 ()
 
 getRightRead ()
 
 getRightCreate ()
 
 getRightUpdate ()
 
 getRightDelete ()
 
 getHtmlEncodedFields ()
 
- Открытые члены унаследованные от AcceptBehavior
 attachInstanceBehavior (BehaviorAbstract $behavior_class)
 
 detachInstanceBehavior (BehaviorAbstract $behavior_class=null)
 
 getAttachedBehaviors ()
 
 behaviorMethodExists ($method_name)
 
 __call ($method_name, $arguments)
 
- Открытые члены унаследованные от AcceptBehaviorInterface
 attachInstanceBehavior (\RS\Behavior\BehaviorAbstract $behavior_class)
 
 detachInstanceBehavior (\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'
 
- Поля данных унаследованные от AbstractObject
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'
 
- Поля данных унаследованные от AcceptBehavior
 $class_behaviors = array()
 
 $cache_behavior_instances = array()
 
 $instance_behaviors = array()
 

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

 appendOfferDynamicNum (OrmRequest $q)
 
 baseWarehouseAvailabilityRequest ($offer=0, $only_available_warehouses=true)
 
 getCostIdByTitle ($title)
 
- Защищенные члены унаследованные от OrmObject
 _init ()
 
- Защищенные члены унаследованные от AbstractObject
 initProperties ()
 
 _init ()
 
 _initDefaults ()
 
 afterInit ()
 
 getStorageInstance ()
 
 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_warehouse_stick
 
 $user_cost
 
 $stock = null
 
 $full_stock = null
 
 $offer_xcost = array()
 
 $dir_alias_cache = array()
 
 $calculate_user_cost = null
 
 $files
 
 $dimensions_object
 
 $flags = array()
 
- Защищенные данные унаследованные от AbstractObject
 $_values = array()
 
 $_self_class
 
 $_local_id
 

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

static $table = 'product'
 
static $property_name_id = array()
 
static $cost_title_id = array()
 
static $spec_dirs = array()
 
static $cost_list
 
static $dirlist
 
- Статические защищенные данные унаследованные от OrmObject
static $self_singleton_cache = array()
 
- Статические защищенные данные унаследованные от AbstractObject
static $db = DB_NAME
 
static $table = null
 
static $iterator = 0
 
static $init_default_method = '_initDefaults'
 
static $local = array()
 
static $default_local_parameters
 
static $class = array()
 
static $default_class_parameters
 

Дополнительные унаследованные члены

- Открытые статические члены унаследованные от OrmObject
static loadSingle ($id)
 
- Открытые статические члены унаследованные от AbstractObject
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=array())
 
static destroyClass ()
 
- Открытые статические члены унаследованные от AcceptBehavior
static attachClassBehavior (BehaviorAbstract $behavior_class)
 
static detachClassBehavior (BehaviorAbstract $behavior_class=null)
 
- Открытые статические члены унаследованные от AcceptBehaviorInterface
static attachClassBehavior (\RS\Behavior\BehaviorAbstract $behavior_class)
 
static detachClassBehavior (\RS\Behavior\BehaviorAbstract $behavior_class=null)
 
- Статические открытые данные унаследованные от OrmObject
static $self_cache = array()
 
- Защищенные статические члены унаследованные от OrmObject
static getIdHash ($id)
 
- Защищенные статические члены унаследованные от AbstractObject
static _tableName ($with_quotes=true)
 

Методы

_init ( )
addProperty (   $property_id,
  $value,
  $is_my = 1 
)

Добавить характеристику для сохранения

Аргументы
integer$property_id- уникальный идентификатор характеристики
mixed$value- значение характеристики
integer$is_my- флаг означающий, что нужно добавить флаг перезаписывающий значения установленные через категорию
afterObjectLoad ( )

Вызывается после загрузки объекта

Возвращает
void
afterWrite (   $flag)

Вызывается после сохранения объекта

Аргументы
mixed$flag- флаг процедуры записи (insert, update, replace)
Возвращает
void
Исключения
DbException
EventException
RSException
appendOfferDynamicNum ( OrmRequest  $q)
protected

Добавляет к оъекту запроса комплектаций условие для выборки остатков только на связанных с филиалом складах. Результат будет в поле dynamic_num

Аргументы
OrmRequest$q
Возвращает
OrmRequest
Исключения
RSException
baseWarehouseAvailabilityRequest (   $offer = 0,
  $only_available_warehouses = true 
)
protected

Возвращает базовый запрос на получение остатков по группам складов

Аргументы
int$offer- индекс комплектации
bool$only_available_warehouses- искать остатки только на доступных складах
Возвращает
OrmRequest
Исключения
DbException
OrmException
RSException
beforeWrite (   $flag)

Вызывается перед сохранением объекта

Аргументы
string$flag- строковое представление текущей операции (insert или update)
Возвращает
false|void
Исключения
DbException
RSException
calculateUserCost ( )

Пересчитает автоматически формируемые цены

Возвращает
void
Исключения
DbException
EventException
OrmException
RSException
canBeReserved ( )

Возвращает true, если товар потенциально может быть предзаказан. т.е. у него не установлен запрет на предзаказ и опция в админ панели "разрешить предзаказ товаров с нулевым остатком"

Возвращает
bool
Исключения
RSException
checkPropExist ( )

Проверка есть ли у какой то из комплектаций персональные характеристики

Возвращает
bool
cleanForBasket ( )

Очищает поля, которые не понадобятся при отображении товара в корзине Это уменьшит объект в сериализованном виде.

Возвращает
void
fillAffiliateDynamicNum ( )

Добавляет к товару поле dynamic_num с остатком только на складах выбранного филиала. После вызова данного метода fillOffers() бдет также добавлять dynamic_num к каждой комплектации Актуально для Мегамаркета

Возвращает
void
Исключения
DbException
RSException
fillCategories ( )

Загружает категории, в которых состоит товар

Возвращает
void
Исключения
DbException
fillCost ( )

Подгружает все цены товара, если они не загружены раннее

Исключения
DbException
EventException
OrmException
RSException
fillImages ( )

Загружает фотографии для товара

Возвращает
void
fillMainRubric ( )

Загружает объект - категорию в свойство maindir_obj

Возвращает
void
fillMultiOffers ( )

Заполняет уровни многомерных комплектаций у товара

Возвращает
array массив многомерных комплектаций
Исключения
DbException
OrmException
RSException
fillMultiOffersPhotos ( )

Подгружает к многомерным комплектациями фото к вариантам выбора Работает только, если у товара есть как комплектации так и многомерные комплектации

Возвращает
void
Исключения
OrmException
fillOffers ( )

Загружает информацию о комплектациях

Возвращает
array возвращает массив с комплектациями
Исключения
DbException
OrmException
RSException
fillOffersStock ( )

Заполняет значениями остатки по складам для разных складов

Возвращает
void
Исключения
DbException
OrmException
RSException
fillOffersStockStars ( )

Заполняет у товара остатки по складам в виде градаций по параметру warehouse_stars в настройках модуля Включает метки остатков только для тех складов, которые должны отображаться с учетом текущего филиала

Возвращает
void
Исключения
DbException
OrmException
RSException
fillProperty (   $onlyVisible = false)

Загружает характеристики у товара

Аргументы
bool$onlyVisible- если true, вернёт только видимые не пустые характеристики
Возвращает
array
Исключения
DbException
OrmException
EventException
fillVirtualMultiOffers ( )

Заполняет виртуальные многомерные комплектации у товаров

Возвращает
array
getAmountStep (   $cache = true)

Возвращает шаг количества товара

Аргументы
bool$cache- использовать кеш
Возвращает
float
Исключения
EventException
RSException
getAvailableWarehouses (   $offer = 0,
  $cache = true 
)

Возвращает количество складов, на которых доступен товар

Аргументы
integer$offer- Номер комплектации
bool$cache- использовать кэш
Возвращает
int
Исключения
RSException
getBarCode (   $offer)

Возвращает артикул в зависимости от комплектации

Аргументы
integer$offerкомплектация
Возвращает
string
Исключения
OrmException
getBaseCost (   $cost_id = null,
  $offer = null 
)

Возвращает базовую цену товара

Аргументы
int | string$cost_id- id или Название цены. Если null, то текущая цена у пользователя.
integer$offer- комплектация
Возвращает
float
Исключения
DbException
EventException
OrmException
RSException
getBaseCurrency ( )

Возвращает символ базовой валюты

Возвращает
string
getBrand ( )

Возвращает объект бренда товара

Возвращает
Brand
getButtonTypeByOffer (   $offer_sortn)

Возвращает тип кнопки для показа в зависимости от переданной комплектации. Купить, заказать, не показывать. (buy|reservation|none)

Аргументы
integer$offer_sortn- сортировочный индекс комплектации
Возвращает
string
Исключения
RSException
getCommentsNum ( )

Возврщает количество комментариев

Возвращает
integer
getConcomitant (   $add_dir_concomitant = true)

Возвращает товары, сопутствующие для текущего

Аргументы
bool$add_dir_concomitant- Если true, будут добавлены сопутствующие из основной категории
Возвращает
Product[]
getCost (   $cost_id = null,
  $offer = null,
  $format = true,
  $inBaseCurrency = false 
)

Возвращает цену товара

Аргументы
int | string$cost_id- id или Название цены. Если null, то текущая цена у пользователя.
integer$offer- комплектация
bool$format- форматировать цену
bool$inBaseCurrency- возвращать стоимость в базовой валюте
Возвращает
mixed
Исключения
DbException
EventException
OrmException
RSException
getCostIdByTitle (   $title)
protected

Возвращает id типа цены по его названию

Аргументы
string$title- имя типа цен
Возвращает
int|null
Исключения
OrmException
DbException
getCostList ( )

Возвращает Список цен, имеющихся в системе

Возвращает
array
Исключения
OrmException
getCurrencies ( )

Возвращает список доступных валют Используется в карточке товара в админ. панели

Возвращает
array
getCurrency ( )

Возвращает текущую валюту

Возвращает
string
getCurrencyCode ( )

Возвращает код текущей валюты

getDebugActions ( )

Возвращает отладочные действия, которые можно произвести с объектом

Возвращает
DebugAction[]
getDefaultProductDimensions (   $dimention_type = null)
Аргументы
string$dimention_type- тип габарита (width|height|depth). Если null - то вернёт массив значений
Возвращает
integer|array
getDimensionsObject ( )

Возвращает объект габаритов товара

Возвращает
ProductDimensions
Исключения
RSException
getFiles (   $access = null)

Возвращает привязанные файлы к товару

Аргументы
string|string[]$access - идентификатор(ы) уровня доступа.
Возвращает
OrmFile[]
Исключения
EventException
OrmException
getFlag (   $flag)

Возвращает специальный флаг, список возможных флагов находится в константах класса

Аргументы
string$flag- флаг
Возвращает
bool
getImages (   $without_first = false)

Возвращает список картинок, привязанных к товару

Аргументы
boolean$without_first- если true, то не возвращать первое фото
Возвращает
PhotoImage[]
getImageStub ( )

Возвращает объект фото-заглушку

Возвращает
getListProperties ( Dir  $dir = null)

Возвращает характеристики, которые нужно отобразить в списке товаров в конкретной категории $dir

Аргументы
Dir$dirобъект текущей категории
Возвращает
array
Исключения
DbException
OrmException
EventException
getMainDir ( )

Возвращает объект главной директории

Возвращает
Dir
getMainImage (   $width = null,
  $height = null,
  $type = 'xy',
  $absolute = false 
)

Возвращает ссылку на главную фотографию (первая в списке фотографий) При вызове без параметров возвращает объект фотографии

Аргументы
int$width- ширина в пикселях
int$height- высота в пикселях
string$type- тип ресайза
boolean$absolute- возвращает абсолютный путь
Возвращает
|string
getMaxBall ( )

Возвращает максимальное количество баллов, которое можно поставить данному товару

Возвращает
integer
getMetaDescription ( )

Возвращает описание из карточки товара или генерирует его

Возвращает
string
Исключения
RSException
getMetaKeywords ( )

Возвращает заданные в админ панели ключевые слова, а если они не заданны, то генерирует новые

Возвращает
string
Исключения
RSException
getMetaTitle ( )

Возвращает заголовок МЕТА данных товара, если нет, то берёт из категорий

Возвращает
string
Исключения
RSException
getMinPrice (   $cost_id = null,
  $format = true,
  $in_base_currency = false,
$has_difference = null 
)

Возвращает минимальную цену за товар, если существуют различия в стоимости комплектаций

Аргументы
integer | null$cost_idID или название цены. Если null, то будет использована цена по умолчанию
bool$formatесли true, то будет возвращена строка "от 12 500", в противном случае 12500.00
boolean$in_base_currencyесли true, то будет возвращена цена всегда в базовой валюте
bool$has_differenceвозвращает в данной переменно true, если цены комплектаций отличаются
Возвращает
float|string
Исключения
DbException
EventException
OrmException
RSException
getMultiOffersByPropertyKeys ( )

Возвращает виртуальные многомерные комплектации, где в ключи идут ключи из параметров со множеством возможных значений

Возвращает
array
getMySpecDir ( )

Возвращает список спецкатегорий, в которых состоит товар

Возвращает
array of Orm
getNum (   $offer = null)

Возвращает количество для необходимой комплектации или всего товара. Сперва возвращает динамически высчитанное значение из dynamic_num, если таковое есть. иначе - статическое значение из поля num.

Только данный метод может отдавать остаток с учетом всех опций в административной панели. Используйте его вместо обращения к свойству num напрямую.

Аргументы
int | null$offer- номер комплектации (начинается с нуля) или если null, то всего товара
Возвращает
mixed|Type
Исключения
OrmException
getOfferCost (   $offer_key,
  $xcost 
)

Возвращает цены откорректированные с учетом выбранной комплектации

Аргументы
integer$offer_keyкомплектация
array$xcostмассив: ID цены => Значение цены для нулевого offer'а
Возвращает
array
Исключения
EventException
OrmException
RSException
getOfferCount ( )

Возвращает количество комплектаций

Возвращает
int
Исключения
OrmException
getOfferMainImage (   $offer_index = 0,
  $width = null,
  $height = null,
  $type = 'xy' 
)

Возвращает ссылку на главную фотографию комплектации (первая в списке фотографий) если не указана ширина изображения - возвращает объект фотографии

Аргументы
mixed$offer_index- индекс комплектации
mixed$width- ширина изображения
mixed$height- высота изображения
mixed$type- тип ресайза
Возвращает
PhotoImage|string
Исключения
OrmException
getOffersBarcodes ( )

Возвращает артикулы комплектаций, используется для построения поискового индекса

Возвращает
string
Исключения
DbException
getOfferTitle (   $offer)

Возвращает название комплектации. Если у товара есть комплектации, иначе false

Аргументы
integer$offerкомплектация
Возвращает
string
Исключения
OrmException
getOldCost (   $offer = null,
  $format = true,
  $inBaseCurrency = false 
)

Возвращает старую(зачеркнутую) цену, если она есть

Аргументы
integer$offer- комплектация
bool$format- форматировать цену
bool$inBaseCurrency- возвращать стоимость в базовой валюте
Возвращает
float
Исключения
DbException
EventException
OrmException
RSException
getOrderType ( )

Возвращает тип кнопки, которую нужно отобразить на месте кнопки заказать

Возвращает
string - basket | unobtainable | advorder
Исключения
RSException
getProductsDialog ( )

Возвращает HTML код для блока "рекомендуемые товары"

Возвращает
ProductDialog
getProductsDialogConcomitant ( )

Возвращает HTML код для блока "сопутствующие товары"

Возвращает
ProductDialog
getPropertyValueByTitle (   $name,
  $default = null,
  $textView = true,
  $available = false 
)

Возвращает значение свойста по его имени

Аргументы
string$name- название свойства
mixed$default- значение по-умолчанию
bool$textView- если задано true, то возвращает всегда текстовое значение характеристики
bool$available- возвращать только те значения, что есть в наличии у товара
Возвращает
string|null
getPropObjects ( )

Возвращает список характеристик в виде списка объектов. Для формы редактирования товара

Возвращает
array of Property
getRatingBall ( )

Возвращает средний балл товара

Возвращает
float
getRatingPercent ( )

Возвращает райтинг товара в процентах от 0 до 100

Возвращает
integer
getRecommended (   $return_hidden = false,
  $add_dir_recommended = true 
)

Возвращает товары, рекомендуемые вместе с текущим

Аргументы
bool$return_hidden- Если true, то метод вернет даже не публичные товары. Если false, то только публичные
bool$add_dir_recommended- Если true, будут добавлены рекоммендуемые из основной категории
Возвращает
Product[]
getShortDescription (   $max_len = 300)

Возвращает текст с кратким описание товара

Аргументы
integer$max_lenмаксимально количество знаков
Возвращает
string
getSKU (   $offer = 0)

Возвращает штрихкод указанной комплектации, в случае отсутствия возвращает штрихкод товара

Аргументы
int$offer- индекс комплектации
Возвращает
string
Исключения
OrmException
getSpecDirs (   $only_id = false)

Возвращает все спец. категории

Аргументы
bool$only_id- если true, то массив будет содержать только id категорий, иначе - объект Dir
Возвращает
array
getUnit (   $property = null)

Возвращает объект единицы измерения, в котором измеряется данный продукт

Аргументы
string$property- имя свойства объекта Unit. Используется для быстрого обращения
Возвращает
Unit
Исключения
RSException
getUrl (   $absolute = false)

Возвращает URL страницы товара

Аргументы
bool$absolute- Если true, то вернет абсолютный URL, иначе относительный
Возвращает
string
getUserCost ( )

Возвращает персональную цену для данного товара если у товара указана персональная цена, метод getCost вернёт именно её вне зависимости от параметров

Возвращает
float|null
getVirtualMultiOffersByPropertyKeys ( )

Возвращает виртуальные многомерные комплектации, где в ключи идут ключи из параметров со множеством возможных значений

Возвращает
array
getVisiblePropertyList (   $cache = true,
  $exportVisible = false 
)

Возвращает видимые характеристики товара

Аргументы
bool$cache- кэшировать результат
bool$exportVisible- если true, то возвращает видимые для эекспорта характеристики товара
Возвращает
array
Исключения
DbException
OrmException
EventException
getWarehouseFullStock ( )

Получает общие остатки по складам товара в виде массива Ключ - id склада Значение - количество товаров на складе

Возвращает
float[]
Исключения
DbException
getWarehouseGroupStocks (   $offer = 0,
  $only_available_warehouses = true 
)

Возвращает список остатков на группах складов, отсортированный по приоритету групп

Аргументы
int$offer- индекс комплектации
bool$only_available_warehouses- искать остатки только на доступных складах
Возвращает
float[]
Исключения
DbException
OrmException
RSException
getWarehouseStickInfo (   $cache = true)

Возвращает необходимую информацию для отображения остатков по складам на сайте

  • список складов
  • количество диапазонов остатков
Аргументы
bool$cache- использовать кэш
Возвращает
array
Исключения
RSException
getWarehouseStock ( )

Получает остатки у комплектаций по складам товара в виде массива Ключ - id склада Значение - информация по складам

Возвращает
array
Исключения
DbException
getWeight (   $offer = null,
  $weight_unit = null 
)

Возвращает вес товара с учетом настроек ОСНОВНОЙ категории и настроек модуля

Аргументы
null | integer$offer- номер комплектации от которой нужно вернуть вес
null | string$weight_unit- идентификатор единицы измерения, в которй нужно получить вес (список возможных констатнт в )
Возвращает
float
Исключения
RSException
hasCost ( )

Возвращает true если цены на товар заполнены

Возвращает
bool
Исключения
OrmException
hasImage ( )

Возвращает true, если у объекта есть фото

inCompareList ( )

Возвращает true, если товар присутствует в списке для сравнения

Возвращает
bool
inDir (   $alias)

Возвращает true, если товар состоит в категории с псевдонимом alias, иначе false

Аргументы
string | integer$alias- псевдоним категории
Возвращает
bool
Исключения
OrmException
inFavorite ( )

Возвращает true если данный продукт уже в избранном

Возвращает
bool
isAvailable ( )

Возвращает true, если имеется возможность купить товар в комплектации по-умолчанию Если отключен контроль остатков - возвращает true Если включен контроль остатков - общее количество товара и остаток выбранной комплектации больше нуля - возвращает true В остальных случаях - false

Возвращает
false
Исключения
RSException
isHaveConcomitant ( )

Возвращает есть ли у товара рекомендуемые Облегченный метод в основном используется для проверки показа блока рекомендуемых

Возвращает
bool
isHaveRecommended ( )

Возвращает есть ли у товара рекомендуемые Облегченный метод в основном используется для проверки показа блока рекомендуемых

Возвращает
boolean
isMultiOffersUse ( )

Возвращает true, если у товара должны использоваться многомерные комплектации.

Возвращает
bool
Исключения
OrmException
isOffersUse ( )

Возвращает true, если у товара должны использоваться комплектации.

Возвращает
bool
Исключения
OrmException
isVirtualMultiOffersUse ( )

Возвращает true, если у товара должны использоваться виртуальные многомерные комплектации.

Возвращает
bool
keepSpecDirs (   $bool)

Устанавливает, сохранять ли связь со spec категориями

Аргументы
bool$bool
Возвращает
void
keepUpdateProductCategory (   $bool)

Устанавливает обновлять ли категорию у товара или нет при обновлении данных товара В основном используется для импорта из 1С

Аргументы
bool$bool
Возвращает
void
setDefaultProductDimensions (   $width,
  $height,
  $depth 
)
Аргументы
integer$width- ширина товара в условных единицах
integer$height- высота товара в условных единицах
integer$depth- глубина товара в условных единицах
setFastMarkMultiOffersUse (   $bool)

Устанавливает используются ли у товаров комплектации. Установленное значение будет импользоваться для быстрого возврата результата методом isOffersUse

Аргументы
bool  |  null$bool
Возвращает
void
setFastMarkOffersUse (   $bool)

Устанавливает используются ли у товаров комплектации. Установленное значение будет импользоваться для быстрого возврата результата методом isOffersUse

Аргументы
bool  |  null$bool
Возвращает
void
setFastMarkVirtualMultiOffersUse (   $bool)

Устанавливает используются ли у товаров виртуальные многомерные комплектации. Установленное значение будет импользоваться для быстрого возврата результата методом isVirtualMultiOffersUse

Аргументы
bool  |  null$bool
Возвращает
void
setFlag ( string  $flag,
  $value = true 
)

Устанавливает специальный флаг, список возможных флагов находится в константах класса

Аргументы
string$flag- флаг
bool$value- значение
Возвращает
void
setUserCost (   $cost)

Устанавливает персональную цену для данного товара если у товара указана персональная цена, метод getCost вернёт именно её все зависимости от параметров

Аргументы
float | null$cost- пользовательская цена в базовой валюте
Возвращает
void
setWarehousesForDynamicNum (   $warehouse_ids)

Добавляет к товару поле dynamic_num с остатком только на указанных складах. После вызова данного метода fillOffers() бдет также добавлять dynamic_num к каждой комплектации

Аргументы
int[]$warehouse_ids
Исключения
DbException
RSException
shouldReserve ( )

Возвращает true, если необходимо отобразить форму предварительного заказа, иначе false

Возвращает
bool
Исключения
RSException
specDirCount ( )

Возвращает количество спец категорий

Возвращает
integer
updateSearchIndex ( )

Обновляет поисковый индекс

useOffersUnconvertedPropsdata (   $bool = true)

Устанавливает, что при сохранении комплектаций, нужно учитывать поле _propsdata, в котором характеристики комплектаций находятся в денормализованном виде.

Аргументы
mixed$bool

Поля

$cache_amount_step
protected
$cache_visible_property
protected
$cache_warehouse_stick
protected
$calculate_user_cost = null
protected
$cost_list
staticprotected
$cost_title_id = array()
staticprotected
$dimensions_object
protected
$dir_alias_cache = array()
protected
$dirlist
staticprotected
$fast_mark_multioffers_use
protected
$fast_mark_offers_use
protected
$fast_mark_virtual_multioffers_use
protected
$files
protected
$flags = array()
protected
$full_stock = null
protected
$keep_spec_dirs = false
protected
$keep_update_prod_cat = true
protected
$offer_xcost = array()
protected
$property_name_id = array()
staticprotected
$spec_dirs = array()
staticprotected
$stock = null
protected
$table = 'product'
staticprotected
$user_cost
protected
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'