Версия: 6.x
burger close
Класс Api
Граф наследования:Api:
EntityList BaseModel

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

 __construct ()
 
 setFilter ($key, $value= '', $type= '=', $prefix= 'AND', array $options=[])
 
 getLike ($term, array $fields, $filters=[], $limit=5)
 
 getByHash ($hash)
 
 sendRecoverEmail ($login, $admin=false)
 
 sendRecoverEmailByUser (User $user, $admin=false)
 
 changeUserPassword (Orm\User $user, $new_pass, $new_pass_confirm)
 
 beforeSqlWhereCallback ($items, $filter_control)
 
 generatePasswords ($ids)
 
 multiUpdate (array $data, $ids=[])
 
 getRecoverTypeByLogin ($login, User $user)
 
 getAuthLoginPlaceholder ()
 
 getRecoverLoginPlaceholder ()
 
- Открытые члены унаследованные от EntityList
 __construct (AbstractObject $orm_element, array $options=[])
 
 setDefaultOrder ($order)
 
 getNameField ()
 
 setNameField ($field)
 
 setAliasField ($field)
 
 setSortField ($field)
 
 setIdField ($field)
 
 getIdField ()
 
 getSiteIdField ()
 
 setLoadOnDelete ($bool)
 
 setSiteContext ($site_id=null)
 
 getSiteContext ()
 
 setMultisite ($bool)
 
 isMultisite ()
 
 resetQueryObject ()
 
 getCleanQueryObject ()
 
 queryObj ()
 
 setQueryObj (\RS\Orm\Request $q)
 
 defAlias ()
 
 setFilter ($key, $value=null, $type= '=', $prefix= 'AND', array $options=[])
 
 clearFilter ()
 
 getList ($page=null, $page_size=null, $order=null)
 
 getListAsArray ($page=0, $page_size=0, $order= '')
 
 getListAsResource ($page=0, $page_size=0, $order= '')
 
 getPagedList ($page_size)
 
 loadAssocList ($key_field, $value=null)
 
 getAssocList ($key_field, $value=null)
 
 setOrder ($order=null, array $values=null)
 
 setGroup ($group=null)
 
 getListCount ()
 
 getFirst ()
 
 getOneItem ($id)
 
 getById ($id, $request=null)
 
 getElement ()
 
 setElement ($object)
 
 getElementClass ()
 
 getNewElement ()
 
 save ($id=null, array $user_post=[])
 
 addFilterControl (\RS\Html\Filter\Control $filter_control)
 
 addTableControl (\RS\Html\Table\Control $table_control)
 
 del (array $ids)
 
 multiDelete ($ids)
 
 getSelectList ($first=[])
 
 multieditFormView ($tpl_path, $formfile, array $addparam=[])
 
 multiUpdate (array $data, $ids=[])
 
 moveElement ($from, $to, $flag,\RS\Orm\Request $extra_expr=null)
 
 noWriteRights ($right=DefaultModuleRights::RIGHT_UPDATE)
 
 getIdByAlias ($alias_or_id, $alias_field=null)
 
 saveRequest ($key)
 
 getIdsByRequest (\RS\Orm\Request $request)
 
 __set ($name, $value)
 
 __get ($name)
 
 __isset ($name)
 
 __unset ($name)
 
- Открытые члены унаследованные от BaseModel
 addError ($message, $fieldname=null, $form=null)
 
 hasError ()
 
 getErrors ()
 
 cleanErrors ()
 
 getDisplayErrors ()
 
 getErrorsStr ()
 
 getFormErrors ($form, $separator= ', ')
 
 getNonFormErrors ($separator= ', ')
 
 exportErrors ()
 
 importErrors ($data)
 

Открытые статические члены

static getUserUniq (Orm\User $user, $xor_key= '')
 
static normalizePhoneNumber ($number)
 
static normalizePhonesOldUsers ()
 
- Открытые статические члены унаследованные от EntityList
static getInstance ($key= 'default')
 
static staticSelectList ($first=[])
 
static getSavedRequest ($key, $default=null)
 

