From 53697249c634d3f6ffd1649d7222d0c3c5c1abf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Fischer?= Date: Thu, 28 Nov 2019 16:00:22 +0100 Subject: [PATCH] Add handle of init new tokens --- src/colnod/syncmanager.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/colnod/syncmanager.cpp b/src/colnod/syncmanager.cpp index 1529509..9e630c2 100644 --- a/src/colnod/syncmanager.cpp +++ b/src/colnod/syncmanager.cpp @@ -99,7 +99,7 @@ bool SyncManager::startSynchronization() qInfo(syncmanager) << "PROCESSING DATA -> FINISHED"; qInfo(syncmanager) << equals; - updateLastUpdate(syncBegin); + updateLastUpdate(syncBegin); // TODO: change to update all attrinutes connect(this, &SyncManager::syncFinished, [=](){ if (database->isValid() && colnod->isValid()) { database->setLastSync(syncBegin); @@ -168,6 +168,9 @@ std::unique_ptr SyncManager::prepareDataNew(const std::shared_ptr< qInfo(syncmanager) << dash; for (const auto &databaseToken : databaseData->updatedTokens) { + if (databaseToken->name().isEmpty()) { + initNewToken(databaseToken); + } // restriction cauesed by colnod rest api if (databaseToken->description() != "mobile") { @@ -199,6 +202,16 @@ std::unique_ptr SyncManager::prepareDataNew(const std::shared_ptr< return preparedData; } +void SyncManager::initNewToken(std::shared_ptr token) +{ + qint16 num = database->getNumOfTokensOfSubject(token->subjectId()); + token->setName(database->getSubjectNameByTokenId(token->id()) + "_mobile_" + QString::number(num + 1)); + token->setDescription("mobile"); + token->setTokenData(token->tokenData().toUpper()); + + qInfo(syncmanager).noquote() << Message::massageTemplate("Inicializing new", "token", "sync manager", token->name()); +} + bool SyncManager::downloadData() { bool res = true;