Косметические изменения
This commit is contained in:
parent
dd90f0adbe
commit
2dd35d0321
|
@ -25,7 +25,7 @@ use ArangoDBClient\Document as _document,
|
|||
class account
|
||||
{
|
||||
/**
|
||||
* Инициализировать
|
||||
* Инициализация
|
||||
*
|
||||
* @param _connection $session Сессия соединения с базой данных
|
||||
* @param int $id Идентификатор ВКонтакте
|
||||
|
@ -43,7 +43,7 @@ class account
|
|||
collection::init($session, longpoll::COLLECTION_ACCOUNTS);
|
||||
}
|
||||
|
||||
// Поиск
|
||||
// Поиск аккаунта
|
||||
if ($account = static::search($session, $id));
|
||||
else if ($account = document::write($session, longpoll::COLLECTION_ACCOUNTS, ['id' => $id]) and $journal)
|
||||
journal::init($session, $account)->write('create', [
|
||||
|
@ -62,12 +62,13 @@ class account
|
|||
]
|
||||
]);
|
||||
|
||||
// Поиск
|
||||
|
||||
// Поиск аккаунта
|
||||
return static::search($session, $id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Найти
|
||||
* Найти аккаунт
|
||||
*
|
||||
* @param _connection $session Сессия соединения с базой данных
|
||||
* @param int $id Идентификатор ВКонтакте
|
||||
|
|
|
@ -36,55 +36,57 @@ class chat
|
|||
*/
|
||||
public static function init(_connection $session, int $id, bool $journal = true, bool $create = true): ?_document
|
||||
{
|
||||
// Инициализация коллекции
|
||||
$collection = longpoll::COLLECTION_CHATS;
|
||||
|
||||
if ($create) {
|
||||
// Запрошено создание коллекций в случае их отсутствия
|
||||
|
||||
// Создание коллекции
|
||||
collection::init($session, longpoll::COLLECTION_CHATS);
|
||||
collection::init($session, $collection);
|
||||
}
|
||||
|
||||
// Поиск
|
||||
if ($chat = static::search($session, $id));
|
||||
else if ($chat = document::write($session, longpoll::COLLECTION_CHATS, ['id' => $id]) and $journal)
|
||||
journal::init($session, $chat)->write('create', [
|
||||
'changes' => [
|
||||
'new' => collection::search($session, sprintf(
|
||||
<<<'AQL'
|
||||
FOR x IN %s
|
||||
FILTER x._id == "%s"
|
||||
LIMIT 1
|
||||
RETURN x
|
||||
AQL,
|
||||
longpoll::COLLECTION_CHATS,
|
||||
$chat
|
||||
)),
|
||||
'old' => null
|
||||
]
|
||||
]);
|
||||
|
||||
// Поиск
|
||||
return static::search($session, $id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Найти в базе данных
|
||||
*
|
||||
* @param _connection $session Сессия соединения с базой данных
|
||||
* @param int $id Идентификатор ВКонтакте
|
||||
*
|
||||
* @return ?_document Инстанция документа
|
||||
*/
|
||||
public static function search(_connection $session, int $id): ?_document
|
||||
{
|
||||
return collection::search($session, sprintf(
|
||||
<<<'AQL'
|
||||
FOR x IN %s
|
||||
FILTER x.id == %u
|
||||
if ($account = collection::search($session, <<<AQL
|
||||
FOR x IN $collection
|
||||
FILTER x.id == "$id"
|
||||
LIMIT 1
|
||||
RETURN x
|
||||
AQL,
|
||||
longpoll::COLLECTION_CHATS,
|
||||
$id
|
||||
));
|
||||
AQL)) {
|
||||
// Найден аккаунт
|
||||
|
||||
return $account;
|
||||
}
|
||||
|
||||
if ($account = document::write($session, $collection, ['id' => $id])) {
|
||||
// Аккаунт записан
|
||||
|
||||
// Журналирование
|
||||
if ($journal && journal::init($session, $account)->write('create', [
|
||||
'changes' => [
|
||||
'new' => collection::search($session, <<<AQL
|
||||
FOR x IN $collection
|
||||
FILTER x._id == "$account"
|
||||
LIMIT 1
|
||||
RETURN x
|
||||
AQL),
|
||||
'old' => null
|
||||
]
|
||||
])) {
|
||||
// Записаны данные в журнал
|
||||
}
|
||||
|
||||
if ($account = collection::search($session, <<<AQL
|
||||
FOR x IN $collection
|
||||
FILTER x.id == "$id"
|
||||
LIMIT 1
|
||||
RETURN x
|
||||
AQL)) {
|
||||
// Найден аккаунт
|
||||
|
||||
return $account;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ class group
|
|||
collection::init($session, longpoll::COLLECTION_GROUPS);
|
||||
}
|
||||
|
||||
// Поиск
|
||||
// Поиск группы
|
||||
if ($group = static::search($session, $id));
|
||||
else if ($group = document::write($session, longpoll::COLLECTION_GROUPS, ['id' => $id]) and $journal)
|
||||
journal::init($session, $group)->write('create', [
|
||||
|
@ -53,12 +53,12 @@ class group
|
|||
]);
|
||||
|
||||
|
||||
// Поиск
|
||||
// Поиск группы
|
||||
return static::search($session, $id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Найти в базе данных
|
||||
* Найти группу
|
||||
*
|
||||
* @param _connection $session Сессия соединения с базой данных
|
||||
* @param int $id Идентификатор ВКонтакте
|
||||
|
@ -70,7 +70,7 @@ class group
|
|||
return collection::search($session, sprintf(
|
||||
<<<'AQL'
|
||||
FOR x IN %s
|
||||
FILTER x.id == %d
|
||||
FILTER x.id == %u
|
||||
LIMIT 1
|
||||
RETURN x
|
||||
AQL,
|
||||
|
|
Loading…
Reference in New Issue