Поля данных

const RECOVER_TYPE_EMAIL = 'email'
 
const RECOVER_TYPE_PHONE = 'phone'
 
const RECOVER_TYPE_NONE_EMAIL = 'none'
 
const RECOVER_TYPE_NONE_PHONE = 'none_phone'
 
const RECOVER_PASSWORD_EMAIL_TPL = '%users%/email/recover_pass.tpl'
 
const USER_LIKE_FILTER_GROUPS = 'groups'
 
- Поля данных унаследованные от EntityList
const WHERE_CONDITION_VAR = 'where_conditions'
 
- Поля данных унаследованные от BaseModel
 $form_fieldname = []
 
 $errors_by_form = []
 
 $errors_non_form = []
 
 $errors = []
 

Защищенные статические члены

static applyXOR ($string, $key)
 

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

 $group_obj = '\Users\Model\Orm\UserInGroup'
 
 $config
 
- Защищенные данные унаследованные от EntityList
 $default_order
 
 $load_on_delete = false
 
 $id_field = 'id'
 
 $alias_field
 
 $sort_field
 
 $name_field
 
 $site_id_field = 'site_id'
 
 $is_multisite = false
 
 $site_context
 
 $def_table_alias = 'A'
 
 $obj
 
 $obj_instance
 
 $filter_active = false
 
 $multiedit_template = '%system%/coreobject/multiedit_form.tpl'
 
 $assocPlainList = []
 
 $parsePrefixes = ['&' => 'AND'
 
 $cache_alias = []
 
 $options = []
 
 $q
 
- Защищенные данные унаследованные от BaseModel
 $default_error_fieldname = 'Информация'
 

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

- Защищенные члены унаследованные от EntityList
 parseArrayFilter ($filters)
 
 filterLike ($key, $value, $type, $prefix, $options)
 
 filterIs ($key, $value, $type, $prefix, $options)
 
 filterFullText ($key, $value, $type, $prefix, $options)
 
 filterIn ($key, $value, $type, $prefix, $options)
 
 filterNotin ($key, $value, $type, $prefix, $options)
 
 filterDefault ($key, $value, $type, $prefix, $options)
 
 setPage ($page, $pageSize)
 
 moveArrayUp ($arr)
 
 moveArrayDown ($arr)
 
- Статические защищенные данные унаследованные от EntityList
static $instance = []
 

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

__construct ( )

Методы

static applyXOR (   $string,
  $key 
)
staticprotected

Искажает строку используя ключ

Аргументы
string$string- строка
string$key- ключ
Возвращает
string
beforeSqlWhereCallback (   $items,
  $filter_control 
)

Обработчик, который вызывается во время фильтрации данных на странице со списком в админ. панели

Аргументы
arrayof $items
\RS\Html\Filter\Control$filter_control
Возвращает
array
Исключения
RSException
changeUserPassword ( Orm\User  $user,
  $new_pass,
  $new_pass_confirm 
)

Изменяет пароль пользователя

Аргументы
mixed$hash
mixed$new_pass
mixed$new_pass_confirm
Возвращает
bool
Исключения
EventException
generatePasswords (   $ids)

Генерирует новые пароли для пользователей и отправляет соответствующее уведомление на почту пользователей

Аргументы
array$ids
Возвращает
bool
Исключения
RSException
getAuthLoginPlaceholder ( )

Возвращает текст для placeholder'а поля логин

Возвращает
string
getByHash (   $hash)

Возвращает пользователя по публичному хэшу

Аргументы
string$hash
Возвращает
User $user
Исключения
RSException
getLike (   $term,
array  $fields,
  $filters = [],
  $limit = 5 
)

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

Аргументы
string$term- строка поиска
array$fields- поля, по которым осущесвлять частичный поиск
array$filters- фильтры. ключи фильтров перечислены в константах self::USER_LIKE_FILTER_*
int$limit- количество результатов
Возвращает
User[] $user
getRecoverLoginPlaceholder ( )

Возвращает placeholder для поля ввода логина для восстановления пароля

Возвращает
string
getRecoverTypeByLogin (   $login,
User  $user 
)

Возвращает тип восстановления пароля, который подходит для $login и $user с учетом текущих настроек системы

Аргументы
string$login
User$user
Возвращает
string
static getUserUniq ( Orm\User  $user,
  $xor_key = '' 
)
static

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

Аргументы
\Users\Model\Orm\User$user
Возвращает
string
multiUpdate ( array  $data,
  $ids = [] 
)

Функция быстрого группового редактирования пользователей

Аргументы
array$data- массив данных для обновления
array$ids- идентификаторы товаров на обновление
Возвращает
void
Исключения
DbException
RSException
static normalizePhoneNumber (   $number)
static

Нормализует номер телефона. Заменяет 8 на +7 (настраивается в настройках модуля) Добавляет код страны +7 (настраивается), если он не указан

Аргументы
string$number
Возвращает
string
static normalizePhonesOldUsers ( )
static

Выполняет нормализацию телефонных номеров старых пользователей. Возвращает количество нормализованных номеров

Возвращает
integer
Исключения
DbException
RSException
sendRecoverEmail (   $login,
  $admin = false 
)

Отправляет письмо с инструкцией по восстановлению данных Предварительно загружает пользователя по полю авторизации

Аргументы
string$login- Логин пользователя
bool$admin
Возвращает
boolean
Исключения
DbException
OrmException
RSException
sendRecoverEmailByUser ( User  $user,
  $admin = false 
)

Отправляет письмо с инструкцией по восстановлению пароля клиенту

Аргументы
User$userПользователь, которому необходимо отправить письмо с инструкцией по восстановлению пароля
bool$adminЕсли true, значит восстановление происходит в административной панели
Возвращает
bool
setFilter (   $key,
  $value = '',
  $type = '=',
  $prefix = 'AND',
array  $options = [] 
)

Устанавливает фильтр для последующей выборки элементов

Аргументы
string  |  array$key- имя поля (соответствует имени поля в БД) или массив для установки группового фильтра Пример применения группового фильтра: array( 'title' => 'Название', // AND title = 'Название' '|title:like' => 'Текст' // OR title LIKE 'Текст' '&title:like' => 'Текст' // AND title LIKE 'Текст' 'years:>' => 18, // AND years > 18 'years:<' => 21, // AND years < 21 ' years:>' => 30, // AND years > 30 #пробелы по краям вырезаются ' years:<' => 40, // AND years < 40 #пробелы по краям вырезаются 'id:in' => '12,23,45,67,34', // AND id IN (12,23,45,67,34) '|id:notin' => '44,33,23' // OR id NOT IN (44,33,23) 'id:is' => 'NULL' // AND id IS NULL 'id:is' => 'NOT NULL' // AND id IS NOT NULL

array( // AND ( 'name' => 'Артем', // name = 'Артем' '|name' => 'Олег' // OR name = 'Олег' ), // )

'|' => array( // OR ( 'surname' => 'Петров' // surname = 'Петров' '|surname' => 'Иванов' // OR surname = 'Иванов' ) // ) ) Общая маска ключей массива: [пробелы][&|]ИМЯ ПОЛЯ[:ТИП ФИЛЬТРА]

Аргументы
mixed$value- значение
string$type- =,<,>, in, notin, fulltext, like%, like%, like тип соответствия поля значению.
string$prefixусловие связки с предыдущими условиями (AND/OR/...)
array$options
Возвращает
EntityList
Исключения
RSException

Поля

$config
protected
$group_obj = '\Users\Model\Orm\UserInGroup'
protected
const RECOVER_PASSWORD_EMAIL_TPL = '%users%/email/recover_pass.tpl'
const RECOVER_TYPE_EMAIL = 'email'
const RECOVER_TYPE_NONE_EMAIL = 'none'
const RECOVER_TYPE_NONE_PHONE = 'none_phone'
const RECOVER_TYPE_PHONE = 'phone'
const USER_LIKE_FILTER_GROUPS = 'groups'