accounts/mirzaev/site/account/system/public/js/session.js

86 lines
2.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

'use strict';
class session {
/**
* Отправить входной псевдоним на сервер
*
* Записывает входной псевдоним в сессию, а так же проверяет существование аккаунта с ним
*
* @param {string} login Входной псевдоним
*
* @return {object} {(bool) exist, (array) errors}
*/
static async login(login) {
// Запрос к серверу
return await fetch('https://account.mirzaev.sexy/session/login', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: `login=${login}&remember=1&return=exist,errors`
})
.then((response) => response.json())
.then((data) => {
return data;
});
}
/**
* Отправить пароль на сервер
*
* Записывает пароль в сессию, а так же проверяет его на соответствование требованиям
*
* @param {string} password Пароль
*
* @return {object} {(bool) verify, (bool) account, (array) errors}
*/
static async password(password) {
// Запрос к серверу
return await fetch('https://account.mirzaev.sexy/session/password', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: `password=${password}&remember=1&return=verify,account,errors`
})
.then((response) => response.json())
.then((data) => {
return data;
});
}
/**
* Отправить ключ приглашения на сервер
*
* Записывает ключ приглашения в сессию, а так же проверяет существование приглашения
*
* @param {string} invite Ключ приглашения
*
* @return {object} {(bool) exist, (array) from, (array) errors}
*/
static async invite(invite) {
// Запрос к серверу
return await fetch("https://account.mirzaev.sexy/session/invite", {
method: "POST",
headers: {
"Content-Type": "application/x-www-form-urlencoded",
},
body: `invite=${invite}&remember=1&return=exist,from,errors`,
})
.then((response) => response.json())
.then((data) => {
if (data.exist === false) {
// Не найдено приглашение
// Инициализация категории ошибок
if (typeof data.errors.session === 'undefined') data.errors.session = [];
// Запись ошибки
data.errors.session.push('Не найдено приглашение');
}
return data;
});
}
}