Remove Flexiapi usage for login.

Display more login feedback.
This commit is contained in:
Julien Wadel 2023-09-14 16:33:07 +02:00
parent bc9a8d9a27
commit f346265122
20 changed files with 789 additions and 51 deletions

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Tento účet nelze přidat.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2648,6 +2688,10 @@ Klikněte zde: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Automaticky</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Přihlášení se nezdařilo. Zkontrolujte prosím uživatelské jméno/heslo.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Umuligt at oprette kontoen.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Klik her: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Fejl ved log ind. Tjek dit brugernavn eller kodeord.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Dieses Konto kann nicht hinzugefügt werden.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Klicken Sie hier: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Automatisch</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Login fehlgeschlagen. Bitte überprüfen Sie Ihren Benutzernamen und das Passwort.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Unable to add this account.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation>Account doesn&apos;t exist</translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation>Recovering account</translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation>Cannot open validation URL for the account creation request token</translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation>Waiting for validation at %1</translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation>The answer of account creation request token doesn&apos;t have token and validation_url fields</translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation>Cannot get request token for account creation (%1)&apos;</translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation>Requesting validation URL</translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation>Connecting</translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2634,6 +2674,10 @@ Click here: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Auto</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation>Login failed. Please check your username/password.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Imposible añadir esta cuenta.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Haga clic aquí: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Autenticación fallida. Por favor chequee su usuario y contraseña.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Impossible d&apos;ajouter ce compte.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Cliquez ici : &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Auto</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">La connexion a échoué. Merci de vérifier le nom d&apos;utilisateur/mot de passe.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Nem sikerült hozzáadni ezt a fiókot.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2619,6 +2659,10 @@ Kattintson ide: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Önműködő</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Bejelentkezés sikertelen. Kérjük, ellenőrizze felhasználónevét/jelszavát.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Impossibile aggiungere questo account.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Clicca: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Automatico</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Accesso fallito. Controlla l&apos;utente e la password.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation></translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2619,6 +2659,10 @@
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Nepavyko pridėti šios paskyros.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2647,6 +2687,10 @@ Spustelėkite čia: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Prisijungimas nepavyko. Patikrinkite savo naudotojo vardą/slaptažodį.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Não foi possível adicionar esta conta.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Clique aqui: &lt;a href=&quot;%1&quot;&gt;%1 &lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Auto</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Falha no login. Verifique seu nome de usuário/senha.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Не удалось добавить этот аккаунт.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2647,6 +2687,10 @@
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Авто</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Не удалось войти. Пожалуйста, проверьте правильность ввода имени пользователя и пароля.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Det gick inte att lägga till det här kontot.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2633,6 +2673,10 @@ Klicka här: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Inloggningen misslyckades. Kontrollera ditt användarnamn/lösenord.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Bu hesap eklenemiyor.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2619,6 +2659,10 @@ Buraya tıklayın: &lt;a href=&quot;%1&quot;&gt;%1&lt;/a&gt;
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation>Kendiliğinden</translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Giriş başarısız. Lütfen kullanıcı adı/parolanızı denetleyin.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation>Не вдалося додати цю обліківку.</translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2647,6 +2687,10 @@
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">Не вдалося увійти. Будь ласка, перевірте правильність уведення імени користувача та паролю.</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -259,6 +259,46 @@
<source>unableToAddAccount</source>
<translation></translation>
</message>
<message>
<source>noAccountExists</source>
<extracomment>&quot;Account doesn&apos;t exist&quot; : Warning message when no account has been found</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>recoveringAccount</source>
<extracomment>&apos;Recovering account&apos; : User message for recovering step.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>Cannot open validation url for the account creation request token</source>
<extracomment>&quot;Cannot open validation URL for the account creation request token&quot; : Warning message.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>waitingValidation</source>
<extracomment>&apos;Waiting for validation at %1&apos; : User message for validation. %1 is an URL.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>wrongTokenRequest</source>
<extracomment>&apos;The answer of account creation request token doesn&apos;t have token and validation_url fields&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>tokenError</source>
<extracomment>&apos;Cannot get request token for account creation (%1)&apos; : Status messsage. %1 is a code number.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>requestingValidationUrl</source>
<extracomment>&apos;Requesting validation URL&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
<source>loginStep</source>
<extracomment>&apos;Connecting&apos; : Status message</extracomment>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>AuthenticationRequest</name>
@ -2619,6 +2659,10 @@
<extracomment>&apos;Auto&apos; : One word for button action to set the auto tunnel mode.</extracomment>
<translation></translation>
</message>
<message>
<source>loginWithUsernameFailed</source>
<translation type="unfinished">/</translation>
</message>
</context>
<context>
<name>Recordings</name>

