diff --git a/login_server/CMakeLists.txt b/login_server/CMakeLists.txt index b43127a48..bfa5fcb72 100644 --- a/login_server/CMakeLists.txt +++ b/login_server/CMakeLists.txt @@ -33,12 +33,102 @@ include_directories( "dependencies/poco/JSON/include" "dependencies/poco/Net/include" "dependencies/poco/NetSSL_OpenSSL/include" - "src/cpp/proto" + "build" + "build/proto" ) +############################## config and add grpc ################################### + +set(GRPC_PATH "${DEP_PATH}/grpc/build") +set(GRPC_ABSL_PATH "${GRPC_PATH}/third_party/abseil-cpp/absl/types") +set(GRPC_CARES_PATH "${GRPC_PATH}/third_party/cares/cares/lib") +set(GRPC_BORING_SSL_PATH "${GRPC_PATH}/third_party/boringssl-with-bazel") +set(GRPC_RE2_PATH "${GRPC_PATH}/third_party/re2") +set(GRPC_PROTOBUF_PATH "${GRPC_PATH}/third_party/protobuf") + +if(WIN32) + set(GRPC_PATH "${GRPC_PATH}/Debug") + set(GRPC_ABSL_PATH "${GRPC_ABSL_PATH}/Debug") + set(GRPC_CARES_PATH "${GRPC_CARES_PATH}/Debug") + set(GRPC_BORING_SSL_PATH "${GRPC_CGRPC_BORING_SSL_PATHARES_PATH}/Debug") + set(GRPC_RE2_PATH "${GRPC_RE2_PATH}/Debug") + set(GRPC_PROTOBUF_DEBUG_PATH "${GRPC_PROTOBUF_PATH}/Debug") +endif() +set(BUILD_TESTING OFF) +set(gRPC_SSL_PROVIDER "package") +add_subdirectory("dependencies/grpc/") +set(gRPC_SSL_PROVIDER "package") +message(STATUS "Using gRPC via add_subdirectory.") + +set(GRPC_LIBS libprotobuf grpc++_reflection grpc++) + +############################## parse protobuf files ################################### + +FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/src/proto GRADIDO_PROTO_MODEL_PATH) +FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/src/proto/hedera/hedera-protobuf/src/main/proto HEDERA_PROTO_MODEL_PATH) +FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/build/proto PROTOBINDING_PATH) +file(MAKE_DIRECTORY ${PROTOBINDING_PATH}) +file(MAKE_DIRECTORY ${PROTOBINDING_PATH}/gradido) +file(MAKE_DIRECTORY ${PROTOBINDING_PATH}/hedera) + +FILE(GLOB DATAMODEL_GRADIDO_PROTOS "${GRADIDO_PROTO_MODEL_PATH}/gradido/*.proto") +FILE(GLOB DATAMODEL_HEDERA_PROTOS "${HEDERA_PROTO_MODEL_PATH}/*.proto") + +find_program(GRPC_CPP_PLUGIN grpc_cpp_plugin PATHS "build/dependencies/grpc/bin" REQUIRED) +find_program(PROTOBUF_PROTOC_EXECUTABLE protoc PATHS "build/dependencies/grpc/third_party/protobuf/bin" REQUIRED) +FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/dependencies/grpc/third_party/protobuf/src GOOGLE_PROTOBUF_INCLUDES) + +FOREACH(proto ${DATAMODEL_GRADIDO_PROTOS}) + FILE(TO_NATIVE_PATH ${proto} proto_native) + get_filename_component(proto_parsed ${proto} NAME_WLE) + FILE(TO_NATIVE_PATH ${PROTOBINDING_PATH}/gradido/${proto_parsed}.pb.h proto_parsed_native) + + IF(${proto_native} IS_NEWER_THAN ${proto_parsed_native}) + EXECUTE_PROCESS( + COMMAND + ${PROTOBUF_PROTOC_EXECUTABLE} + --proto_path=${GRADIDO_PROTO_MODEL_PATH} + --cpp_out=${PROTOBINDING_PATH} + ${proto_native} + RESULT_VARIABLE rv + ) + # Optional, but that can show the user if something have gone wrong with the proto generation + IF(${rv}) + MESSAGE("Generation of data model returned ${rv} for proto ${proto_native}") + ENDIF() + ENDIF() + +ENDFOREACH(proto) + +FOREACH(proto ${DATAMODEL_HEDERA_PROTOS}) + FILE(TO_NATIVE_PATH ${proto} proto_native) + get_filename_component(proto_parsed ${proto} NAME_WLE) + FILE(TO_NATIVE_PATH ${PROTOBINDING_PATH}/hedera/${proto_parsed}.pb.h proto_parsed_native) + IF(${proto_native} IS_NEWER_THAN ${proto_parsed_native}) + EXECUTE_PROCESS( + COMMAND + ${PROTOBUF_PROTOC_EXECUTABLE} + --plugin=protoc-gen-grpc=${GRPC_CPP_PLUGIN} + --proto_path=${HEDERA_PROTO_MODEL_PATH} + --proto_path=${GOOGLE_PROTOBUF_INCLUDES} + --cpp_out=${PROTOBINDING_PATH}/hedera + --grpc_out ${PROTOBINDING_PATH}/hedera + ${proto_native} + RESULT_VARIABLE rv + ) + # Optional, but that can show the user if something have gone wrong with the proto generation + IF(${rv}) + MESSAGE("Generation of data model returned ${rv} for proto ${proto_native}") + ENDIF() + ENDIF() +ENDFOREACH(proto) + + +############################## bind source files ################################### + #set(MYSQL_INCLUDE_DIR "dependencies/mariadb-connector-c/include") FILE(GLOB CONTROLLER "src/cpp/controller/*.cpp" "src/cpp/controller/*.h") @@ -56,8 +146,8 @@ FILE(GLOB MODEL_GRADIDO "src/cpp/model/gradido/*.h" "src/cpp/model/gradido/*.cpp FILE(GLOB CRYPTO "src/cpp/Crypto/*.h" "src/cpp/Crypto/*.cpp") FILE(GLOB MAIN "src/cpp/*.cpp" "src/cpp/*.c" "src/cpp/*.h") FILE(GLOB MYSQL "src/cpp/MySQL/*.cpp" "src/cpp/MySQL/*.h" "src/cpp/MySQL/Poco/*.h") -FILE(GLOB PROTO_GRADIDO "src/cpp/proto/gradido/*.cc" "src/cpp/proto/gradido/*.h") -FILE(GLOB PROTO_HEDERA "src/cpp/proto/hedera/*.cc" "src/cpp/proto/hedera/*.h") +FILE(GLOB PROTO_GRADIDO "${PROTOBINDING_PATH}/gradido/*.cc" "${PROTOBINDING_PATH}/gradido/*.h") +FILE(GLOB PROTO_HEDERA "${PROTOBINDING_PATH}/hedera/*.cc" "${PROTOBINDING_PATH}/hedera/*.h") # used only for test project FILE(GLOB TEST "src/cpp/test/*.cpp" "src/cpp/test/*.h") @@ -142,33 +232,7 @@ add_subdirectory("dependencies/poco") set(POCO_LIBS PocoFoundation PocoUtil PocoNet PocoNetSSL PocoData) -############################## config and add grpc ################################### -set(GRPC_PATH "${DEP_PATH}/grpc/build") -set(GRPC_ABSL_PATH "${GRPC_PATH}/third_party/abseil-cpp/absl/types") -set(GRPC_CARES_PATH "${GRPC_PATH}/third_party/cares/cares/lib") -set(GRPC_BORING_SSL_PATH "${GRPC_PATH}/third_party/boringssl-with-bazel") -set(GRPC_RE2_PATH "${GRPC_PATH}/third_party/re2") -set(GRPC_PROTOBUF_PATH "${GRPC_PATH}/third_party/protobuf") - -if(WIN32) - set(GRPC_PATH "${GRPC_PATH}/Debug") - set(GRPC_ABSL_PATH "${GRPC_ABSL_PATH}/Debug") - set(GRPC_CARES_PATH "${GRPC_CARES_PATH}/Debug") - set(GRPC_BORING_SSL_PATH "${GRPC_CGRPC_BORING_SSL_PATHARES_PATH}/Debug") - set(GRPC_RE2_PATH "${GRPC_RE2_PATH}/Debug") - set(GRPC_PROTOBUF_DEBUG_PATH "${GRPC_PROTOBUF_PATH}/Debug") -endif() - - - -set(BUILD_TESTING OFF) -set(gRPC_SSL_PROVIDER "package") -add_subdirectory("dependencies/grpc/") -set(gRPC_SSL_PROVIDER "package") -message(STATUS "Using gRPC via add_subdirectory.") - -set(GRPC_LIBS libprotobuf grpc++_reflection grpc++) ############################## build login server ################################### if(UNIX) diff --git a/login_server/src/LOCALE/messages.pot b/login_server/src/LOCALE/messages.pot new file mode 100644 index 000000000..568881671 --- /dev/null +++ b/login_server/src/LOCALE/messages.pot @@ -0,0 +1,431 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2021-04-26 22:00+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:181 +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:260 +msgid "Login" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:181 +msgid "E-Mail or password isn't right, please try again!" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:190 +msgid "Passwort" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:190 +msgid "" +"Passwort wird noch berechnet, bitte versuche es in etwa 1 Minute erneut." +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:193 +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:196 +msgid "User" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:193 +msgid "Error in saved data, the server admin will look at it." +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:196 +msgid "Benutzer ist deaktiviert, kein Login möglich!" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:260 +msgid "Username and password are needed!" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:290 +#: model/Session.cpp:164 model/Session.cpp:171 model/Session.cpp:219 +#: model/Session.cpp:229 +msgid "E-Mail" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:291 +msgid "Password" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:292 +msgid " Login " +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:297 +msgid "You haven't any account yet? Please follow the link to create one." +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:299 +msgid "Create New Account" +msgstr "" + +#: F:\Gradido\gradido_stage2_local\login_server\src\cpsp\login.cpsp:303 +msgid "Passwort vergessen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:73 +msgid "E-Mail verifizieren" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:78 +msgid "" +"Deine E-Mail wurde erfolgreich bestätigt. Du kannst nun Gradidos versenden." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:79 +msgid "Zur Startseite" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:81 +msgid "Bitte gib deinen E-Mail Verification Code ein:" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:82 +#: model/Session.cpp:187 +msgid "Email Verification Code" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:83 +msgid "Überprüfe Code" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:86 +msgid "Du hast bisher keinen Code erhalten?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:87 +msgid "E-Mail erneut zuschicken (in Arbeit)" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:90 +msgid "Funktioniert dein E-Mail Verification Code nicht?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:91 +msgid "Schicke uns eine E-Mail und wir kümmern uns darum: " +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\checkEmail.cpsp:92 +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:151 +msgid "E-Mail an Support schicken" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:113 +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:124 +msgid "Gib bitte hier deine E-Mail Adresse an:" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:116 +msgid "Bestätigen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:126 +msgid "Hast du dir deine Passphrase notiert oder gemerkt?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:131 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:206 +msgid "Ja" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:136 +msgid "Nein" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:140 +msgid "Absenden" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:145 +msgid "Dir wird eine E-Mail zugeschickt um dein Passwort zurückzusetzen." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:147 +msgid "Der Admin hat eine E-Mail bekommen und wird sich bei dir melden." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:149 +msgid "" +"Du hast bereits eine E-Mail bekommen. Bitte schau auch in dein Spam-" +"Verzeichnis nach. " +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\resetPassword.cpsp:150 +msgid "" +"Du hast wirklich keine E-Mail erhalten und auch schon ein paar Minuten " +"gewartet?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:26 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:96 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:117 +#: model/Session.cpp:463 model/Session.cpp:475 model/Session.cpp:489 +msgid "Passphrase" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:27 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:266 +msgid "Neues Konto anlegen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:28 +msgid "2/3" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:96 +msgid "" +"Diese Passphrase ist ungültig, bitte überprüfen oder neu " +"generieren (lassen)." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:117 +msgid "intern error please try again later" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:132 +msgid "3/3" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:135 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:138 +msgid "1/3" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:137 +msgid "Neues Passwort anlegen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:148 +msgid "Passphrase abschreiben" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:159 +msgid "Was ist eine Passphrase?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:160 +msgid "Deine Passphrase besteht aus den im grünen Feld angezeigten Wörtern." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:161 +msgid "Sie dient deiner Sicherheit." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:162 +msgid "" +"Du brauchst deine Passphrase um dein Konto wiederherzustellen, wenn du mal " +"dein Passwort vergessen haben solltest." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:164 +msgid "Deine Passphrase (Groß/Kleinschreibung beachten)" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:169 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:197 +msgid "Was zu tun ist:" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:170 +msgid "" +"Schreibe dir die obenstehende Passphrase von Hand auf ein Blatt " +"Papier!" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:171 +msgid "Speichere sie auf keinen Fall auf deinem Rechner oder Mobilgerät!!" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:172 +msgid "Bewahre sie an einem sicheren Ort auf!" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:174 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:285 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:290 +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:303 +msgid "Weiter" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:198 +msgid "Hast du dir deine Passphrase gemerkt?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:199 +msgid "" +"Dann zeig es mir. Zur Unterstützung gebe ich dir deine Wörter aber in " +"anderer Reihenfolge." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:200 +msgid "Klicke sie an um sie einzusetzen." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:201 +msgid "Überprüfe dabei, ob du alle Wörter richtig geschrieben hast!" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:205 +msgid "" +"Weil du kein Javascript verwendest geht es direkt weiter. Hast du dir deine " +"Passphrase gemerkt oder aufgeschrieben?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:252 +msgid "Deine E-Mail Adresse wurde erfolgreich bestätigt." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:256 +msgid "Neue Gradido Adresse anlegen / wiederherstellen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:257 +msgid "" +"Möchtest du ein neues Gradido-Konto anlegen oder ein bestehendes " +"wiederherstellen?" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:273 +msgid "Bestehendes Konto wiederherstellen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:280 +msgid "" +"Falls du ein bestehendes Konto wiederherstellen willst, gib hier deine " +"Passphrase ein:" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:297 +msgid "Konto wiederherstellen / Neues Passwort anlegen" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:299 +msgid "" +"Um dein Konto wiederherzustellen und dir ein Neues Passwort auswählen zu " +"können, tippe hier bitte die Wörter deiner Passphrase in der richtigen " +"Reihenfolge ein, welche du dir aufgeschrieben hast." +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:313 +msgid "Fehler" +msgstr "" + +#: F:\Gradido\gradido_login_server\src\cpsp\passphrase.cpsp:314 +msgid "" +"Ungültige Seite, wenn du das siehst stimmt hier etwas nicht. Bitte wende " +"dich an den Server-Admin." +msgstr "" + +#: model/Session.cpp:150 model/Session.cpp:180 model/Session.cpp:769 +#: model/Session.cpp:775 model/Session.cpp:1051 model/Session.cpp:1067 +msgid "Benutzer" +msgstr "" + +#: model/Session.cpp:150 +msgid "Eingeloggter Benutzer ist kein Admin" +msgstr "" + +#: model/Session.cpp:156 model/Session.cpp:211 +msgid "Vorname" +msgstr "" + +#: model/Session.cpp:156 model/Session.cpp:160 model/Session.cpp:211 +#: model/Session.cpp:215 +msgid "" +"Bitte gebe einen Namen an. Mindestens 3 Zeichen, keines folgender Zeichen " +"<>&;" +msgstr "" + +#: model/Session.cpp:160 model/Session.cpp:215 +msgid "Nachname" +msgstr "" + +#: model/Session.cpp:164 model/Session.cpp:219 +msgid "Bitte gebe eine gültige E-Mail Adresse an." +msgstr "" + +#: model/Session.cpp:171 +msgid "Für diese E-Mail Adresse gibt es bereits einen Account" +msgstr "" + +#: model/Session.cpp:180 model/Session.cpp:187 +msgid "Fehler beim speichern!" +msgstr "" + +#: model/Session.cpp:229 +msgid "Für diese E-Mail Adresse gibt es bereits ein Konto" +msgstr "" + +#: model/Session.cpp:253 +msgid "Server" +msgstr "" + +#: model/Session.cpp:253 +msgid "Fehler beim speichen des Kontos bitte versuche es später noch einmal" +msgstr "" + +#: model/Session.cpp:348 model/Session.cpp:388 model/Session.cpp:956 +#: model/Session.cpp:965 +msgid "E-Mail Verification" +msgstr "" + +#: model/Session.cpp:348 +msgid "Du hast dein Konto bereits aktiviert!" +msgstr "" + +#: model/Session.cpp:388 +msgid "Falscher Code für aktiven Login" +msgstr "" + +#: model/Session.cpp:463 +msgid "Deine Passphrase ist ungütig" +msgstr "" + +#: model/Session.cpp:475 +msgid "Ein Fehler trat auf, bitte versuche es erneut" +msgstr "" + +#: model/Session.cpp:489 +msgid "Das ist nicht die richtige Passphrase." +msgstr "" + +#: model/Session.cpp:769 +msgid "Konnte Community Server nicht erreichen. E-Mail an den Admin ist raus." +msgstr "" + +#: model/Session.cpp:775 +msgid "" +"Fehler beim Löschen des Accounts. Bitte logge dich erneut ein und " +"versuche es nochmal." +msgstr "" + +#: model/Session.cpp:956 +msgid "Konnte kein passendes Konto finden." +msgstr "" + +#: model/Session.cpp:965 +msgid "Fehler beim laden des Benutzers." +msgstr "" + +#: model/Session.cpp:1051 +msgid "Kein gültiger Benutzer, bitte logge dich erneut ein." +msgstr "" + +#: model/Session.cpp:1067 +msgid "Fehler beim generieren der Passphrase, der Admin bekommt eine E-Mail. " +msgstr "" diff --git a/login_server/src/cpp/controller/HederaId.h b/login_server/src/cpp/controller/HederaId.h index 5ec8dffdf..fb43cd82b 100644 --- a/login_server/src/cpp/controller/HederaId.h +++ b/login_server/src/cpp/controller/HederaId.h @@ -8,7 +8,7 @@ #include "TableControllerBase.h" -#include "../proto/hedera/BasicTypes.pb.h" +#include "proto/hedera/BasicTypes.pb.h" namespace controller { class HederaAccount; @@ -43,4 +43,4 @@ namespace controller { }; } -#endif //GRADIDO_LOGIN_SERVER_CONTROLLER_HEDERA_ID_INCLUDE \ No newline at end of file +#endif //GRADIDO_LOGIN_SERVER_CONTROLLER_HEDERA_ID_INCLUDE diff --git a/login_server/src/cpp/lib/DataTypeConverter.h b/login_server/src/cpp/lib/DataTypeConverter.h index b3fe436a5..d61944081 100644 --- a/login_server/src/cpp/lib/DataTypeConverter.h +++ b/login_server/src/cpp/lib/DataTypeConverter.h @@ -11,9 +11,9 @@ #include "Poco/JSON/Array.h" #include "../SingletonManager/LanguageManager.h" -#include "../proto/hedera/Timestamp.pb.h" -#include "../proto/hedera/Duration.pb.h" -#include "../proto/gradido/BasicTypes.pb.h" +#include "proto/hedera/Timestamp.pb.h" +#include "proto/hedera/Duration.pb.h" +#include "proto/gradido/BasicTypes.pb.h" #include "sodium.h" @@ -37,13 +37,13 @@ namespace DataTypeConverter { MemoryBin* hexToBin(const std::string& hexString); MemoryBin* base64ToBin(const std::string& base64String, int variant = sodium_base64_VARIANT_ORIGINAL); - + std::string binToBase64(const unsigned char* data, size_t size, int variant = sodium_base64_VARIANT_ORIGINAL); inline std::string binToBase64(const MemoryBin* data, int variant = sodium_base64_VARIANT_ORIGINAL) { return binToBase64(data->data(), data->size(), variant); } inline std::string binToBase64(const std::string& proto_bin, int variant = sodium_base64_VARIANT_ORIGINAL) { return binToBase64((const unsigned char*)proto_bin.data(), proto_bin.size(), variant); } - + std::string binToHex(const unsigned char* data, size_t size); std::string binToHex(const Poco::Nullable& nullableBin); inline std::string binToHex(const MemoryBin* data) { return binToHex(data->data(), data->size());} diff --git a/login_server/src/cpp/model/email/Email.cpp b/login_server/src/cpp/model/email/Email.cpp index 185f13f74..36c411413 100644 --- a/login_server/src/cpp/model/email/Email.cpp +++ b/login_server/src/cpp/model/email/Email.cpp @@ -5,7 +5,7 @@ #include "../gradido/TransactionBase.h" -#include "../lib/DataTypeConverter.h" +#include "../../lib/DataTypeConverter.h" namespace model { @@ -169,7 +169,7 @@ Gradido Login-Server\n\ std::string content_string; switch (mType) { - case EMAIL_DEFAULT: + case EMAIL_DEFAULT: mailMessage->addRecipient(adminRecipient); mailMessage->setSubject(langCatalog->gettext_str("Default Email Subject")); mailMessage->addContent(new Poco::Net::StringPartSource(langCatalog->gettext_str("Empty Email Content"), mt.toString())); @@ -180,7 +180,7 @@ Gradido Login-Server\n\ mailMessage->setSubject(langCatalog->gettext_str("Error from Gradido Login Server")); mailMessage->addContent(new Poco::Net::StringPartSource(mErrorHtml, mt.toString())); break; - + case EMAIL_USER_VERIFICATION_CODE: case EMAIL_USER_VERIFICATION_CODE_RESEND: case EMAIL_USER_VERIFICATION_CODE_RESEND_AFTER_LONG_TIME: @@ -284,7 +284,7 @@ Gradido Login-Server\n\ std::string Email::replaceUserNamesAndLink( const char* src, const std::string& first_name, - const std::string& last_name, + const std::string& last_name, const std::string& link, Poco::UInt64 code ) { @@ -300,7 +300,7 @@ Gradido Login-Server\n\ else { addError(new Error(functionName, "no first_name placeholder found")); } - + findPos = result.find("[last_name]", findCursor); if (findPos != result.npos) { findCursor = findPos + last_name.size(); @@ -438,4 +438,4 @@ Gradido Login-Server\n\ return EMAIL_ERROR; } } -} \ No newline at end of file +} diff --git a/login_server/src/cpp/model/gradido/GroupMemberUpdate.h b/login_server/src/cpp/model/gradido/GroupMemberUpdate.h index 7bd146cfd..6a58000b9 100644 --- a/login_server/src/cpp/model/gradido/GroupMemberUpdate.h +++ b/login_server/src/cpp/model/gradido/GroupMemberUpdate.h @@ -2,7 +2,7 @@ #define __GRADIDO_LOGIN_SERVER_MODEL_GRADIDO_GROUP_MEMBER_UPDATE_H #include "TransactionBase.h" -#include "../../proto/gradido/GroupMemberUpdate.pb.h" +#include "proto/gradido/GroupMemberUpdate.pb.h" namespace model { @@ -26,4 +26,4 @@ namespace model { } } -#endif \ No newline at end of file +#endif diff --git a/login_server/src/cpp/model/gradido/Transaction.cpp b/login_server/src/cpp/model/gradido/Transaction.cpp index c8708ce35..f8203651c 100644 --- a/login_server/src/cpp/model/gradido/Transaction.cpp +++ b/login_server/src/cpp/model/gradido/Transaction.cpp @@ -9,9 +9,9 @@ #include "../../controller/HederaAccount.h" #include "../../controller/HederaRequest.h" -#include "../lib/DataTypeConverter.h" -#include "../lib/Profiler.h" -#include "../lib/JsonRequest.h" +#include "../../lib/DataTypeConverter.h" +#include "../../lib/Profiler.h" +#include "../../lib/JsonRequest.h" #include "../hedera/Transaction.h" #include "../hedera/TransactionId.h" @@ -30,7 +30,7 @@ namespace model { Transaction::Transaction(Poco::AutoPtr body) : mTransactionBody(body), mBodyBytesHash(0) { - + auto body_bytes = mTransactionBody->getBodyBytes(); mBodyBytesHash = DRMakeStringHash(body_bytes.data(), body_bytes.size()); mProtoTransaction.set_body_bytes(body_bytes); @@ -50,7 +50,7 @@ namespace model { auto body_bytes = mTransactionBody->getBodyBytes(); mBodyBytesHash = DRMakeStringHash(body_bytes.data(), body_bytes.size()); } - + Transaction::~Transaction() { Poco::ScopedLock _lock(mWorkMutex); @@ -76,7 +76,7 @@ namespace model { } auto body = TransactionBody::create("", user, proto::gradido::GroupMemberUpdate_MemberUpdateType_ADD_USER, group_model->getAlias()); - + Poco::AutoPtr result = new Transaction(body); auto model = result->getModel(); model->setHederaId(topic_id->getModel()->getID()); @@ -87,7 +87,7 @@ namespace model { Poco::AutoPtr Transaction::createCreation( Poco::AutoPtr receiver, - Poco::UInt32 amount, + Poco::UInt32 amount, Poco::DateTime targetDate, const std::string& memo, BlockchainType blockchainType @@ -101,7 +101,7 @@ namespace model { } auto network_type = ServerConfig::g_HederaNetworkType; auto receiver_model = receiver->getModel(); - + auto body = TransactionBody::create(memo, receiver, amount, targetDate, blockchainType); Poco::AutoPtr result = new Transaction(body); @@ -118,7 +118,7 @@ namespace model { } model->setHederaId(topic_id->getModel()->getID()); } - + result->insertPendingTaskIntoDB(receiver, model::table::TASK_TYPE_CREATION); PendingTasksManager::getInstance()->addTask(result); return result; @@ -129,7 +129,7 @@ namespace model { const MemoryBin* receiverPubkey, Poco::AutoPtr receiverGroup, Poco::UInt32 amount, - const std::string& memo, + const std::string& memo, BlockchainType blockchainType, bool inbound/* = true*/ ) @@ -143,25 +143,25 @@ namespace model { if (sender.isNull() || !sender->getModel() || !receiverPubkey || !amount) { return transaction; } - + auto sender_model = sender->getModel(); - - + + if (blockchainType == BLOCKCHAIN_MYSQL) { transaction_body = TransactionBody::create(memo, sender, receiverPubkey, amount, blockchainType); transaction = new Transaction(transaction_body); } - else if (blockchainType == BLOCKCHAIN_HEDERA) + else if (blockchainType == BLOCKCHAIN_HEDERA) { auto network_type = ServerConfig::g_HederaNetworkType; - - + + // LOCAL Transfer if (receiverGroup.isNull() || sender_model->getGroupId() == receiverGroup->getModel()->getID()) { topic_id = controller::HederaId::find(sender_model->getGroupId(), network_type); - if (topic_id.isNull()) + if (topic_id.isNull()) { em->addError(new ParamError(function_name, "could'n find topic for group: ", sender_model->getGroupId())); em->addError(new ParamError(function_name, "network type: ", network_type)); @@ -220,7 +220,7 @@ namespace model { transaction_model->setHederaId(topic_id->getModel()->getID()); } - + transaction->setParam("blockchain_type", (int)blockchainType); transaction->insertPendingTaskIntoDB(sender, model::table::TASK_TYPE_TRANSFER); PendingTasksManager::getInstance()->addTask(transaction); @@ -249,10 +249,10 @@ namespace model { } Poco::AutoPtr Transaction::createTransfer( - const MemoryBin* senderPubkey, - Poco::AutoPtr receiver, - std::string senderGroupAlias, - Poco::UInt32 amount, + const MemoryBin* senderPubkey, + Poco::AutoPtr receiver, + std::string senderGroupAlias, + Poco::UInt32 amount, const std::string& memo, BlockchainType blockchainType ) @@ -268,7 +268,7 @@ namespace model { //std::vector> bodys; auto receiver_model = receiver->getModel(); auto network_type = ServerConfig::g_HederaNetworkType; - + auto sender_groups = controller::Group::load(senderGroupAlias); if (!sender_groups.size()) { em->addError(new ParamError(function_name, "couldn't find group", senderGroupAlias)); @@ -286,10 +286,10 @@ namespace model { Poco::Timestamp pairedTransactionId; // create only inbound transaction, and outbound before sending to hedera //for (int i = 0; i < 1; i++) { - + //transaction_group = receiverGroup; //topic_group = sender_group; - + if (transaction_group.isNull()) { em->addError(new Error(function_name, "transaction group is zero, inbound")); em->sendErrorsAsEmail(); @@ -314,7 +314,7 @@ namespace model { return result; } - + Poco::AutoPtr Transaction::load(model::table::PendingTask* dbModel) { @@ -335,10 +335,10 @@ namespace model { if (!finished) { transaction->ifEnoughSignsProceed(nullptr); } - + return transaction; } - + bool Transaction::insertPendingTaskIntoDB(Poco::AutoPtr user, model::table::TaskType type) { static const char* function_name = "Transaction::insertPendingTaskIntoDB"; @@ -355,7 +355,7 @@ namespace model { model->setTaskType(type); model->setRequest(mProtoTransaction.SerializeAsString()); if (!model->insertIntoDB(true)) { - + return false; } return true; @@ -365,8 +365,8 @@ namespace model { { static const char function_name[] = "Transaction::addSign"; Poco::ScopedLock _lock(mWorkMutex); - - if (user.isNull() || !user->getModel()) + + if (user.isNull() || !user->getModel()) { addError(new Error(function_name, "error user is invalid")); return false; @@ -381,9 +381,9 @@ namespace model { } auto hash = DRMakeStringHash(bodyBytes.data(), bodyBytes.size()); - + auto sigMap = mProtoTransaction.mutable_sig_map(); - if (sigMap->sigpair_size() > 0 && mBodyBytesHash && mBodyBytesHash != hash) + if (sigMap->sigpair_size() > 0 && mBodyBytesHash && mBodyBytesHash != hash) { addError(new Error(function_name, "body bytes hash has changed and signature(s) exist already!")); return false; @@ -413,33 +413,33 @@ namespace model { auto gradido_key_pair = user->getGradidoKeyPair(); KeyPairEd25519* recovered_gradido_key_pair = nullptr; - if (!gradido_key_pair || !gradido_key_pair->hasPrivateKey()) + if (!gradido_key_pair || !gradido_key_pair->hasPrivateKey()) { - if (!user->tryLoadPassphraseUserBackup(&recovered_gradido_key_pair)) + if (!user->tryLoadPassphraseUserBackup(&recovered_gradido_key_pair)) { - if (user->setGradidoKeyPair(recovered_gradido_key_pair)) + if (user->setGradidoKeyPair(recovered_gradido_key_pair)) { user->getModel()->updatePrivkey(); } - } - else + } + else { addError(new Error(function_name, "user cannot decrypt private key")); return false; } } - + MemoryBin* sign = nullptr; - if (gradido_key_pair) + if (gradido_key_pair) { sign = gradido_key_pair->sign(bodyBytes); } - else if (recovered_gradido_key_pair) + else if (recovered_gradido_key_pair) { sign = recovered_gradido_key_pair->sign(bodyBytes); } - if (!sign) + if (!sign) { ErrorManager::getInstance()->sendErrorsAsEmail(); addError(new Error(function_name, "error by calculate signature")); @@ -457,7 +457,7 @@ namespace model { mm->releaseMemory(sign); updateRequestInDB(); - + return ifEnoughSignsProceed(user); } @@ -509,7 +509,7 @@ namespace model { // check if all signatures belong to current body bytes auto body_bytes = mProtoTransaction.body_bytes(); - for (auto it = sig_map.sigpair().begin(); it != sig_map.sigpair().end(); it++) + for (auto it = sig_map.sigpair().begin(); it != sig_map.sigpair().end(); it++) { KeyPairEd25519 key_pair((const unsigned char*)it->pubkey().data()); if (!key_pair.verify(body_bytes, it->ed25519())) { @@ -537,7 +537,7 @@ namespace model { addError(new ParamError(function_name, "user public key has invalid size: ", pubkey_size)); return false; } - for (auto it = sig_pairs.begin(); it != sig_pairs.end(); it++) + for (auto it = sig_pairs.begin(); it != sig_pairs.end(); it++) { if (it->pubkey().size() != KeyPairEd25519::getPublicKeySize()) { addError(new ParamError(function_name, "signed public key has invalid length: ", it->pubkey().size())); @@ -589,7 +589,7 @@ namespace model { static const char* function_name = "Transaction::runSendTransaction"; auto result = validate(); if (TRANSACTION_VALID_OK != result) { - if ( TRANSACTION_VALID_MISSING_SIGN == result || TRANSACTION_VALID_CODE_ERROR == result + if ( TRANSACTION_VALID_MISSING_SIGN == result || TRANSACTION_VALID_CODE_ERROR == result || TRANSACTION_VALID_MISSING_PARAM == result || TRANSCATION_VALID_INVALID_PUBKEY == result || TRANSACTION_VALID_INVALID_SIGN == result) { addError(new ParamError(function_name, "code error", TransactionValidationToString(result))); @@ -599,20 +599,20 @@ namespace model { addError(new ParamError(function_name, "validation return: ", TransactionValidationToString(result))); //sendErrorsAsEmail(); } - else + else { - + std::string error_name; std::string error_description; auto lm = LanguageManager::getInstance(); auto user_model = getUser()->getModel(); auto t = lm->getFreeCatalog(lm->languageFromString(user_model->getLanguageKey())); switch (result) { - case TRANSACTION_VALID_FORBIDDEN_SIGN: + case TRANSACTION_VALID_FORBIDDEN_SIGN: error_name = t->gettext_str("Signature Error"); error_description = t->gettext_str("Invalid signature!"); break; - case TRANSACTION_VALID_INVALID_TARGET_DATE: + case TRANSACTION_VALID_INVALID_TARGET_DATE: error_name = t->gettext_str("Creation Error"); error_description = t->gettext_str("Invalid target date! No future and only 3 month in the past."); break; @@ -628,7 +628,7 @@ namespace model { error_name = t->gettext_str("Group Error"); error_description = t->gettext_str("Invalid Group Alias! I didn't know group, please check alias and try again."); break; - default: + default: error_name = t->gettext_str("Unknown Error"); error_description = t->gettext_str("Admin gets an E-Mail"); addError(new ParamError(function_name, "unknown error", TransactionValidationToString(result))); @@ -738,7 +738,7 @@ namespace model { auto hedera_precheck_code_string = hedera_transaction_response->getPrecheckCodeString(); auto precheck_code = hedera_transaction_response->getPrecheckCode(); auto cost = hedera_transaction_response->getCost(); - + // for showing in docker std::clog << "hedera response: " << hedera_precheck_code_string << ", cost: " << cost @@ -791,7 +791,7 @@ namespace model { return -4; } return 0; - + } int Transaction::runSendTransactionMysql() { @@ -807,10 +807,10 @@ namespace model { auto base_64_message = DataTypeConverter::binToBase64(raw_message, sodium_base64_VARIANT_URLSAFE_NO_PADDING); if (base_64_message == "") { - addError(new Error(function_name, "error convert final transaction to base64")); + addError(new Error(function_name, "error convert final transaction to base64")); return -7; } - + // create json request auto user = getUser(); @@ -834,7 +834,7 @@ namespace model { } return 1; } - + getErrors(&json_request); return -1; @@ -888,8 +888,8 @@ namespace model { return json_message; } - - + + /// TASK //////////////////////// SendTransactionTask::SendTransactionTask(Poco::AutoPtr transaction) : UniLib::controller::CPUTask(ServerConfig::g_CPUScheduler), mTransaction(transaction) @@ -938,4 +938,4 @@ namespace model { } } -} \ No newline at end of file +} diff --git a/login_server/src/cpp/model/gradido/Transaction.h b/login_server/src/cpp/model/gradido/Transaction.h index 9ff59100e..87dd487a2 100644 --- a/login_server/src/cpp/model/gradido/Transaction.h +++ b/login_server/src/cpp/model/gradido/Transaction.h @@ -3,23 +3,23 @@ /* * @author: Dario Rekowski - * + * * @date: 12.10.2020 - * - * @brief: mainly for signing gradido transaction + * + * @brief: mainly for signing gradido transaction */ -#include "../../proto/gradido/GradidoTransaction.pb.h" +#include "proto/gradido/GradidoTransaction.pb.h" #include "TransactionBody.h" #include "../../tasks/GradidoTask.h" #include "../../controller/User.h" -#include "../tasks/CPUTask.h" +#include "../../tasks/CPUTask.h" namespace model { namespace gradido { - + class Transaction : public GradidoTask { @@ -32,21 +32,21 @@ namespace model { // groupMemberUpdate static Poco::AutoPtr createGroupMemberUpdate(Poco::AutoPtr user, Poco::AutoPtr group); //! \brief transfer - //! \return + //! \return static Poco::AutoPtr createTransfer( - Poco::AutoPtr sender, - const MemoryBin* receiverPubkey, - Poco::AutoPtr receiverGroup, - Poco::UInt32 amount, - const std::string& memo, + Poco::AutoPtr sender, + const MemoryBin* receiverPubkey, + Poco::AutoPtr receiverGroup, + Poco::UInt32 amount, + const std::string& memo, BlockchainType blockchainType, bool inbound = true); Poco::AutoPtr createTransfer( - const MemoryBin* senderPubkey, + const MemoryBin* senderPubkey, Poco::AutoPtr receiver, - std::string senderGroupAlias, - Poco::UInt32 amount, + std::string senderGroupAlias, + Poco::UInt32 amount, const std::string& memo, BlockchainType blockchainType); @@ -66,7 +66,7 @@ namespace model { //! \brief validate and if valid send transaction via Hedera Consensus Service to node server int runSendTransaction(); - + inline Poco::AutoPtr getTransactionBody() { Poco::ScopedLock _lock(mWorkMutex); return mTransactionBody; } //! \brief get current body bytes from proto transaction and save it into db diff --git a/login_server/src/cpp/model/gradido/TransactionBase.h b/login_server/src/cpp/model/gradido/TransactionBase.h index bea79c971..a2f97ab97 100644 --- a/login_server/src/cpp/model/gradido/TransactionBase.h +++ b/login_server/src/cpp/model/gradido/TransactionBase.h @@ -11,11 +11,11 @@ #pragma warning(disable:4800) -#include "../lib/NotificationList.h" -#include "../proto/gradido/BasicTypes.pb.h" -#include "../SingletonManager/MemoryManager.h" +#include "../../lib/NotificationList.h" +#include "proto/gradido/BasicTypes.pb.h" +#include "../../SingletonManager/MemoryManager.h" -#include "../controller/User.h" +#include "../../controller/User.h" namespace model { namespace gradido { @@ -40,7 +40,7 @@ namespace model { public: TransactionBase(const std::string& memo); virtual ~TransactionBase(); - //! \return 0 if ok, < 0 if error, > 0 if not implemented + //! \return 0 if ok, < 0 if error, > 0 if not implemented virtual int prepare() = 0; virtual TransactionValidation validate() = 0; @@ -72,4 +72,4 @@ namespace model { -#endif //GRADIDO_LOGIN_SERVER_MODEL_TRANSACTION_BASE_INCLUDE \ No newline at end of file +#endif //GRADIDO_LOGIN_SERVER_MODEL_TRANSACTION_BASE_INCLUDE diff --git a/login_server/src/cpp/model/gradido/TransactionBody.h b/login_server/src/cpp/model/gradido/TransactionBody.h index 92ad2f2b5..af7d97b27 100644 --- a/login_server/src/cpp/model/gradido/TransactionBody.h +++ b/login_server/src/cpp/model/gradido/TransactionBody.h @@ -7,7 +7,7 @@ #include "TransactionCreation.h" #include "TransactionTransfer.h" -#include "../../proto/gradido/TransactionBody.pb.h" +#include "proto/gradido/TransactionBody.pb.h" #include "../../lib/MultithreadContainer.h" @@ -39,24 +39,24 @@ namespace model { //! \brief GroupMemberUpdate Transaction static Poco::AutoPtr create(const std::string& memo, Poco::AutoPtr user, proto::gradido::GroupMemberUpdate_MemberUpdateType type, const std::string& targetGroupAlias); //! \brief GradidoTransfer Transaction - //! \param group if group.isNull() it is a local transfer, else cross group transfer, + //! \param group if group.isNull() it is a local transfer, else cross group transfer, //! \param group if group is same as sender group outbound, else inbound static Poco::AutoPtr create( const std::string& memo, - Poco::AutoPtr sender, - const MemoryBin* receiverPublicKey, - Poco::UInt32 amount, + Poco::AutoPtr sender, + const MemoryBin* receiverPublicKey, + Poco::UInt32 amount, BlockchainType blockchainType, - Poco::Timestamp pairedTransactionId = Poco::Timestamp(), + Poco::Timestamp pairedTransactionId = Poco::Timestamp(), Poco::AutoPtr group = nullptr ); static Poco::AutoPtr create(const std::string& memo, const MemoryBin* senderPublicKey, Poco::AutoPtr receiver, Poco::UInt32 amount, Poco::Timestamp pairedTransactionId = Poco::Timestamp(), Poco::AutoPtr group = nullptr); static Poco::AutoPtr create(const std::string& memo, const MemoryBin* senderPublicKey, const MemoryBin* receiverPublicKey, Poco::UInt32 amount, const std::string groupAlias, TransactionTransferType transferType, Poco::Timestamp pairedTransactionId = Poco::Timestamp()); //! \brief GradidoCreation Transaction static Poco::AutoPtr create( - const std::string& memo, - Poco::AutoPtr receiver, - Poco::UInt32 amount, + const std::string& memo, + Poco::AutoPtr receiver, + Poco::UInt32 amount, Poco::DateTime targetDate, BlockchainType blockchainType ); @@ -68,7 +68,7 @@ namespace model { static const char* transactionTypeToString(TransactionType type); std::string getMemo(); void setMemo(const std::string& memo); - + bool isCreation() { Poco::ScopedLock _lock(mWorkMutex); return mType == TRANSACTION_CREATION; } bool isTransfer() { Poco::ScopedLock _lock(mWorkMutex); return mType == TRANSACTION_TRANSFER; } bool isGroupMemberUpdate() { Poco::ScopedLock _lock(mWorkMutex); return mType == TRANSACTION_GROUP_MEMBER_UPDATE; } @@ -97,4 +97,4 @@ namespace model { } } -#endif //GRADIDO_LOGIN_SERVER_MODEL_GRADIDO_TRANSACTION_BASE_H \ No newline at end of file +#endif //GRADIDO_LOGIN_SERVER_MODEL_GRADIDO_TRANSACTION_BASE_H diff --git a/login_server/src/cpp/model/gradido/TransactionCreation.h b/login_server/src/cpp/model/gradido/TransactionCreation.h index 7304f49cd..5b7e592d8 100644 --- a/login_server/src/cpp/model/gradido/TransactionCreation.h +++ b/login_server/src/cpp/model/gradido/TransactionCreation.h @@ -12,8 +12,8 @@ #pragma warning(disable:4800) #include "TransactionBase.h" -#include "../proto/gradido/GradidoCreation.pb.h" -#include "../controller/User.h" +#include "proto/gradido/GradidoCreation.pb.h" +#include "../../controller/User.h" namespace model { namespace gradido { @@ -47,4 +47,4 @@ namespace model { } -#endif //GRADIDO_LOGIN_SERVER_MODEL_TRANSACTION_CREATION_INCLUDE \ No newline at end of file +#endif //GRADIDO_LOGIN_SERVER_MODEL_TRANSACTION_CREATION_INCLUDE diff --git a/login_server/src/cpp/model/gradido/TransactionTransfer.h b/login_server/src/cpp/model/gradido/TransactionTransfer.h index 57259059f..86da71207 100644 --- a/login_server/src/cpp/model/gradido/TransactionTransfer.h +++ b/login_server/src/cpp/model/gradido/TransactionTransfer.h @@ -15,7 +15,7 @@ //#include "Transaction.h" #include "../proto/gradido/GradidoTransfer.pb.h" -#include "../controller/User.h" +#include "../../controller/User.h" namespace model { namespace gradido { @@ -81,4 +81,4 @@ namespace model { } -#endif //GRADIDO_LOGIN_SERVER_MODEL_TRANSACTION_TRANSFER_INCLUDE \ No newline at end of file +#endif //GRADIDO_LOGIN_SERVER_MODEL_TRANSACTION_TRANSFER_INCLUDE diff --git a/login_server/src/cpp/model/hedera/ConsensusCreateTopic.h b/login_server/src/cpp/model/hedera/ConsensusCreateTopic.h index b639ee305..6dbd64257 100644 --- a/login_server/src/cpp/model/hedera/ConsensusCreateTopic.h +++ b/login_server/src/cpp/model/hedera/ConsensusCreateTopic.h @@ -4,11 +4,11 @@ #include "../../SingletonManager/MemoryManager.h" #include "../../controller/HederaId.h" -#include "../../proto/hedera/ConsensusCreateTopic.pb.h" +#include "proto/hedera/ConsensusCreateTopic.pb.h" namespace model { namespace hedera { - class ConsensusCreateTopic + class ConsensusCreateTopic { public: ConsensusCreateTopic(Poco::AutoPtr autoRenewHederaAccountId, Poco::UInt32 autoRenewPeriod); @@ -29,4 +29,4 @@ namespace model { } -#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_CREATE_TOPIC_H \ No newline at end of file +#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_CREATE_TOPIC_H diff --git a/login_server/src/cpp/model/hedera/ConsensusSubmitMessage.h b/login_server/src/cpp/model/hedera/ConsensusSubmitMessage.h index d08b72279..30b18664f 100644 --- a/login_server/src/cpp/model/hedera/ConsensusSubmitMessage.h +++ b/login_server/src/cpp/model/hedera/ConsensusSubmitMessage.h @@ -1,7 +1,7 @@ #ifndef __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_SUBMIT_MESSAGE_H #define __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_SUBMIT_MESSAGE_H -#include "../../proto/hedera/ConsensusSubmitMessage.pb.h" +#include "proto/hedera/ConsensusSubmitMessage.pb.h" #include "../../controller/HederaId.h" namespace model { @@ -20,7 +20,7 @@ namespace model { bool validate(); - + protected: proto::ConsensusSubmitMessageTransactionBody* mConsensusMessageBody; @@ -29,4 +29,4 @@ namespace model { } } -#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_SUBMIT_MESSAGE_H \ No newline at end of file +#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_SUBMIT_MESSAGE_H diff --git a/login_server/src/cpp/model/hedera/ConsensusTopicInfo.h b/login_server/src/cpp/model/hedera/ConsensusTopicInfo.h index 123b9496b..c25819498 100644 --- a/login_server/src/cpp/model/hedera/ConsensusTopicInfo.h +++ b/login_server/src/cpp/model/hedera/ConsensusTopicInfo.h @@ -2,7 +2,7 @@ #define __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_GET_TOPIC_INFO_RESPONSE_H #include "../proto/hedera/ConsensusTopicInfo.pb.h" -#include "../SingletonManager/MemoryManager.h" +#include "../../SingletonManager/MemoryManager.h" #include "../../lib/DataTypeConverter.h" #include "Poco/DateTime.h" @@ -31,4 +31,4 @@ namespace model } } -#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_GET_TOPIC_INFO_RESPONSE_H \ No newline at end of file +#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CONSENSUS_GET_TOPIC_INFO_RESPONSE_H diff --git a/login_server/src/cpp/model/hedera/CryptoCreateTransaction.h b/login_server/src/cpp/model/hedera/CryptoCreateTransaction.h index 7182f3506..8cb4f9039 100644 --- a/login_server/src/cpp/model/hedera/CryptoCreateTransaction.h +++ b/login_server/src/cpp/model/hedera/CryptoCreateTransaction.h @@ -1,9 +1,9 @@ #ifndef __GRADIDO_LOGIN_MODEL_HEDERA_CRYPTO_CREATE_TRANSACTION_H #define __GRADIDO_LOGIN_MODEL_HEDERA_CRYPTO_CREATE_TRANSACTION_H -#include "../../proto/hedera/CryptoCreate.pb.h" +#include "proto/hedera/CryptoCreate.pb.h" -#include "../Crypto/KeyPairHedera.h" +#include "../../Crypto/KeyPairHedera.h" namespace model { namespace hedera { @@ -28,4 +28,4 @@ namespace model { -#endif //__GRADIDO_LOGIN_MODEL_HEDERA_CRYPTO_CREATE_TRANSACTION_H \ No newline at end of file +#endif //__GRADIDO_LOGIN_MODEL_HEDERA_CRYPTO_CREATE_TRANSACTION_H diff --git a/login_server/src/cpp/model/hedera/CryptoTransferTransaction.h b/login_server/src/cpp/model/hedera/CryptoTransferTransaction.h index 21d9bd3c3..6b1db2405 100644 --- a/login_server/src/cpp/model/hedera/CryptoTransferTransaction.h +++ b/login_server/src/cpp/model/hedera/CryptoTransferTransaction.h @@ -10,7 +10,7 @@ * */ -#include "../../proto/hedera/CryptoTransfer.pb.h" +#include "proto/hedera/CryptoTransfer.pb.h" #include "../../controller/HederaId.h" namespace model { @@ -37,4 +37,4 @@ namespace model { } -#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CRYPTO_TRANSFER_TRANSACTION_H \ No newline at end of file +#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_CRYPTO_TRANSFER_TRANSACTION_H diff --git a/login_server/src/cpp/model/hedera/Query.h b/login_server/src/cpp/model/hedera/Query.h index 0f149684c..4ed22d5b4 100644 --- a/login_server/src/cpp/model/hedera/Query.h +++ b/login_server/src/cpp/model/hedera/Query.h @@ -3,14 +3,14 @@ /*! * @author: Dario Rekowski - * + * * @date: 31.08.20 - * + * * @brief: class for put together hedera querys (ask for state data, not a transaction, but needs a payment transaction) * */ -#include "../../proto/hedera/Query.pb.h" +#include "proto/hedera/Query.pb.h" #include "../../controller/NodeServer.h" #include "../../Crypto/KeyPairHedera.h" #include "TransactionBody.h" @@ -39,7 +39,7 @@ namespace model { void setResponseType(proto::ResponseType type); proto::ResponseType getResponseType(); inline bool setTransactionFee(Poco::UInt64 fee) { return mTransactionBody->updateCryptoTransferAmount(fee);} - + inline const proto::Query* getProtoQuery() const { return &mQueryProto; } std::string getConnectionString() const; @@ -57,4 +57,4 @@ namespace model { } -#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_QUERY_H \ No newline at end of file +#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_QUERY_H diff --git a/login_server/src/cpp/model/hedera/Response.h b/login_server/src/cpp/model/hedera/Response.h index ea2445774..af5a36d80 100644 --- a/login_server/src/cpp/model/hedera/Response.h +++ b/login_server/src/cpp/model/hedera/Response.h @@ -10,7 +10,7 @@ * */ -#include "../../proto/hedera/Response.pb.h" +#include "proto/hedera/Response.pb.h" #include "ConsensusTopicInfo.h" #include "TransactionReceipt.h" #include "TransactionRecord.h" @@ -23,7 +23,7 @@ namespace model { public: Response(); ~Response(); - + inline proto::Response* getResponsePtr() { return &mResponseProto; } Poco::UInt64 getAccountBalance(); std::unique_ptr getConsensusTopicInfo(); @@ -31,17 +31,17 @@ namespace model { TransactionRecord* getTransactionRecord(); Poco::UInt64 getQueryCost(); proto::ResponseCodeEnum getResponseCode(); - + inline bool isCryptoGetAccountBalanceResponse() { return mResponseProto.has_cryptogetaccountbalance(); } inline bool isConsensusGetTopicInfoResponse() { return mResponseProto.has_consensusgettopicinfo(); } protected: proto::Response mResponseProto; - + }; } } -#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_RESPONSE_H \ No newline at end of file +#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_RESPONSE_H diff --git a/login_server/src/cpp/model/hedera/Transaction.h b/login_server/src/cpp/model/hedera/Transaction.h index 63d273eb0..6ba7e9511 100644 --- a/login_server/src/cpp/model/hedera/Transaction.h +++ b/login_server/src/cpp/model/hedera/Transaction.h @@ -10,7 +10,7 @@ * */ -#include "../../proto/hedera/Transaction.pb.h" +#include "proto/hedera/Transaction.pb.h" #include "../../Crypto/KeyPairHedera.h" #include "TransactionBody.h" @@ -25,7 +25,7 @@ namespace model { bool sign(std::unique_ptr keyPairHedera, const TransactionBody* transactionBody); bool sign(std::unique_ptr keyPairHedera, std::unique_ptr transactionBody); - + inline proto::Transaction* getTransaction() { return mTransaction; } inline std::string getConnectionString() const { return mConnection.getUriWithPort(); } const controller::NodeServerConnection& getConnection() const { return mConnection; } @@ -43,4 +43,4 @@ namespace model { } -#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_H \ No newline at end of file +#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_H diff --git a/login_server/src/cpp/model/hedera/TransactionBody.h b/login_server/src/cpp/model/hedera/TransactionBody.h index b9c25d0c4..c9975a42f 100644 --- a/login_server/src/cpp/model/hedera/TransactionBody.h +++ b/login_server/src/cpp/model/hedera/TransactionBody.h @@ -17,7 +17,7 @@ #include "ConsensusCreateTopic.h" #include "ConsensusSubmitMessage.h" -#include "../../proto/hedera/TransactionBody.pb.h" +#include "proto/hedera/TransactionBody.pb.h" namespace model { namespace hedera { @@ -44,7 +44,7 @@ namespace model { bool setCryptoCreate(CryptoCreateTransaction& cryptoCreateTransaction); bool setCreateTopic(ConsensusCreateTopic& consensusCreateTopicTransaction); bool setConsensusSubmitMessage(ConsensusSubmitMessage& consensusSubmitMessageTransaction); - //bool + //bool inline const proto::TransactionBody* getProtoTransactionBody() const { return &mTransactionBody; } inline std::string getConnectionString() const { return mConnection.getUriWithPort(); } @@ -54,7 +54,7 @@ namespace model { void updateTimestamp(); protected: - + proto::TransactionBody mTransactionBody; controller::NodeServerConnection mConnection; bool mHasBody; @@ -64,4 +64,4 @@ namespace model { } -#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_BODY_H \ No newline at end of file +#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_BODY_H diff --git a/login_server/src/cpp/model/hedera/TransactionGetReceiptQuery.h b/login_server/src/cpp/model/hedera/TransactionGetReceiptQuery.h index bf035a941..725f6b33e 100644 --- a/login_server/src/cpp/model/hedera/TransactionGetReceiptQuery.h +++ b/login_server/src/cpp/model/hedera/TransactionGetReceiptQuery.h @@ -2,7 +2,7 @@ #define GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_GET_RECEIPT_QUERY_H #include "QueryHeader.h" -#include "../../proto/hedera/TransactionGetReceipt.pb.h" +#include "proto/hedera/TransactionGetReceipt.pb.h" namespace model { namespace hedera { @@ -19,11 +19,11 @@ namespace model { protected: Poco::AutoPtr mQueryHeader; proto::TransactionGetReceiptQuery mProtoReceiptQuery; - + }; } } -#endif //GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_GET_RECEIPT_QUERY_H \ No newline at end of file +#endif //GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_GET_RECEIPT_QUERY_H diff --git a/login_server/src/cpp/model/hedera/TransactionId.h b/login_server/src/cpp/model/hedera/TransactionId.h index dcc877271..3f8c5114b 100644 --- a/login_server/src/cpp/model/hedera/TransactionId.h +++ b/login_server/src/cpp/model/hedera/TransactionId.h @@ -10,7 +10,7 @@ * */ -#include "../../proto/hedera/BasicTypes.pb.h" +#include "proto/hedera/BasicTypes.pb.h" #include "Poco/JSON/Object.h" @@ -26,7 +26,7 @@ namespace model { Poco::JSON::Object::Ptr convertToJSON(); - protected: + protected: Poco::Timestamp mTransactionValidStart; union { struct { @@ -41,4 +41,4 @@ namespace model { } -#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_ID_H \ No newline at end of file +#endif //_GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_ID_H diff --git a/login_server/src/cpp/model/hedera/TransactionRecord.h b/login_server/src/cpp/model/hedera/TransactionRecord.h index d14f42303..15ec1c4b3 100644 --- a/login_server/src/cpp/model/hedera/TransactionRecord.h +++ b/login_server/src/cpp/model/hedera/TransactionRecord.h @@ -1,11 +1,11 @@ #ifndef __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_RECORD_H #define __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_RECORD_H -#include "../../proto/hedera/TransactionRecord.pb.h" +#include "proto/hedera/TransactionRecord.pb.h" namespace model { - namespace hedera + namespace hedera { class TransactionRecord { diff --git a/login_server/src/cpp/model/hedera/TransactionResponse.h b/login_server/src/cpp/model/hedera/TransactionResponse.h index 325cbe73f..2f6293191 100644 --- a/login_server/src/cpp/model/hedera/TransactionResponse.h +++ b/login_server/src/cpp/model/hedera/TransactionResponse.h @@ -1,7 +1,7 @@ #ifndef __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_RESPONSE_H #define __GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_RESPONSE_H -#include "../../proto/hedera/TransactionResponse.pb.h" +#include "proto/hedera/TransactionResponse.pb.h" #include "Poco/Types.h" namespace model { @@ -27,4 +27,4 @@ namespace model { -#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_RESPONSE_H \ No newline at end of file +#endif //__GRADIDO_LOGIN_SERVER_MODEL_HEDERA_TRANSACTION_RESPONSE_H diff --git a/login_server/src/cpp/test/controller/TestHederaAccount.cpp b/login_server/src/cpp/test/controller/TestHederaAccount.cpp index 772377d2e..aaeaea723 100644 --- a/login_server/src/cpp/test/controller/TestHederaAccount.cpp +++ b/login_server/src/cpp/test/controller/TestHederaAccount.cpp @@ -1,12 +1,12 @@ #include "TestHederaAccount.h" -#include "../SingletonManager/ConnectionManager.h" +#include "../../SingletonManager/ConnectionManager.h" namespace controller { void TestHederaAccount::SetUp() { - + } - + TEST_F(TestHederaAccount, TestPick) { auto hedera_account = controller::HederaAccount::pick(ServerConfig::HEDERA_TESTNET, false); EXPECT_FALSE(hedera_account.isNull()); diff --git a/login_server/src/cpp/test/controller/TestHederaAccount.h b/login_server/src/cpp/test/controller/TestHederaAccount.h index 7e8e7843a..721ba17e8 100644 --- a/login_server/src/cpp/test/controller/TestHederaAccount.h +++ b/login_server/src/cpp/test/controller/TestHederaAccount.h @@ -1,6 +1,6 @@ #include "gtest/gtest.h" -#include "../controller/HederaAccount.h" +#include "../../controller/HederaAccount.h" namespace controller { @@ -10,4 +10,4 @@ namespace controller { void SetUp() override; }; -} \ No newline at end of file +} diff --git a/login_server/src/cpp/test/controller/TestHederaId.cpp b/login_server/src/cpp/test/controller/TestHederaId.cpp index c2fed10dd..d08dc7e59 100644 --- a/login_server/src/cpp/test/controller/TestHederaId.cpp +++ b/login_server/src/cpp/test/controller/TestHederaId.cpp @@ -1,5 +1,5 @@ #include "TestHederaId.h" -#include "../SingletonManager/ConnectionManager.h" +#include "../../SingletonManager/ConnectionManager.h" namespace controller { void TestHederaId::SetUp() diff --git a/login_server/src/cpp/test/controller/TestHederaId.h b/login_server/src/cpp/test/controller/TestHederaId.h index b6e4b574e..e19b56862 100644 --- a/login_server/src/cpp/test/controller/TestHederaId.h +++ b/login_server/src/cpp/test/controller/TestHederaId.h @@ -1,6 +1,6 @@ #include "gtest/gtest.h" -#include "../controller/HederaId.h" +#include "../../controller/HederaId.h" namespace controller { @@ -10,4 +10,4 @@ namespace controller { void SetUp() override; }; -} \ No newline at end of file +} diff --git a/login_server/src/cpp/test/crypto/TestAuthenticatedEncryption.cpp b/login_server/src/cpp/test/crypto/TestAuthenticatedEncryption.cpp index e863e773d..6c292869a 100644 --- a/login_server/src/cpp/test/crypto/TestAuthenticatedEncryption.cpp +++ b/login_server/src/cpp/test/crypto/TestAuthenticatedEncryption.cpp @@ -5,7 +5,7 @@ #include "../../lib/Profiler.h" #include "../../lib/DataTypeConverter.h" -#include "../ServerConfig.h" +#include "../../ServerConfig.h" void TestAuthenticatedEncryption::SetUp() { @@ -39,4 +39,4 @@ TEST_F(TestAuthenticatedEncryption, encryptDecryptTest) { EXPECT_EQ(std::string((const char*)*decrypted_message, decrypted_message->size()), test_message); // */ -} \ No newline at end of file +}