User

Описание

Класс User - предназначен для работы с учетными записями пользователей системы.

Доступен из любой точки программы.
Реализован в виде синглтона, что исключает его дублирование.

Методы со знаком * содержат хуки

Методы класса

object getInstance() Возвращает единственный экземпляр данного класса.
$obj User::getInstance();
array|object getThis() Возвращает авторизированнго пользователя.
$result User::getThis();
viweData($result);
bool add() * Добавляет новую учетную запись пользователя в базу сайта.
$userInfo = array(
    
'id' => null,                   // id пользователя, при добавлении null
    
'email' => 'mail@email.com',    // почта пользователя
    
'pass' => '123456',             // пароль
    
'name' => 'username',           // имя пользователя
    
'birthday' => '01.03.2018',     // день рождения пользователя
    
'sname' => 'usersname',         // фамилия
    
'address' => 'adr',             // адрес
    
'phone' => '+7 (111) 111-11-11',// телефон
    
'blocked' => 0,                 // флаг блокировки пользователя (1 = заблокирован)
    
'activity' => 1,                // флаг активности пользователя (0 = не активен)
    
'role' => 2                     // группа пользователя (1 - администратор, 2 - пользователь, 3 - менеджер, 4 - модератор)
);
User::add($userInfo);
bool delete() * Удаляет учетную запись пользователя из базы.
User::delete(3);
bool update() Обновляет учетную запись пользователя.
$data = array(
    
'id' => 14,                     // id пользователя
    
'email' => 'mail@email.com',    // почта пользователя
    
'pass' => '123456',             // пароль
    
'name' => 'username',           // имя пользователя
    
'birthday' => '01.03.2018',     // день рождения пользователя
    
'sname' => 'usersname',         // фамилия
    
'address' => 'adr',             // адрес
    
'phone' => '+7 (111) 111-11-11',// телефон
    
'blocked' => 0,                 // флаг блокировки пользователя (1 = заблокирован)
    
'activity' => 1,                // флаг активности пользователя (0 = не активен)
    
'role' => 2                     // группа пользователя (1 - администратор, 2 - пользователь, 3 - менеджер, 4 - модератор)
);
User::update(14$data);
void logout() Разлогинивает авторизованного пользователя.
User::logout();
bool|array auth() * Аутентифицирует данные, с помощью криптографического алгоритма.
User::auth('mail@email.com''123456');
void unlock() Отменяет блокировку авторизации пользователя
array getUserById() * Получает все данные пользователя из БД по ID.
$result User::getUserById(14);
viewData($result);
array getUserInfoByEmail() * Получает все данные пользователя из БД по email.
$result User::getUserById('mail@email.com');
viewData($result);
array getUserInfoByPhone() * Получает все данные пользователя из БД по номеру телефона.
$result User::getUserInfoByPhone('+7-999-999-99-99');
viewData($result);
bool isAuth() Проверяет, авторизован ли текущий пользователь.
$result User::isAuth();
var_dump($result);
array getListUser() * Получает список пользователей.
$result User::getListUser();
viewData($result);
array getMaxDate() Возвращает дату последней регистрации пользователя.
$result User::getMaxDate();
viewData($result);
array getMinDate() Возвращает дату первой регистрации пользователя.
$result User::getMinDate();
viewData($result);
array searchEmail() Получает все email пользователя из БД.
$result User::searchEmail('mail@email.com');
viewData($result);
string exportToCsvUser() Выгружает список пользователей в CSV файл.
$listUserId = array(15915);
$result User::exportToCsvUser($listUserId);
viewData($result);
int access() Получает права доступа пользователей сайта к различным разделам системы.
$result USER::access('product');
viewData($result);
array getUserOrderContent() Возвращает состав заказов пользователя для составления статистика покупок
array getOwners() Возвращает список ответственных за выбранные разделы магазины (товары, заказы, пользователи и т.д.)
Описание методов и примеры их использования

Метод

object getInstance ()

Описание

Возвращает единственный экземпляр данного класса.

$obj User::getInstance();

Метод

array|object getThis ()

Описание

Возвращает авторизированнго пользователя.

$result User::getThis();
viweData($result);

Метод

bool add (array $userInfo)

Параметры

  • $userInfo: массив значений для вставки в БД [Поле => Значение].

Результат работы метода можно изменить хуком: User_add

Описание

Добавляет новую учетную запись пользователя в базу сайта.

$userInfo = array(
    
'id' => null,                   // id пользователя, при добавлении null
    
'email' => 'mail@email.com',    // почта пользователя
    
'pass' => '123456',             // пароль
    
'name' => 'username',           // имя пользователя
    
'birthday' => '01.03.2018',     // день рождения пользователя
    
'sname' => 'usersname',         // фамилия
    
'address' => 'adr',             // адрес
    
'phone' => '+7 (111) 111-11-11',// телефон
    
'blocked' => 0,                 // флаг блокировки пользователя (1 = заблокирован)
    
'activity' => 1,                // флаг активности пользователя (0 = не активен)
    
'role' => 2                     // группа пользователя (1 - администратор, 2 - пользователь, 3 - менеджер, 4 - модератор)
);
User::add($userInfo);

