Q_INVOKABLE bool UserModel::isUserConnected(const int &id)
{
- if (_users.isEmpty())
+ if (id < 0 || id >= _users.size())
return false;
return _users[id]->isConnected();
QImage UserModel::avatarById(const int &id)
{
- if (_users.isEmpty())
+ if (id < 0 || id >= _users.size())
return {};
return _users[id]->avatar();
Q_INVOKABLE QString UserModel::currentUserServer()
{
- if (_users.isEmpty())
+ if (_currentUserId < 0 || _currentUserId >= _users.size())
return {};
return _users[_currentUserId]->server();
Q_INVOKABLE void UserModel::openCurrentAccountLocalFolder()
{
- if (_users.isEmpty())
+ if (_currentUserId < 0 || _currentUserId >= _users.size())
return;
_users[_currentUserId]->openLocalFolder();
Q_INVOKABLE void UserModel::openCurrentAccountServer()
{
- if (_users.isEmpty())
+ if (_currentUserId < 0 || _currentUserId >= _users.size())
return;
QString url = _users[_currentUserId]->server(false);
Q_INVOKABLE void UserModel::switchCurrentUser(const int &id)
{
- if (_users.isEmpty())
+ if (_currentUserId < 0 || _currentUserId >= _users.size())
return;
disconnect(_users[_currentUserId], &User::accountStateChanged, this, &UserModel::refreshCurrentUserGui);
Q_INVOKABLE void UserModel::login(const int &id)
{
- if (_users.isEmpty())
+ if (id < 0 || id >= _users.size())
return;
_users[id]->login();
Q_INVOKABLE void UserModel::logout(const int &id)
{
- if (_users.isEmpty())
+ if (id < 0 || id >= _users.size())
return;
_users[id]->logout();
Q_INVOKABLE void UserModel::removeAccount(const int &id)
{
- if (_users.isEmpty())
+ if (id < 0 || id >= _users.size())
return;
QMessageBox messageBox(QMessageBox::Question,
ActivityListModel *UserModel::currentActivityModel()
{
- if (_users.isEmpty())
+ if (currentUserIndex() < 0 || currentUserIndex() >= _users.size())
return nullptr;
return _users[currentUserIndex()]->getActivityModel();
bool UserModel::currentUserHasActivities()
{
- if (_users.isEmpty())
+ if (currentUserIndex() < 0 || currentUserIndex() >= _users.size())
return false;
return _users[currentUserIndex()]->hasActivities();
bool UserModel::currentUserHasLocalFolder()
{
- if (_users.isEmpty())
+ if (currentUserIndex() < 0 || currentUserIndex() >= _users.size())
return false;
return _users[currentUserIndex()]->getFolder() != nullptr;
void UserModel::fetchCurrentActivityModel()
{
- if (!_users.isEmpty())
- _users[currentUserId()]->slotRefresh();
+ if (currentUserId() < 0 || currentUserId() >= _users.size())
+ return;
+
+ _users[currentUserId()]->slotRefresh();
}
AccountAppList UserModel::appList() const
{
- if (_users.isEmpty())
- return AccountAppList();
+ if (_currentUserId < 0 || _currentUserId >= _users.size())
+ return {};
return _users[_currentUserId]->appList();
}
User *UserModel::currentUser() const
{
- if (_users.isEmpty())
+ if (currentUserId() < 0 || currentUserId() >= _users.size())
return nullptr;
return _users[currentUserId()];