View file

@ -73,7 +73,7 @@ private:
const string &
) override {
if (status == linphone::AccountCreator::Status::AccountCreated){
emit mAssistant->createStatusChanged(QString(""));
emit mAssistant->createStatusChanged("");
createAccount(accountCreator);
CoreManager::getInstance()->getSipAddressesModel()->reset();
}else {
@ -106,7 +106,8 @@ private:
creator->isAliasUsed();
}else {
mAssistant->mNextAction = Idle;
emit mAssistant->loginStatusChanged(QString("Account doesn't exist"));
//: "Account doesn't exist" : Warning message when no account has been found
emit mAssistant->loginStatusChanged(tr("noAccountExists"));
mAssistant->setIsProcessing(false);
}
}else
@ -121,16 +122,17 @@ private:
}else if(mAssistant->mNextAction == AccountLogin) {
mAssistant->mNextAction = Idle;
if (mAssistant->mUsePhoneNumber) {
emit mAssistant->createStatusChanged("Recovering account");
//: 'Recovering account' : User message for recovering step.
emit mAssistant->createStatusChanged(tr("recoveringAccount"));
creator->recoverAccount();
}else{
emit mAssistant->loginStatusChanged(QString(""));
emit mAssistant->loginStatusChanged("");
createAccount(creator);
CoreManager::getInstance()->getSipAddressesModel()->reset();
mAssistant->setIsProcessing(false);
}
}else {
emit mAssistant->loginStatusChanged(QString(""));
emit mAssistant->loginStatusChanged("");
mAssistant->setIsProcessing(false);
}
@ -156,7 +158,7 @@ private:
mAssistant->mNextAction = Idle;
creator->createAccount();
}else{
emit mAssistant->loginStatusChanged(QString("Account doesn't exist"));
emit mAssistant->loginStatusChanged(tr("noAccountExists"));
mAssistant->setIsProcessing(false);
}
break;
@ -170,16 +172,16 @@ private:
}else if(mAssistant->mNextAction == AccountLogin) {
mAssistant->mNextAction = Idle;
if (mAssistant->mUsePhoneNumber) {
emit mAssistant->createStatusChanged("Recovering account");
emit mAssistant->createStatusChanged(tr("recoveringAccount"));
creator->recoverAccount();
}else{
emit mAssistant->loginStatusChanged(QString(""));
emit mAssistant->loginStatusChanged("");
createAccount(creator);
CoreManager::getInstance()->getSipAddressesModel()->reset();
mAssistant->setIsProcessing(false);
}
}else {
emit mAssistant->loginStatusChanged(QString(""));
emit mAssistant->loginStatusChanged("");
mAssistant->setIsProcessing(false);
}
break;
@ -203,21 +205,25 @@ private:
QString token = description.value("token").toString();
creator->setAccountCreationRequestToken(token.toStdString());
if(!QDesktopServices::openUrl(url)){
qCritical() << "Cannot open validation url for the account creation request token";
emit mAssistant->createStatusChanged("Cannot open validation url for the account creation request token");
qCritical() << "Cannot open validation URL for the account creation request token";
//: "Cannot open validation URL for the account creation request token" : Warning message.
emit mAssistant->createStatusChanged(tr("Cannot open validation url for the account creation request token"));
mAssistant->setIsProcessing(false);
}else {
emit mAssistant->createStatusChanged("Waiting for validation at " + url);
//: 'Waiting for validation at %1' : User message for validation. %1 is an URL.
emit mAssistant->createStatusChanged(tr("waitingValidation").arg(url));
creator->requestAccountCreationTokenUsingRequestToken();
}
}else{
qCritical() << "The answer of account creation request token doesn't have token and validation_url fields";
emit mAssistant->createStatusChanged("The answer of account creation request token doesn't have token and validation_url fields");
//: 'The answer of account creation request token doesn't have token and validation_url fields' : Status message
emit mAssistant->createStatusChanged(tr("wrongTokenRequest"));
mAssistant->setIsProcessing(false);
}
}else{
qCritical() << "Cannot get request token for account creation (" << (int)status << ")";
emit mAssistant->createStatusChanged("Cannot get request token for account creation (" +QString::number((int)status) + ")");
//: 'Cannot get request token for account creation (%1)' : Status messsage. %1 is a code number.
emit mAssistant->createStatusChanged(tr("tokenError").arg(QString::number((int)status)));
mAssistant->setIsProcessing(false);
}
}
@ -230,16 +236,15 @@ private:
creator->setToken(description.value("token").toString().toStdString());
// it will automatically use the account creation token.
if (mAssistant->mUsePhoneNumber) {
emit mAssistant->createStatusChanged("Checking phone account status");
//: 'Checking phone account status' : Status message
emit mAssistant->createStatusChanged("checkingPhoneStep");
mAssistant->mNextAction = AccountLogin;
creator->isAccountExist();
//emit mAssistant->createStatusChanged("Recovering account");
//creator->recoverAccount();
}else{
emit mAssistant->createStatusChanged("Checking account status");
//: 'Checking account status' : Status message
emit mAssistant->createStatusChanged("checkingAccountStep");
mAssistant->mNextAction = AccountCreation;
creator->isAccountExist();
//creator->createAccount();
}
}else
QTimer::singleShot(2000, [creator](){
@ -292,9 +297,7 @@ private:
const string &response
) override {
if (status == linphone::AccountCreator::Status::RequestOk) {
//createAccount(accountCreator);
//CoreManager::getInstance()->getSipAddressesModel()->reset();
emit mAssistant->recoverStatusChanged(QString(""));
emit mAssistant->recoverStatusChanged("");
} else {
if (status == linphone::AccountCreator::Status::RequestFailed)
emit mAssistant->recoverStatusChanged(tr("requestFailed"));
@ -312,7 +315,7 @@ private:
if( status == linphone::AccountCreator::Status::RequestOk){
createAccount(creator);
CoreManager::getInstance()->getSipAddressesModel()->reset();
emit mAssistant->activateStatusChanged(QString(""));
emit mAssistant->activateStatusChanged("");
} else {
if (status == linphone::AccountCreator::Status::RequestFailed)
emit mAssistant->activateStatusChanged(tr("requestFailed"));
@ -365,46 +368,80 @@ void AssistantModel::create () {
mNextAction = AccountCreation;
if(mAccountCreator->getUsername().empty())
mAccountCreator->setUsername(mAccountCreator->getPhoneNumber());
emit createStatusChanged("Requesting validation url");
emit createStatusChanged(tr("requestingValidationUrl"));
mAccountCreator->requestAccountCreationRequestToken();
}
class LoginListener : public linphone::AccountListener{
public:
LoginListener(AssistantModel * model) : mAssistant(model){}
virtual void onRegistrationStateChanged(const std::shared_ptr<linphone::Account> & account, linphone::RegistrationState state, const std::string & message) {
switch(state){
case linphone::RegistrationState::Failed:
emit mAssistant->loginStatusChanged(QObject::tr("loginWithUsernameFailed"));
mAssistant->setIsProcessing(false);
CoreManager::getInstance()->getCore()->removeAccount(account);
account->removeListener(mSelf);
mSelf = nullptr;
break;
case linphone::RegistrationState::Ok:
CoreManager::getInstance()->getAccountSettingsModel()->setDefaultAccount(account);
emit mAssistant->loginStatusChanged("");
mAssistant->setIsProcessing(false);
account->removeListener(mSelf);
mSelf = nullptr;
break;
default:{
}
}
}
AssistantModel *mAssistant;
std::shared_ptr<LoginListener> mSelf;
};
void AssistantModel::login () {
setIsProcessing(true);
if(mAccountCreator->getUsername().empty())
mAccountCreator->setUsername(mAccountCreator->getPhoneNumber());
if (mUsePhoneNumber) {
emit createStatusChanged("Requesting validation url");
//: 'Requesting validation URL' : Status message
emit createStatusChanged(tr("requestingValidationUrl"));
mNextAction = AccountLogin;
mAccountCreator->requestAccountCreationRequestToken();
return;
}
shared_ptr<linphone::Config> config(CoreManager::getInstance()->getCore()->getConfig());
if (!config->getString("assistant", "xmlrpc_url", "").empty()) {
mNextAction = AccountLogin;
mAccountCreator->isAccountExist();
return;
}
// No verification if no xmlrpc url.
mAccountCreator->setAsDefault(false);
auto account = mAccountCreator->createAccountInCore();
if(account){
auto listener = std::make_shared<LoginListener>(this);
listener->mSelf = listener;
account->addListener(listener);
AccountSettingsModel *accountSettingsModel = CoreManager::getInstance()->getAccountSettingsModel();
if (accountSettingsModel->addOrUpdateAccount(account, account->getParams()->clone())) {
accountSettingsModel->setDefaultAccount(account);
//: 'Connecting' : Status message
emit loginStatusChanged(tr("loginStep"));
}else {
emit loginStatusChanged(tr("loginWithUsernameFailed"));
CoreManager::getInstance()->getCore()->removeAccount(account);
setIsProcessing(false);
}
emit loginStatusChanged("");
return;
}
shared_ptr<linphone::Config> config(CoreManager::getInstance()->getCore()->getConfig());
// Cannot create new account from account creator. Use addOtherSipAccount directly.
QVariantMap map;
map["sipDomain"] = Utils::coreStringToAppString(config->getString("assistant", "domain", ""));
map["username"] = getUsername();
map["password"] = getPassword();
map["transport"] = LinphoneEnums::toString(LinphoneEnums::fromLinphone(mAccountCreator->getTransport()));
emit loginStatusChanged(addOtherSipAccount(map) ? QString("") : tr("unableToAddAccount"));
account = addOtherSipAccount(map);
if(account){
emit loginStatusChanged("");
CoreManager::getInstance()->getAccountSettingsModel()->setDefaultAccount(account);
}else{
emit loginStatusChanged(tr("unableToAddAccount"));
}
setIsProcessing(false);
}
@ -420,7 +457,7 @@ void AssistantModel::reset () {
// -----------------------------------------------------------------------------
bool AssistantModel::addOtherSipAccount (const QVariantMap &map) {
std::shared_ptr<linphone::Account> AssistantModel::addOtherSipAccount (const QVariantMap &map) {
CoreManager *coreManager = CoreManager::getInstance();
shared_ptr<linphone::Factory> factory = linphone::Factory::get();
@ -448,7 +485,7 @@ bool AssistantModel::addOtherSipAccount (const QVariantMap &map) {
if(!address) {
qWarning() << QStringLiteral("Unable to create address from domain `%1`.")
.arg(domain);
return false;
return nullptr;
}
const QString &transport(map["transport"].toString());
if (!transport.isEmpty()) {
@ -459,7 +496,7 @@ bool AssistantModel::addOtherSipAccount (const QVariantMap &map) {
if (accountParams->setServerAddress(address)) {
qWarning() << QStringLiteral("Unable to add server address: `%1`.")
.arg(QString::fromStdString(address->asString()));
return false;
return nullptr;
}
}
@ -467,7 +504,7 @@ bool AssistantModel::addOtherSipAccount (const QVariantMap &map) {
shared_ptr<linphone::Address> address = factory->createAddress(Utils::appStringToCoreString(sipAddress));
if (!address) {
qWarning() << QStringLiteral("Unable to create sip address object from: `%1`.").arg(sipAddress);
return false;
return nullptr;
}
address->setDisplayName(Utils::appStringToCoreString(map["displayName"].toString()));
@ -487,10 +524,9 @@ bool AssistantModel::addOtherSipAccount (const QVariantMap &map) {
AccountSettingsModel *accountSettingsModel = coreManager->getAccountSettingsModel();
if (accountSettingsModel->addOrUpdateAccount(account, accountParams)) {
accountSettingsModel->setDefaultAccount(account);
return true;
return account;
}
return false;
return account;
}
void AssistantModel::createTestAccount(){
}

View file

@ -54,13 +54,16 @@ public:
AssistantModel (QObject *parent = Q_NULLPTR);
virtual ~AssistantModel();
bool getIsProcessing() const;
void setIsProcessing(bool isProcessing);
Q_INVOKABLE void activate ();
Q_INVOKABLE void create ();
Q_INVOKABLE void login ();
Q_INVOKABLE void reset ();
Q_INVOKABLE bool addOtherSipAccount (const QVariantMap &map);
Q_INVOKABLE std::shared_ptr<linphone::Account> addOtherSipAccount (const QVariantMap &map);
Q_INVOKABLE void createTestAccount();
Q_INVOKABLE void generateQRCode();
@ -155,9 +158,6 @@ private:
bool getIsReadingQRCode() const;
void setIsReadingQRCode(bool isReading);
bool getIsProcessing() const;
void setIsProcessing(bool isProcessing);
QString mapAccountCreatorUsernameStatusToString (linphone::AccountCreator::UsernameStatus status) const;

View file

@ -147,9 +147,7 @@ bool AccountSettingsModel::addOrUpdateAccount (std::shared_ptr<linphone::Account
coreManager->addingAccount(account->getParams());
}
emit accountSettingsUpdated();
return true;
}

View file

@ -85,6 +85,8 @@ public:
bool getUseInternationalPrefixForCallsAndChats() const;
int getMissedCallsCount() const;
int getUnreadMessagesCount() const;
QString getUsername () const;
void setUsername (const QString &username);
Q_INVOKABLE void setDefaultAccount (const std::shared_ptr<linphone::Account> &account = nullptr);
Q_INVOKABLE void setDefaultAccountFromSipAddress (const QString &sipAddress);
@ -129,8 +131,6 @@ signals:
void unreadMessagesCountChanged();
private:
QString getUsername () const;
void setUsername (const QString &username);
RegistrationState getRegistrationState () const;