Commit 1651fc1f authored by stopcovid@lunabee.com's avatar stopcovid@lunabee.com
Browse files

Update to 3.2.1

- More infos for Clea
- Universal scan
- Add missing recovery tag on DCC
- Feedback on certificate scan success
parent 93dd9260
# TousAntiCovid Android
**Note** : La publication de l'intégralité du code source de l’application mobile sous Android fait apparaitre des écrans et des textes.
Ces écrans et ces textes vont évoluer au cours des jours qui viennent, en amont de tout déploiement éventuel, du fait :
Ce projet gitlab.inria.fr est un des composants de la solution plus globale [TousAntiCovid](https://gitlab.inria.fr/stopcovid19/accueil/-/blob/master/README.md).
- de la prise en compte des éléments recommandés dans les délibérations de la CNIL,
- des retours des tests,
- de la prise en compte de l'ensemble des exigences en matière d'accessibilité,
- de la précision des éléments légaux, de tout autre élément susceptible de conduire à des modifications.
# StopCovid Android
Ce projet gitlab.inria.fr est un des composants de la solution plus globale [StopCovid](https://gitlab.inria.fr/stopcovid19/accueil/-/blob/master/README.md).
Ce composant est le code de l'application mobile sous Android.
......@@ -29,4 +29,6 @@ enum class AppEventName {
e15,
e16,
e17,
e18,
e19,
}
\ No newline at end of file
......@@ -10,7 +10,7 @@ fun TextView.setTextOrHide(
if (value.isNullOrEmpty()) {
visibility = View.GONE
} else {
text = value
text = value.safeEmojiSpanify()
ifVisibleBlock?.let { apply(it) }
visibility = View.VISIBLE
}
......
......@@ -3,6 +3,7 @@ package com.lunabeestudio.stopcovid.coreui.fastitem
import android.content.res.ColorStateList
import android.graphics.drawable.GradientDrawable
import android.util.LayoutDirection
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
......@@ -43,6 +44,7 @@ class CardWithActionsItem(private val cardTheme: CardTheme) : AbstractBindingIte
var mainBody: String? = null
var mainMaxLines: Int? = null
var mainLayoutDirection: Int = LayoutDirection.INHERIT
var mainGravity: Int = Gravity.NO_GRAVITY
@DrawableRes
var mainImage: Int? = null
......@@ -76,6 +78,9 @@ class CardWithActionsItem(private val cardTheme: CardTheme) : AbstractBindingIte
this@CardWithActionsItem.mainMaxLines?.let { maxLines = it }
}
binding.mainImageView.setImageResourceOrHide(mainImage)
binding.mainHeaderTextView.gravity = mainGravity
binding.mainTitleTextView.gravity = mainGravity
binding.mainBodyTextView.gravity = mainGravity
if (mainLayoutVisible) {
binding.mainLayout.visibility = View.VISIBLE
......
<!--
~ This Source Code Form is subject to the terms of the Mozilla Public
~ License, v. 2.0. If a copy of the MPL was not distributed with this
~ file, You can obtain one at https://mozilla.org/MPL/2.0/.
~
~ Authors
~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ Created by Lunabee Studio / Date - 2021/18/6 - for the TOUS-ANTI-COVID project
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="92dp"
android:height="88dp"
android:viewportWidth="23"
android:viewportHeight="22">
<path
android:fillColor="#5770BE"
android:fillType="nonZero"
android:pathData="M21.3017,7.3398C21.9735,7.3398 22.3095,7 22.3095,6.3203L22.3095,3.6133C22.3095,2.4492 22.0107,1.5703 21.413,0.9766C20.8153,0.3828 19.9228,0.0859 18.7353,0.0859L16.04,0.0859C15.3603,0.0859 15.0204,0.4219 15.0204,1.0938C15.0204,1.7656 15.3603,2.1016 16.04,2.1016L18.6532,2.1016C19.1767,2.1016 19.581,2.2402 19.8661,2.5176C20.1513,2.7949 20.2939,3.2109 20.2939,3.7656L20.2939,6.3203C20.2939,7 20.6298,7.3398 21.3017,7.3398ZM1.4618,7.3398C2.1337,7.3398 2.4696,7 2.4696,6.3203L2.4696,3.7656C2.4696,3.2109 2.6122,2.7949 2.8974,2.5176C3.1825,2.2402 3.5868,2.1016 4.1103,2.1016L6.7235,2.1016C7.411,2.1016 7.7548,1.7656 7.7548,1.0938C7.7548,0.4219 7.411,0.0859 6.7235,0.0859L4.0282,0.0859C2.8485,0.0859 1.9579,0.3828 1.3564,0.9766C0.7548,1.5703 0.454,2.4492 0.454,3.6133L0.454,6.3203C0.454,7 0.79,7.3398 1.4618,7.3398ZM10.415,10.5273C10.5478,10.5273 10.661,10.4824 10.7548,10.3926C10.8485,10.3027 10.8954,10.1875 10.8954,10.0469L10.8954,6.1914C10.8954,6.0508 10.8485,5.9355 10.7548,5.8457C10.661,5.7559 10.5478,5.7109 10.415,5.7109L6.5595,5.7109C6.4189,5.7109 6.3017,5.7559 6.2079,5.8457C6.1142,5.9355 6.0673,6.0508 6.0673,6.1914L6.0673,10.0469C6.0673,10.1875 6.1142,10.3027 6.2079,10.3926C6.3017,10.4824 6.4189,10.5273 6.5595,10.5273L10.415,10.5273ZM16.1923,10.5273C16.3329,10.5273 16.4501,10.4824 16.5439,10.3926C16.6376,10.3027 16.6845,10.1875 16.6845,10.0469L16.6845,6.1914C16.6845,6.0508 16.6376,5.9355 16.5439,5.8457C16.4501,5.7559 16.3329,5.7109 16.1923,5.7109L12.3368,5.7109C12.1962,5.7109 12.079,5.7559 11.9853,5.8457C11.8915,5.9355 11.8446,6.0508 11.8446,6.1914L11.8446,10.0469C11.8446,10.1875 11.8915,10.3027 11.9853,10.3926C12.079,10.4824 12.1962,10.5273 12.3368,10.5273L16.1923,10.5273ZM9.9228,9.5664L7.0282,9.5664L7.0282,6.6602L9.9228,6.6602L9.9228,9.5664ZM15.7118,9.5664L12.8056,9.5664L12.8056,6.6602L15.7118,6.6602L15.7118,9.5664ZM9.0907,8.7227L9.0907,7.5039L7.8837,7.5039L7.8837,8.7227L9.0907,8.7227ZM14.8681,8.7227L14.8681,7.5039L13.661,7.5039L13.661,8.7227L14.8681,8.7227ZM10.415,16.3164C10.5478,16.3164 10.661,16.2695 10.7548,16.1758C10.8485,16.082 10.8954,15.9648 10.8954,15.8242L10.8954,11.9805C10.8954,11.8398 10.8485,11.7227 10.7548,11.6289C10.661,11.5352 10.5478,11.4883 10.415,11.4883L6.5595,11.4883C6.4189,11.4883 6.3017,11.5352 6.2079,11.6289C6.1142,11.7227 6.0673,11.8398 6.0673,11.9805L6.0673,15.8242C6.0673,15.9648 6.1142,16.082 6.2079,16.1758C6.3017,16.2695 6.4189,16.3164 6.5595,16.3164L10.415,16.3164ZM13.1923,12.8359L13.1923,11.6289L11.9853,11.6289L11.9853,12.8359L13.1923,12.8359ZM16.5439,12.8359L16.5439,11.6289L15.3251,11.6289L15.3251,12.8359L16.5439,12.8359ZM9.9228,15.3555L7.0282,15.3555L7.0282,12.4492L9.9228,12.4492L9.9228,15.3555ZM9.0907,14.5117L9.0907,13.3047L7.8837,13.3047L7.8837,14.5117L9.0907,14.5117ZM14.8681,14.5117L14.8681,13.3047L13.661,13.3047L13.661,14.5117L14.8681,14.5117ZM6.7235,21.9297C7.411,21.9297 7.7548,21.5977 7.7548,20.9336C7.7548,20.2617 7.411,19.9258 6.7235,19.9258L4.1103,19.9258C3.5868,19.9258 3.1825,19.7871 2.8974,19.5098C2.6122,19.2324 2.4696,18.8125 2.4696,18.25L2.4696,15.707C2.4696,15.0273 2.1337,14.6875 1.4618,14.6875C0.79,14.6875 0.454,15.0273 0.454,15.707L0.454,18.4023C0.454,19.5742 0.7548,20.4551 1.3564,21.0449C1.9579,21.6348 2.8485,21.9297 4.0282,21.9297L6.7235,21.9297ZM18.7353,21.9297C19.9228,21.9297 20.8153,21.6328 21.413,21.0391C22.0107,20.4453 22.3095,19.5664 22.3095,18.4023L22.3095,15.707C22.3095,15.0273 21.9735,14.6875 21.3017,14.6875C20.6298,14.6875 20.2939,15.0273 20.2939,15.707L20.2939,18.25C20.2939,18.8125 20.1513,19.2324 19.8661,19.5098C19.581,19.7871 19.1767,19.9258 18.6532,19.9258L16.04,19.9258C15.3603,19.9258 15.0204,20.2617 15.0204,20.9336C15.0204,21.5977 15.3603,21.9297 16.04,21.9297L18.7353,21.9297ZM13.1923,16.1641L13.1923,14.9688L11.9853,14.9688L11.9853,16.1641L13.1923,16.1641ZM16.5439,16.1641L16.5439,14.9688L15.3251,14.9688L15.3251,16.1641L16.5439,16.1641Z"
android:strokeWidth="1"
android:strokeColor="#00000000" />
</vector>
<?xml version="1.0" encoding="utf-8"?><!--
~ This Source Code Form is subject to the terms of the Mozilla Public
~ License, v. 2.0. If a copy of the MPL was not distributed with this
~ file, You can obtain one at https://mozilla.org/MPL/2.0/.
~
~ Authors
~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ Created by Lunabee Studio / Date - 2021/27/5 - for the TOUS-ANTI-COVID project
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="90"
android:centerColor="#1A000000"
android:endColor="@android:color/transparent"
android:startColor="#40000000" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<!--
~ This Source Code Form is subject to the terms of the Mozilla Public
~ License, v. 2.0. If a copy of the MPL was not distributed with this
~ file, You can obtain one at https://mozilla.org/MPL/2.0/.
~
~ Authors
~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ Created by Lunabee Studio / Date - 2021/17/6 - for the TOUS-ANTI-COVID project
-->
<View
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="gone" />
\ No newline at end of file
......@@ -20,6 +20,17 @@
android:layout_height="match_parent"
android:clipToPadding="false" />
<com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
android:id="@+id/floatingActionButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/spacing_large"
android:visibility="gone"
app:icon="@drawable/ic_qrscan"
tools:text="Scanner un QR code"
tools:visibility="visible" />
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/emptyLayout"
android:layout_width="match_parent"
......@@ -32,8 +43,8 @@
android:id="@+id/emptyImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:importantForAccessibility="no"
android:layout_marginVertical="@dimen/spacing_medium"
android:importantForAccessibility="no"
android:scaleType="centerInside"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="@id/emptyTitleTextView"
......
......@@ -24,6 +24,18 @@
app:behavior_hideable="false"
app:layout_behavior="@string/bottom_sheet_behavior">
<Space
android:id="@+id/bottomSheetTopSpace"
android:layout_width="match_parent"
android:layout_height="@dimen/bottom_sheet_top_space_shadow_height"
app:layout_constraintTop_toTopOf="@id/bottomSheetCardView" />
<include
layout="@layout/top_shadow"
android:layout_width="match_parent"
android:layout_height="@dimen/bottom_sheet_top_shadow_height"
app:layout_constraintBottom_toBottomOf="@id/bottomSheetTopSpace" />
<com.google.android.material.card.MaterialCardView
android:id="@+id/bottomSheetCardView"
style="@style/Widget.MaterialComponents.CardView"
......
<?xml version="1.0" encoding="utf-8"?><!--
~ This Source Code Form is subject to the terms of the Mozilla Public
~ License, v. 2.0. If a copy of the MPL was not distributed with this
~ file, You can obtain one at https://mozilla.org/MPL/2.0/.
~
~ Authors
~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~ Created by Lunabee Studio / Date - 2021/28/5 - for the TOUS-ANTI-COVID project
-->
<View
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/bottom_sheet_top_shadow_height"
android:background="@drawable/shape_top_shadow" />
\ No newline at end of file
......@@ -12,7 +12,6 @@
<style name="Theme.StopCovid" parent="Theme.Base.StopCovid">
<item name="colorPrimary">@color/color_malibu</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:windowLightStatusBar" tools:targetApi="m">false</item>
<item name="dividerColor">@color/color_mine_shaft</item>
</style>
......
......@@ -11,7 +11,6 @@
<style name="Theme.StopCovid" parent="Theme.Base.StopCovid">
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:windowLightStatusBar">true</item>
<item name="android:windowLightNavigationBar" tools:targetApi="o_mr1">false</item>
</style>
</resources>
......@@ -75,5 +75,6 @@
<dimen name="widget_second_figure_min_font_size">5sp</dimen>
<dimen name="widget_figures_graph_size">100dp</dimen>
<dimen name="bottom_sheet_top_space_shadow_height">8dp</dimen>
<dimen name="bottom_sheet_top_shadow_height">16dp</dimen>
</resources>
......@@ -45,8 +45,8 @@ android {
applicationId "fr.gouv.android.stopcovid"
minSdkVersion 21
targetSdkVersion 30
versionCode 276
versionName "3.2.0"
versionCode 282
versionName "3.2.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
......
......@@ -22,6 +22,16 @@
}
]
},
{
"section": "✈️ Travel",
"description" : "Re-open EU provides information on the various measures in place, including on quarantine and testing requirements for travellers, the EU Digital COVID certificate to help you exercise your right to free movement, and mobile coronavirus contact tracing and warning apps. The information is updated frequently and available in 24 languages. This should help you plan your travel in Europe, while staying safe and healthy.",
"links": [
{
"label": "Go to Re-open EU",
"url": "https://reopen.europa.eu/en/from-to/FRA/"
}
]
},
{
"section": "Where to get tested",
"description" : "To find out where to get tested, go to Santé.fr.",
......
......@@ -22,6 +22,16 @@
}
]
},
{
"section": "✈️ Voyager",
"description" : "\"Re-open EU\" (rouvrir l'Europe) fournit des informations sur les différentes mesures en place, notamment sur les exigences en matière de quarantaine et de tests pour les voyageurs, le certificat COVID numérique de l’UE pour vous aider à exercer votre droit à la libre circulation, et les applications mobiles de traçage et d’avertissement des contacts coronavirus. L'information est mise à jour fréquemment. Cela devrait vous aider à planifier votre voyage en Europe, tout en restant en sécurité et en santé.",
"links": [
{
"label": "Aller sur Re-open EU",
"url": "https://reopen.europa.eu/fr/from-to/FRA/"
}
]
},
{
"section": "Où se faire dépister",
"description" : "Pour trouver où se faire dépister, rendez vous sur Santé.fr.",
......
......@@ -532,7 +532,7 @@
"home.healthSection.isSick.title": "Take care",
"home.healthSection.isSick.subtitle": "Find out more",
"myHealthController.sick.title": "Health recommendations",
"home.attestationSection.title": "Form & Wallet",
"home.attestationSection.title": "My wallet",
"home.attestationSection.cell.title":"My forms",
"home.attestationSection.cell.subtitle.noAttestations": "Tap here",
"home.attestationSection.cell.subtitle.oneAttestation": "1 form",
......@@ -566,13 +566,13 @@
"common.error.secretKey": "Database encryption failure. Please try again or restart your phone.",
"home.venuesSection.title": "Cahier de rappel",
"home.venuesSection.recordCell.title": "Scan a venue QR code",
"home.venuesSection.recordCell.subtitle": "Be alerted in case of exposure in a venue (currently being deployed)",
"home.venuesSection.recordCell.subtitle": "Be alerted in case of exposure in a venue",
"home.venuesSection.privateCell.title": "Are you organising a private event?",
"home.venuesSection.privateCell.subtitle": "Protect your guests by creating your own code",
"home.moreSection.venuesHistory": "Venues history",
"venuesRecording.onboardingController.title": "TousAntiCovid Signal",
"venuesRecording.onboardingController.mainMessage.title": "Le cahier de rappel numérique.\nEasier and anonymous.",
"venuesRecording.onboardingController.mainMessage.message": "TousAntiCovid Signal is the simple and anonymous alternative to the \"cahier de rappel\".\n\n👉 Why: to be alerted and alert others if you are exposed to COVID-19 in a place you have been to.\n\n🔒 It's anonymous: no personal data is collected either on the venue or on the people.\n\n🙂 It's simple: scan the QR Code in the places that have set up Signal. If you are positive, do not forget to identify yourself in TousAntiCovid to anonymously inform other users.\n\nExperimentation phase in a limited number of places.",
"venuesRecording.onboardingController.mainMessage.message": "TousAntiCovid Signal is the simple and anonymous alternative to the \"cahier de rappel\".\n\n👉 Why: to be alerted and alert others if you are exposed to COVID-19 in a place you have been to.\n\n🔒 It's anonymous: no personal data is collected either on the venue or on the people.\n\n🙂 It's simple: scan the QR Code in the places that have set up Signal. If you are positive, do not forget to identify yourself in TousAntiCovid to anonymously inform other users.",
"venuesRecording.onboardingController.button.participate": "Scan a QR Code",
"venuesRecording.confirmationController.title": "Location recorded",
"erp.confirmationMessage.default.title": "Thank you!",
......@@ -595,7 +595,7 @@
"onboarding.venuesController.title": "TousAntiCovid Signal",
"onboarding.venuesController.bottomButton": "Continue",
"onboarding.venuesController.mainMessage.title": "Le cahier de rappel numérique.\nEasier and anonymous.",
"onboarding.venuesController.mainMessage.subtitle": "TousAntiCovid Signal is the simple and anonymous alternative to the \"cahier de rappel\".\n\n👉 Why: to be alerted and alert others if you are exposed to COVID-19 in a place you have been to.\n\n🔒 It's anonymous: no personal data is collected either on the venue or on the people.\n\n🙂 It's simple: scan the QR Code in the places that have set up Signal. If you are positive, do not forget to identify yourself in TousAntiCovid to anonymously inform other users.\n\nExperimentation phase in a limited number of places.",
"onboarding.venuesController.mainMessage.subtitle": "TousAntiCovid Signal is the simple and anonymous alternative to the \"cahier de rappel\".\n\n👉 Why: to be alerted and alert others if you are exposed to COVID-19 in a place you have been to.\n\n🔒 It's anonymous: no personal data is collected either on the venue or on the people.\n\n🙂 It's simple: scan the QR Code in the places that have set up Signal. If you are positive, do not forget to identify yourself in TousAntiCovid to anonymously inform other users.",
"home.healthSection.warningContact.cellTitle": "Possible at-risk exposure",
"home.healthSection.warningContact.cellSubtitle": "See our recommendations",
"myHealthController.state.warning.title": "You may have been exposed to at least one user who has tested positive for COVID-19 in the past few days",
......@@ -962,7 +962,7 @@
"walletController.title": "Wallet",
"walletController.explanations.title": "How does it work?",
"walletController.explanations.subtitle": "To digitalize your test and vaccination certificates and always have them at hand, it's simple:\n- for your tests, you will receive a text message or an e-mail from SI-DEP platform with instructions.\n- for your vaccination, you will have a QR Code to scan on your certificate. Since May 27th, you can get your vaccination certificates (including old ones) on https://attestation-vaccin.ameli.fr/\n\nThese certificates will have to be presented during checks for your travels 👉 experimentation in progress.\n\nIf you have a problem, you can call 0 800 08 71 48.",
"walletController.explanations.subtitle": "To digitalize your test and vaccination certificates and always have them at hand, it's simple:\n- for your tests, you will receive a text message or an e-mail from SI-DEP platform with instructions.\n- for your vaccination, you will have a QR Code to scan on your certificate. Since May 27th, you can get your vaccination certificates (including old ones) on https://attestation-vaccin.ameli.fr/\n\nThese certificates will have to be presented during checks for your travels.\n\nIf you have a problem, you can call 0 800 08 71 48.",
"walletController.flashButton.title": "Scan QR Code",
"walletController.flashExplanation": "On your SI-DEP document (test) or vaccination certificate, you have a QR Code that you can scan to add your certificate in this wallet.",
"walletController.recentCertificatesSection.title": "Recent certificates",
......@@ -975,7 +975,7 @@
"walletController.menu.delete.alert.title": "Confirmation",
"walletController.menu.delete.alert.message": "Are you sure you want to delete this certificate?",
"home.attestationSection.sanitaryCertificates.cell.title": "My wallet",
"home.attestationSection.sanitaryCertificates.cell.title": "Open my wallet",
"home.attestationSection.sanitaryCertificates.cell.subtitle": "Your test and vaccination certificates",
"flashWalletCodeController.title": "Scan",
......@@ -1230,13 +1230,14 @@
"universalQrScanExplanationsController.title": "New!",
"universalQrScanExplanationsController.explanation.title": "QR Codes. Made easier.",
"universalQrScanExplanationsController.explanation.subtitle": "Scanning QR Codes in TousAntiCovid is now easier.\nOn the top right corner, you have now a button that helps you scan:\n\n👉 a QR Code to import a test or vaccination certificate\n\n👉 a QR Code for the \"cahier de rappel numérique\" (TousAntiCovid Signal, in venues)\n\n👉 a QR Code if you tested positive to alert people you have been in contact with",
"universalQrScanExplanationsController.explanation.android.subtitle": "Scanning QR Codes in TousAntiCovid is now easier.\nOn the bottom right corner, you have now a button that helps you scan:\n\n👉 a QR Code to import a test or vaccination certificate\n\n👉 a QR Code for the \"cahier de rappel numérique\" (TousAntiCovid Signal, in venues)\n\n👉 a QR Code if you tested positive to alert people you have been in contact with",
"universalQrScanExplanationsController.button.title": "Ok!",
"wallet.proof.europe.test.description": "🇪🇺 Digital Covid Certificate\n👉 Tap here to present it\n\n<FULL_NAME>\nDate of birth <BIRTHDATE>\n<ANALYSIS_RESULT> - <ANALYSIS_CODE>\nTested on <FROM_DATE>",
"wallet.proof.europe.test.positive": "Positive",
"wallet.proof.europe.test.negative": "✅ Negative",
"wallet.proof.europe.vaccine.description": "🇪🇺 Digital Covid Certificate\n👉 Tap here to present it\n\n<FULL_NAME>\nDate of birth <BIRTHDATE>\n<VACCINE_NAME>\nInjection date: <DATE>",
"wallet.proof.europe.recovery.description": "🇪🇺 Digital Covid Certificate\n👉 Tap here to present it\n\n<FULL_NAME>\nDate of birth <BIRTHDATE>\nFrom <FROM_DATE>, to <TO_DATE>",
"wallet.proof.europe.recovery.description": "🇪🇺 Digital Covid Certificate\n👉 Tap here to present it\n\n<FULL_NAME>\nDate of birth <BIRTHDATE>\nValid from <FROM_DATE> to <TO_DATE>",
"wallet.proof.europe.vaccine.doses" : "Vaccination %d of %d",
"walletCertificateErrorController.explanations.invalidSignature.vaccinationEurope.title": "⚠️ Not authentic",
......@@ -1269,6 +1270,6 @@
"appShortcut.qrScan": "Scan TousAntiCovid QR Code",
"home.qrScan.button.title": "Scan a QR Code",
"confirmWalletQrCodeController.explanation.title.fromUniversalQrScan": "You've just scanned a TousAntiCovid QR Code to add a certificate in your wallet."
"confirmWalletQrCodeController.explanation.title.fromUniversalQrScan": "You've just scanned a TousAntiCovid QR Code to add a certificate in your wallet.",
"walletController.addCertificate.addSucceeded": "Certificat successfully added"
}
......@@ -486,7 +486,7 @@
"home.healthSection.isSick.title":"Prenez soin de vous",
"home.healthSection.isSick.subtitle":"En savoir plus",
"myHealthController.sick.title":"Recommandations sanitaires",
"home.attestationSection.title":"Attestations & Carnet",
"home.attestationSection.title":"Mon carnet",
"home.attestationSection.cell.title":"Mes attestations",
"home.attestationSection.cell.subtitle.noAttestations":"Appuyez ici",
"home.attestationSection.cell.subtitle.oneAttestation":"1 attestation",
......@@ -525,13 +525,13 @@
"home.venuesSection.title": "Cahier de rappel",
"home.venuesSection.recordCell.title": "Scanner un QR Code lieu",
"home.venuesSection.recordCell.subtitle": "Soyez alerté en cas d'exposition dans un lieu (en cours d'expérimentation)",
"home.venuesSection.recordCell.subtitle": "Soyez alerté en cas d'exposition dans un lieu",
"home.venuesSection.privateCell.title": "Vous organisez un événement privé ?",
"home.venuesSection.privateCell.subtitle": "Créez votre propre code, permettant de protéger vos invités",
"home.moreSection.venuesHistory": "Journal du cahier de rappel",
"venuesRecording.onboardingController.title": "TousAntiCovid Signal",
"venuesRecording.onboardingController.mainMessage.title": "Le cahier de rappel numérique.\nPlus simple et anonyme.",
"venuesRecording.onboardingController.mainMessage.message": "TousAntiCovid Signal est l'alternative simple et anonyme aux cahiers de rappel.\n\n👉 Pourquoi : pour être alerté et alerter les autres en cas d’exposition à la COVID-19 dans un lieu que vous avez fréquenté.\n\n🔒 C'est anonyme : aucune donnée nominative n’est collectée ni sur le lieu ni sur les personnes.\n\n🙂 C'est simple : scannez le QR Code dans les lieux qui ont mis en place Signal. Si vous êtes positif, n’oubliez pas de vous déclarer dans TousAntiCovid pour informer anonymement les autres utilisateurs.\n\nEn phase d'expérimentation dans un nombre limité de lieux.",
"venuesRecording.onboardingController.mainMessage.message": "TousAntiCovid Signal est l'alternative simple et anonyme aux cahiers de rappel.\n\n👉 Pourquoi : pour être alerté et alerter les autres en cas d’exposition à la COVID-19 dans un lieu que vous avez fréquenté.\n\n🔒 C'est anonyme : aucune donnée nominative n’est collectée ni sur le lieu ni sur les personnes.\n\n🙂 C'est simple : scannez le QR Code dans les lieux qui ont mis en place Signal. Si vous êtes positif, n’oubliez pas de vous déclarer dans TousAntiCovid pour informer anonymement les autres utilisateurs.",
"venuesRecording.onboardingController.button.participate": "Je scanne",
"venuesRecording.confirmationController.title": "Ajouté",
"erp.confirmationMessage.default.title": "Merci !",
......@@ -557,7 +557,7 @@
"onboarding.venuesController.title":"TousAntiCovid Signal",
"onboarding.venuesController.bottomButton":"Continuer",
"onboarding.venuesController.mainMessage.title":"Le cahier de rappel numérique.\nPlus simple et anonyme.",
"onboarding.venuesController.mainMessage.subtitle":"TousAntiCovid Signal est l'alternative simple et anonyme aux cahiers de rappel.\n\n👉 Pourquoi : pour être alerté et alerter les autres en cas d’exposition à la COVID-19 dans un lieu que vous avez fréquenté.\n\n🔒 C'est anonyme : aucune donnée nominative n’est collectée ni sur le lieu ni sur les personnes.\n\n🙂 C'est simple : scannez le QR Code dans les lieux qui ont mis en place Signal. Si vous êtes positif, n’oubliez pas de vous déclarer dans TousAntiCovid pour informer anonymement les autres utilisateurs.\n\nEn phase d'expérimentation dans un nombre limité de lieux.",
"onboarding.venuesController.mainMessage.subtitle":"TousAntiCovid Signal est l'alternative simple et anonyme aux cahiers de rappel.\n\n👉 Pourquoi : pour être alerté et alerter les autres en cas d’exposition à la COVID-19 dans un lieu que vous avez fréquenté.\n\n🔒 C'est anonyme : aucune donnée nominative n’est collectée ni sur le lieu ni sur les personnes.\n\n🙂 C'est simple : scannez le QR Code dans les lieux qui ont mis en place Signal. Si vous êtes positif, n’oubliez pas de vous déclarer dans TousAntiCovid pour informer anonymement les autres utilisateurs.",
"home.healthSection.warningContact.cellTitle": "Info : possible exposition à risque",
"home.healthSection.warningContact.cellSubtitle": "Consultez nos recommandations",
......@@ -967,7 +967,7 @@
"walletController.menu.delete.alert.title": "Confirmation",
"walletController.menu.delete.alert.message": "Êtes-vous sûr de vouloir supprimer ce certificat ?",
"home.attestationSection.sanitaryCertificates.cell.title": "Mon carnet",
"home.attestationSection.sanitaryCertificates.cell.title": "Ouvrir mon carnet",
"home.attestationSection.sanitaryCertificates.cell.subtitle": "Vos certificats de test et de vaccination",
"flashWalletCodeController.title": "Scannez",
......@@ -1141,7 +1141,7 @@
"enum.HCertType.test": "Test",
"enum.HCertType.vaccine": "Vaccin",
"enum.HCertType.recovery": "Recovery",
"enum.HCertType.recovery": "Rétablissement",
"enum.HCertValidity.valid": "Valide",
"enum.HCertValidity.invalid": "Non valide",
......@@ -1231,15 +1231,16 @@
"universalQrScanController.error.wrongUrl": "Le code scanné n'est pas un lien valide",
"universalQrScanExplanationsController.title": "Nouveau !",
"universalQrScanExplanationsController.explanation.title": "Les QR Codes. Plus facile.",
"universalQrScanExplanationsController.explanation.subtitle": "Scanner un QR Code dans TousAntiCovid est désormais plus simple.\nTout en haut à droite, vous avez désormais un bouton qui vous permet de scanner :\n\n👉 un QR Code pour importer un certificat de test ou vaccination.\n\n👉 un QR Code du “cahier de rappel numérique” (TousAntiCovid Signal)\n\n👉 un QR code pour vous déclarer positif dans TousAntiCovid et alerter les personnes que vous avez croisées.",
"universalQrScanExplanationsController.explanation.subtitle": "Scanner un QR Code dans TousAntiCovid est désormais plus simple.\nTout en haut à droite, vous avez désormais un bouton qui vous permet de scanner :\n\n👉 un QR Code pour importer un certificat de test ou vaccination.\n\n👉 un QR Code du \"cahier de rappel numérique\" (TousAntiCovid Signal)\n\n👉 un QR code pour vous déclarer positif dans TousAntiCovid et alerter les personnes que vous avez croisées.",
"universalQrScanExplanationsController.explanation.android.subtitle": "Scanner un QR Code dans TousAntiCovid est désormais plus simple.\nEn bas à droite, vous avez désormais un bouton qui vous permet de scanner :\n\n👉 un QR Code pour importer un certificat de test ou vaccination.\n\n👉 un QR Code du \"cahier de rappel numérique\" (TousAntiCovid Signal)\n\n👉 un QR code pour vous déclarer positif dans TousAntiCovid et alerter les personnes que vous avez croisées.",
"universalQrScanExplanationsController.button.title": "Ok !",
"wallet.proof.europe.test.description": "🇪🇺 Certificat COVID numérique\n👉 Appuyez ici pour le présenter\n\n<FULL_NAME>\nné(e) le <BIRTHDATE>\n<ANALYSIS_RESULT> - <ANALYSIS_CODE>\nDate du test : <FROM_DATE>",
"wallet.proof.europe.test.positive": "Positif",
"wallet.proof.europe.test.negative": "✅ Négatif",
"wallet.proof.europe.vaccine.description": "🇪🇺 Certificat COVID numérique\n👉 Appuyez ici pour le présenter\n\n<FULL_NAME>\nné(e) le <BIRTHDATE>\n<VACCINE_NAME>\nDate de l'injection : <DATE>",
"wallet.proof.europe.recovery.description": "🇪🇺 Certificat COVID numérique\n👉 Appuyez ici pour le présenter\n\n<FULL_NAME>\nné(e) le <BIRTHDATE>\nDepuis le <FROM_DATE>, jusqu'au <TO_DATE>",
"wallet.proof.europe.vaccine.doses" : "Vaccin %d sur %d",
"wallet.proof.europe.recovery.description": "🇪🇺 Certificat COVID numérique\n👉 Appuyez ici pour le présenter\n\n<FULL_NAME>\nné(e) le <BIRTHDATE>\nValide du <FROM_DATE> au <TO_DATE>",
"walletCertificateErrorController.explanations.invalidSignature.vaccinationEurope.title": "⚠️ Non authentique",
"walletCertificateErrorController.explanations.invalidSignature.vaccinationEurope.subtitle": "Ce certificat n'est pas authentique.\n\nAssurez-vous que vous tentez de scanner le QR Code sur le bon document 👇",
......@@ -1271,6 +1272,6 @@
"appShortcut.qrScan": "Scanner QR Code TousAntiCovid",
"home.qrScan.button.title": "Scanner un QR Code",
"confirmWalletQrCodeController.explanation.title.fromUniversalQrScan": "Vous venez de scanner un QR code TousAntiCovid pour ajouter un certificat dans votre carnet."
"confirmWalletQrCodeController.explanation.title.fromUniversalQrScan": "Vous venez de scanner un QR code TousAntiCovid pour ajouter un certificat dans votre carnet.",
"walletController.addCertificate.addSucceeded": "Certificat ajouté avec succès"
}
......@@ -37,6 +37,7 @@ object Constants {
"currentVaccinationReferenceLongitude"
const val ALERT_RISK_LEVEL_CHANGED: String = "alertRiskLevelChanged"
const val HIDE_RISK_STATUS: String = "hideRiskStatus"
const val HAS_USED_UNIVERSAL_QR_SCAN: String = "hasUsedUniversalQrScan"
}
object Notification {
......@@ -70,8 +71,8 @@ object Constants {
const val FIGURES_FRAGMENT_URI: String = "tousanticovid://allFigures/"
const val CERTIFICATE_SHORTCUT_URI: String = "tousanticovid://attestations/"
const val NEW_CERTIFICATE_SHORTCUT_URI: String = "tousanticovid://attestations//new_attestation"
const val VENUE_QRCODE_SHORTCUT_URI: String = "tousanticovid://venueQRCode/"
const val PROXIMITY_FRAGMENT_URI: String = "tousanticovid://proximity/"
const val UNIVERSAL_QRCODE_SHORTCUT_URI: String = "tousanticovid://universalQRCode/"
}
object Android {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment