1.0.14 • Published 9 years ago

@anzuev/studcloud.uams v1.0.14

Weekly downloads
1
License
ISC
Repository
github
Last release
9 years ago

UAMS

  UAMS

UAMS~UAMS

Kind: inner class of UAMS
this: {UAMS}

UAMS.configure(config)

Инициализация модуля. Здесь происходит попытка подключиться к бд, используя данные из конфига, а после происходит привязка модели User к данному подключению

Kind: static method of UAMS
Throws:

  • Error - не указано соединение для коллекции 'users'
ParamDescription
configконфигурация типа nconf

UAMS.getUserById(id) ⇒ user

Получение пользователя по id

Kind: static method of UAMS
Returns: user - объект типа user
Throws:

  • DbError - 404, пользователь не найден
  • DbError - 500, ошибка базы данных
ParamDescription
idидентификатор пользователя

UAMS.getUserByMail(mail) ⇒ user

Получение пользователя по почте

Kind: static method of UAMS
Returns: user - объект типа user
Throws:

  • DbError - 404, пользователь не найден
  • DbError - 500, ошибка базы данных
ParamDescription
mailпочтовый адрес

UAMS.getUserByPhone(phone) ⇒ user

Получение пользователя по номеру телефона

Kind: static method of UAMS
Returns: user - объект типа user
Throws:

  • DbError - 404, пользователь не найден
  • DbError - 500, ошибка базы данных
ParamTypeDescription
phonestringномер телефона

UAMS.getUsersByKeyAndContext(key, context) ⇒

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

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamTypeDescription
keyрегулярное выражение, сгенерированное на основе данных от пользователя.
contextobjectконтекст поиска. Возможны проверти university(objectId), faculty(objectId), year(number), group(string)

UAMS.getUsersByTwoKeysAndContext(key1, key2, context) ⇒

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

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamTypeDescription
key1регулярное выражение, сгенерированное на основе данных от пользователя.
key2регулярное выражение, сгенерированное на основе данных от пользователя.
contextobjectконтекст поиска. Возможны проверти university(objectId), faculty(objectId), year(number), group(string)

UAMS.getUsersByUniversity(university) ⇒

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

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamTypeDescription
universityMongoose.Types.ObjectIdid университета

UAMS.getUsersByFaculty(faculty) ⇒

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

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamTypeDescription
facultyMongoose.Types.ObjectIdid факультета

UAMS.getUsersByGroup(university, faculty, group) ⇒

Поиск пользователей по группе

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamTypeDescription
universityMongoose.Types.ObjectIdid университета
facultyMongoose.Types.ObjectIdid факультета
groupMongoose.Types.ObjectIdгруппа(string)

UAMS.getUsersByYear(year) ⇒

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

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamTypeDescription
yearMongoose.Types.ObjectIdгод обучения(курс)

UAMS.getUsersByMailConfirmation(skip) ⇒

Поиск пользователей с подтвержденной почтой

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • ValidationError - 400, параметр skip < 0
  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamDescription
skipсколько страниц сначала необходимо пропустить. На странице 20 элементов.

UAMS.countUsersByMailConfirmation() ⇒ number

Подсчет количества пользователей с подтвержденной почтой

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.getUsersByMobileConfirmation(skip) ⇒

Поиск пользователей с подтвержденным номером телефона

Kind: static method of UAMS
Returns: user массив из объектов типа user, если хотя бы один пользователь найден
Throws:

  • ValidationError - 400, параметр skip < 0
  • DbError - 204, не найдено пользователей, удовлетворяющих условиям
  • DbError - 500, ошибка базы данных
ParamDescription
skipсколько страниц сначала необходимо пропустить. На странице 20 элементов.

UAMS.countUsersByMobileConfirmation() ⇒ number

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

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.countNewUsersToday() ⇒ number

Подсчет новых пользователей за сегодня

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.countNewUsersThisWeek() ⇒ number

Подсчет новых пользователей за неделю

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.countNewUsersThisMonth() ⇒ number

Подсчет новых пользователей за месяц

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.countNewUsersThisYear() ⇒ number

Подсчет новых пользователей за год

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.countAllUsers() ⇒ number

Подсчет новых пользователей за все время

Kind: static method of UAMS
Returns: number - Количество пользователей
Throws:

  • DbError - 500, ошибка базы данных

UAMS.createUser(authData) ⇒ user

Создание нового пользователя

Kind: static method of UAMS
Returns: user - объект типа user, если все прошло успешно
Throws:

  • ValidationError 400, Mail is incorrect - длина почты меньше 5
  • ValidationError 400, Password is too weak - длина пароля меньше 5
  • ValidationError 400, Incorrect personal info - имя или фамилия не переданы
  • AuthError 400, mail {mail} already in use - почта уже кем-то используется
  • DbError - 500, ошибка базы данных
ParamDescription
authDataданные для авторизации. Пропирти можно увидеть в пункте properties

Properties

NameDescription
mailпочтовый адрес
passwordпароль
nameимя пользователя
surnameпароль

UAMS.blockUser(userId) ⇒ boolean

Блокировка юзера

Kind: static method of UAMS
Returns: boolean - true - все прошло хорошо
Throws:

  • DbError - 404, пользователь не найден
  • DbError - 500, ошибка базы данных
ParamDescription
userIdидентификатор пользователя

UAMS.removeUser(userId) ⇒ boolean

Удаление пользователя по идентификатору

Kind: static method of UAMS
Returns: boolean - true - все прошло хорошо
Throws:

  • DbError - 400, пользователь не найден
  • DbError - 500, ошибка базы данных
ParamDescription
userIdидентификатор пользователя

UAMS~User

Kind: inner class of UAMS
Access: public

user.changePhoto(photoId)

Изменить аватарку

Kind: instance method of User

ParamDescription
photoIdидентификатор фотографии на сервере статики

user.changeGroup(newGroup)

Изменить группу

Kind: instance method of User
Throws:

  • ValidationError 400, номер группы совпадает со старым
  • ValidationError 400, длина группы не может быть 0
ParamDescription
newGroupновая группа

user.changeUniversity(newUniversity)

Изменение университета

Kind: instance method of User
this: User

ParamTypeDescription
newUniversityvoidидентификатор университета return

user.changeFaculty(newFaculty)

Изменение факультета

Kind: instance method of User
Throws:

  • ValidationError 400, новый факультет совпадает со старым

this: User

ParamDescription
newFacultyid нового факультета

user.changeYear(newYear)

Изменение курса обучения

Kind: instance method of User
Throws:

  • ValidationError 400 - переданное значение курса < 0 или больше 6
ParamDescription
newYearновый курс

user.changeName(newName)

Изменение имени

Kind: instance method of User
Throws:

  • ValidationError 400, Имя должно содержать хотя бы 2 символа

this: {User}

ParamDescription
newNameновое имя

user.changeSurname(newSurname)

Изменение имени

Kind: instance method of User
Throws:

  • ValidationError 400, фамилия должна содержать хотя бы 2 символа

this: {User}

ParamDescription
newSurnameновая фамилия

user.format() ⇒ Object | *

Форматирование юзера к виду

Kind: instance method of User
this: {User}
Example

yield* user.format()
// result

{
     id: 5747521bf58f75460d9f5960,
     name: 'Антон',
     surname: 'Ильин',
     photo: '',
     year: 1,
     group: '4304',
     faculty: 'Компьютерные технологии',
     university: 'СПБГЭТУ Лэти'
}

user.saveUser() ⇒ user

Kind: instance method of User
Returns: user - все прошло хорошо, вернулся объект типа user
Throws:

  • DbError 500, ошибка базы данных

this: {User}

user.getAuthLevel() ⇒ number

Получение уровня авторизации

Kind: instance method of User
Returns: number - - 1, 2, 3, 4
this: {User}

user.isInGroup(group) ⇒ boolean

Пользователь принадлежит группе?

Kind: instance method of User
Returns: boolean - , true - принадлежит, false - не принадлежит
this: {User}

ParamDescription
groupгруппа

user.requestMailConfirmation() ⇒ string

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

Kind: instance method of User
Returns: string - Новый ключ
this: User

user.confirmMail(key) ⇒ boolean

Подтверждение почты

Kind: instance method of User
Returns: boolean - true - почта подтверждена, false - почта не подтверждена
Throws:

  • ValidationError - ключ не может быть пустым

this: User

ParamDescription
keyключ для подтверждения(длина больше 0)

user.requestMobileConfirmation() ⇒ string

Запрос ключа для подтверждения номера телефона

Kind: instance method of User
Returns: string - - ключ
this: User

user.confirmMobile(key) ⇒ boolean

Подтверждение мобильного телефона

Kind: instance method of User
Returns: boolean - true - номер телефона подтвержден, false - номер телефона не подтвержден
Throws:

  • ValidationError 400, ключ не может быть пустым

this: User

ParamDescription
keyключ для подтверждения(длина больше 0)

user.requestPasswordChange()

Запрос ключа для смены пароля

Kind: instance method of User
Throws:

  • ValidationError 405, Для смены пароля необходимо, чтобы почта была подтверждена

this: User

user.confirmPasswordToken(key) ⇒ boolean

Подтверждение смены пароля

Kind: instance method of User
Returns: boolean - true - ключ подходит, false - ключ не подходит
Throws:

  • ValidationError 400, ключ не может быть пустым

this: User

ParamDescription
keyключ для подветржения

user.setNewPassword(password) ⇒ void

Установка нового пароля

Kind: instance method of User
Throws:

  • ValidationError 400, пароль не может быть короче 5 символов

this: User

ParamDescription
passwordновый парол

user.getContactsByOneKey(key, context) ⇒ promise

Получение контактов пользователя по ключу и контексту

Kind: instance method of User
this: User
Fulfil: user - объект вида user
Reject: DbError 204, не найдено контактов
Reject: DbError 500, ошибка базы данных

ParamDescription
keyключ(регулярное выражение)
contextобъект. Поддерживаемые значения - university, faculty, year, group

user.getContactsByTwoKeys(key1, key2, context) ⇒ promise

Получение контактов пользователя по двум ключам и контексту

Kind: instance method of User
this: User
Fulfil: user - объект вида user
Reject: DbError 204, не найдено контактов
Reject: DbError 500, ошибка базы данных

ParamDescription
key1ключ(регулярное выражение)
key2ключ(регулярное выражение)
contextобъект. Поддерживаемые значения - university, faculty, year, group

user.getContactsByContext(context) ⇒ promise

Получение контактов пользователя по контексту

Kind: instance method of User
this: User
Fulfil: user - объект вида user
Reject: DbError 204, не найдено контактов
Reject: DbError 500, ошибка базы данных

ParamDescription
contextобъект. Поддерживаемые значения - university, faculty, year, group
1.0.14

9 years ago

1.0.13

9 years ago

1.0.12

9 years ago

1.0.11

9 years ago

1.0.10

9 years ago

1.0.9

9 years ago

1.0.8

9 years ago

1.0.7

9 years ago

1.0.6

9 years ago

1.0.5

9 years ago

1.0.4

9 years ago

1.0.3

9 years ago

1.0.2

9 years ago

1.0.1

9 years ago

1.0.0

9 years ago