Метод

bool delete (int $id)

Параметры

  • $id: пользователя, чью запись следует удалить.

Результат работы метода можно изменить хуком: User_delete

Описание

Удаляет учетную запись пользователя из базы.

User::delete(3);

Метод

bool update (int $id, array $databool $authRewrite false)

Параметры

  • $id: пользователя.
  • $data: массив значений для вставки в БД
  • $authRewrite: false = перезапишет данные в сессии детущего пользователя, на полученные у

Описание

Обновляет учетную запись пользователя.

$data = array(
    
'id' => 14,                     // id пользователя
    
'email' => 'mail@email.com',    // почта пользователя
    
'pass' => '123456',             // пароль
    
'name' => 'username',           // имя пользователя
    
'birthday' => '01.03.2018',     // день рождения пользователя
    
'sname' => 'usersname',         // фамилия
    
'address' => 'adr',             // адрес
    
'phone' => '+7 (111) 111-11-11',// телефон
    
'blocked' => 0,                 // флаг блокировки пользователя (1 = заблокирован)
    
'activity' => 1,                // флаг активности пользователя (0 = не активен)
    
'role' => 2                     // группа пользователя (1 - администратор, 2 - пользователь, 3 - менеджер, 4 - модератор)
);
User::update(14$data);

Метод

logout ()

Описание

Разлогинивает авторизованного пользователя.

User::logout();

Метод

bool|array auth (string $loginstring $passbool $getErrorStatus false)

Параметры

  • $login: емайл или номер телефона.
  • $pass: пароль.
  • $getErrorStatus: возвращать ответ в виде массива и при ошибке возвращать причину

Результат работы метода можно изменить хуком: User_auth

Описание

Аутентифицирует данные, с помощью криптографического алгоритма.

User::auth('mail@email.com''123456');

Метод

void unlock (string $unlockCode)

Параметры

  • $unlockCode: код разблокировки

Описание

Отменяет блокировку авторизации пользователя

Метод

array getUserById (int $id)

Параметры

  • $id: пользователя.

Результат работы метода можно изменить хуком: User_getUserById

Описание

Получает все данные пользователя из БД по ID.

$result User::getUserById(14);
viewData($result);

Метод

array getUserInfoByEmail (string $email$type email)

Параметры

  • $email: почта пользователя.

Результат работы метода можно изменить хуком: User_getUserInfoByEmail

Описание

Получает все данные пользователя из БД по email.

$result User::getUserById('mail@email.com');
viewData($result);

Метод

array getUserInfoByPhone (string $phone$type phone)

Параметры

  • $phone: номер телефона пользователя.

Результат работы метода можно изменить хуком: User_getUserInfoByPhone

Описание

Получает все данные пользователя из БД по номеру телефона.

$result User::getUserInfoByPhone('+7-999-999-99-99');
viewData($result);

Метод

bool isAuth ()

Описание

Проверяет, авторизован ли текущий пользователь.

$result User::isAuth();
var_dump($result);

Метод

array getListUser ()

Результат работы метода можно изменить хуком: User_getListUser

Описание

Получает список пользователей.

$result User::getListUser();
viewData($result);

Метод

array getMaxDate ()

Описание

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

$result User::getMaxDate();
viewData($result);

Метод

array getMinDate ()

Описание

Возвращает дату первой регистрации пользователя.

$result User::getMinDate();
viewData($result);

Метод

array searchEmail (string $email)

Параметры

  • $email: почтовый адрес пользователя.

Описание

Получает все email пользователя из БД.

$result User::searchEmail('mail@email.com');
viewData($result);

Метод

string exportToCsvUser (array $listUserId)

Параметры

  • $listUserId: массив с id пользователей для выгрузки (необязаьельно)

Описание

Выгружает список пользователей в CSV файл.

$listUserId = array(15915);
$result User::exportToCsvUser($listUserId);
viewData($result);

Метод

int access (string $zone)

Параметры

  • $zone: название зоны доступа
  • 1 admin_zone - админка,
  • 2 product - товары,
  • 3 page - страницы,
  • 4 category - категории,
  • 5 order - заказы,
  • 6 user - покупатели,
  • 7 plugin - плагины,
  • 8 setting - настройки,
  • 9 wholesales - оптовые цены

Описание

Получает права доступа пользователей сайта к различным разделам системы.

$result USER::access('product');
viewData($result);

Метод

array getUserOrderContent (string $email)

Параметры

  • $email:

Описание

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

Метод

array getOwners (string $typeboolean $filter false)

Параметры

  • $type: тип раздела
  • $filter:

Описание

Возвращает список ответственных за выбранные разделы магазины (товары, заказы, пользователи и т.д.)