From d60d714f82e6fd0d07c824a4bfc582c4bc3d242b Mon Sep 17 00:00:00 2001 From: Philoul Date: Fri, 21 Aug 2020 15:30:20 +0200 Subject: [PATCH 01/24] Compare Targets improvements in ProfileViewerDialog Same units between profile 1 and profile 2 Presentation of both targets by hours (same than ICs, ISFs or basals) --- .../nightscout/androidaps/data/Profile.java | 8 ++++ .../androidaps/dialogs/ProfileViewerDialog.kt | 45 ++++++++++++++++--- 2 files changed, 47 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/data/Profile.java b/core/src/main/java/info/nightscout/androidaps/data/Profile.java index 9fe8c7846e..f71e53e9b6 100644 --- a/core/src/main/java/info/nightscout/androidaps/data/Profile.java +++ b/core/src/main/java/info/nightscout/androidaps/data/Profile.java @@ -544,6 +544,10 @@ public class Profile { return getValueToTime(targetLow_v, timeAsSeconds); } + public double getTargetLowMgdlTimeFromMidnight(int timeAsSeconds) { + return toMgdl(getTargetLowTimeFromMidnight(timeAsSeconds), units); + } + public double getTargetHighMgdl() { return toMgdl(getTargetHighTimeFromMidnight(secondsFromMidnight()), units); } @@ -558,6 +562,10 @@ public class Profile { return getValueToTime(targetHigh_v, timeAsSeconds); } + public double getTargetHighMgdlTimeFromMidnight(int timeAsSeconds) { + return toMgdl(getTargetHighTimeFromMidnight(timeAsSeconds), units); + } + public class TargetValue { TargetValue(int timeAsSeconds, double low, double high) { this.timeAsSeconds = timeAsSeconds; diff --git a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt index b3286cb590..007a652771 100644 --- a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt +++ b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt @@ -15,6 +15,7 @@ import info.nightscout.androidaps.data.Profile import info.nightscout.androidaps.interfaces.ActivePluginProvider import info.nightscout.androidaps.interfaces.DatabaseHelperInterface import info.nightscout.androidaps.utils.DateUtil +import info.nightscout.androidaps.utils.DecimalFormatter import info.nightscout.androidaps.utils.HtmlHelper import info.nightscout.androidaps.utils.resources.ResourceHelper import kotlinx.android.synthetic.main.close.* @@ -85,7 +86,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { profileview_datelayout.visibility = View.VISIBLE } - Mode.CUSTOM_PROFILE -> { + Mode.CUSTOM_PROFILE -> { profile = Profile(injector, JSONObject(customProfileJson), customProfileUnits) profile2 = null profileName = customProfileName @@ -102,7 +103,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { profileview_datelayout.visibility = View.GONE } - Mode.DB_PROFILE -> { + Mode.DB_PROFILE -> { val profileList = databaseHelper.getProfileSwitchData(time, true) profile = if (profileList.isNotEmpty()) profileList[0].profileObject else null profile2 = null @@ -124,7 +125,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { profileview_ic.text = ics(profile1, profile2) profileview_isf.text = isfs(profile1, profile2) profileview_basal.text = basals(profile1, profile2) - profileview_target.text = HtmlHelper.fromHtml(formatColors("", profile1.targetList.replace("\n","
") + "
", profile2.targetList.replace("\n","
"), "")) + profileview_target.text = targets(profile1, profile2) basal_graph.show(profile1, profile2) } @@ -229,12 +230,13 @@ class ProfileViewerDialog : DaggerDialogFragment() { private fun isfs(profile1: Profile, profile2: Profile): Spanned { var prev1 = 0.0 var prev2 = 0.0 + val units = profile1.units val s = StringBuilder() for (hour in 0..23) { - val val1 = Profile.fromMgdlToUnits(profile1.getIsfMgdlTimeFromMidnight(hour * 60 * 60), profile1.units) - val val2 = Profile.fromMgdlToUnits(profile2.getIsfMgdlTimeFromMidnight(hour * 60 * 60), profile1.units) + val val1 = Profile.fromMgdlToUnits(profile1.getIsfMgdlTimeFromMidnight(hour * 60 * 60), units) + val val2 = Profile.fromMgdlToUnits(profile2.getIsfMgdlTimeFromMidnight(hour * 60 * 60), units) if (val1 != prev1 || val2 != prev2) { - s.append(formatColors(Profile.format_HH_MM(hour * 60 * 60), val1, val2, DecimalFormat("0.0"), profile1.units + " " + resourceHelper.gs(R.string.profile_per_unit))) + s.append(formatColors(Profile.format_HH_MM(hour * 60 * 60), val1, val2, DecimalFormat("0.0"), units + " " + resourceHelper.gs(R.string.profile_per_unit))) s.append("
") } prev1 = val1 @@ -242,4 +244,35 @@ class ProfileViewerDialog : DaggerDialogFragment() { } return HtmlHelper.fromHtml(s.toString()) } + + private fun targets(profile1: Profile, profile2: Profile):Spanned { + var prev1l = 0.0 + var prev1h = 0.0 + var prev2l = 0.0 + var prev2h = 0.0 + val units = profile1.units + val s = StringBuilder() + for (hour in 0..23) { + val val1l = profile1.getTargetLowMgdlTimeFromMidnight(hour * 60 * 60) + val val1h = profile1.getTargetHighMgdlTimeFromMidnight(hour * 60 * 60) + val val2l = profile2.getTargetLowMgdlTimeFromMidnight(hour * 60 * 60) + val val2h = profile2.getTargetHighMgdlTimeFromMidnight(hour * 60 * 60) + val txt1 = Profile.format_HH_MM(hour * 60 * 60) + " " + valueToUnitsToString(val1l, units) + " - " + valueToUnitsToString(val1h, units) + " " + units + val txt2 = Profile.format_HH_MM(hour * 60 * 60) + " " + valueToUnitsToString(val2l, units) + " - " + valueToUnitsToString(val2h, units) + " " + units + if (val1l != prev1l || val1h != prev1h || val2l != prev2l || val2h != prev2h ) { + s.append(formatColors(txt1, txt2)) + s.append("
") + } + prev1l = val1l + prev1h = val1h + prev2l = val2l + prev2h = val2h + } + return HtmlHelper.fromHtml(s.toString()) + } + + private fun valueToUnitsToString(value: Double, units: String): String? { + return if (units == Constants.MGDL) DecimalFormatter.to0Decimal(value) else DecimalFormatter.to1Decimal(value * Constants.MGDL_TO_MMOLL) + } + } From 792ab88839a60ec79a29c1fc1fd47dc7183200d9 Mon Sep 17 00:00:00 2001 From: Philoul Date: Fri, 21 Aug 2020 15:45:45 +0200 Subject: [PATCH 02/24] Unit selected for compare profile is AAPS units and not profile1.units Modification limited to PROFILE_COMPARE mode RUNNING_PROFILE and CUSTOM_PROFILE modes still show profiles in profile.units --- .../nightscout/androidaps/dialogs/ProfileViewerDialog.kt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt index 007a652771..349e3eaef8 100644 --- a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt +++ b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt @@ -14,6 +14,7 @@ import info.nightscout.androidaps.core.R import info.nightscout.androidaps.data.Profile import info.nightscout.androidaps.interfaces.ActivePluginProvider import info.nightscout.androidaps.interfaces.DatabaseHelperInterface +import info.nightscout.androidaps.interfaces.ProfileFunction import info.nightscout.androidaps.utils.DateUtil import info.nightscout.androidaps.utils.DecimalFormatter import info.nightscout.androidaps.utils.HtmlHelper @@ -29,6 +30,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { @Inject lateinit var resourceHelper: ResourceHelper @Inject lateinit var activePlugin: ActivePluginProvider @Inject lateinit var dateUtil: DateUtil + @Inject lateinit var profileFunction: ProfileFunction @Inject lateinit var databaseHelper: DatabaseHelperInterface private var time: Long = 0 @@ -117,7 +119,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { if (mode == Mode.PROFILE_COMPARE) profile?.let { profile1 -> profile2?.let { profile2 -> - profileview_units.text = profile1.units + profileview_units.text = profileFunction.getUnits() profileview_dia.text = HtmlHelper.fromHtml(formatColors("", profile1.dia, profile1.dia, DecimalFormat("0.00"), resourceHelper.gs(R.string.shorthour))) val profileNames =profileName!!.split("\n").toTypedArray() profileview_activeprofile.text = HtmlHelper.fromHtml(formatColors(profileNames[0], profileNames[1])) @@ -230,7 +232,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { private fun isfs(profile1: Profile, profile2: Profile): Spanned { var prev1 = 0.0 var prev2 = 0.0 - val units = profile1.units + val units = profileFunction.getUnits() val s = StringBuilder() for (hour in 0..23) { val val1 = Profile.fromMgdlToUnits(profile1.getIsfMgdlTimeFromMidnight(hour * 60 * 60), units) @@ -250,7 +252,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { var prev1h = 0.0 var prev2l = 0.0 var prev2h = 0.0 - val units = profile1.units + val units = profileFunction.getUnits() val s = StringBuilder() for (hour in 0..23) { val val1l = profile1.getTargetLowMgdlTimeFromMidnight(hour * 60 * 60) From 1e3999a9ab7df41a747956329d001e3ea84d27d9 Mon Sep 17 00:00:00 2001 From: Philoul Date: Fri, 21 Aug 2020 17:17:56 +0200 Subject: [PATCH 03/24] Replace valueToUnitsToString by existing Profile.toUnitsString --- .../nightscout/androidaps/dialogs/ProfileViewerDialog.kt | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt index 349e3eaef8..47604abc3b 100644 --- a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt +++ b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt @@ -259,8 +259,8 @@ class ProfileViewerDialog : DaggerDialogFragment() { val val1h = profile1.getTargetHighMgdlTimeFromMidnight(hour * 60 * 60) val val2l = profile2.getTargetLowMgdlTimeFromMidnight(hour * 60 * 60) val val2h = profile2.getTargetHighMgdlTimeFromMidnight(hour * 60 * 60) - val txt1 = Profile.format_HH_MM(hour * 60 * 60) + " " + valueToUnitsToString(val1l, units) + " - " + valueToUnitsToString(val1h, units) + " " + units - val txt2 = Profile.format_HH_MM(hour * 60 * 60) + " " + valueToUnitsToString(val2l, units) + " - " + valueToUnitsToString(val2h, units) + " " + units + val txt1 = Profile.format_HH_MM(hour * 60 * 60) + " " + Profile.toUnitsString(val1l, val1l * Constants.MGDL_TO_MMOLL, units) + " - " + Profile.toUnitsString(val1h, val1h * Constants.MGDL_TO_MMOLL, units) + " " + units + val txt2 = Profile.format_HH_MM(hour * 60 * 60) + " " + Profile.toUnitsString(val2l, val2l * Constants.MGDL_TO_MMOLL, units) + " - " + Profile.toUnitsString(val2h, val2h * Constants.MGDL_TO_MMOLL, units) + " " + units if (val1l != prev1l || val1h != prev1h || val2l != prev2l || val2h != prev2h ) { s.append(formatColors(txt1, txt2)) s.append("
") @@ -272,9 +272,4 @@ class ProfileViewerDialog : DaggerDialogFragment() { } return HtmlHelper.fromHtml(s.toString()) } - - private fun valueToUnitsToString(value: Double, units: String): String? { - return if (units == Constants.MGDL) DecimalFormatter.to0Decimal(value) else DecimalFormatter.to1Decimal(value * Constants.MGDL_TO_MMOLL) - } - } From 7e9f79b5fb02e320d53b96a9f7050cfd6d662475 Mon Sep 17 00:00:00 2001 From: Philoul Date: Fri, 21 Aug 2020 17:49:13 +0200 Subject: [PATCH 04/24] And remove additional
at the end of ics, isfs and targets --- .../nightscout/androidaps/dialogs/ProfileViewerDialog.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt index 47604abc3b..d95a95550b 100644 --- a/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt +++ b/core/src/main/java/info/nightscout/androidaps/dialogs/ProfileViewerDialog.kt @@ -226,7 +226,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { prev1 = val1 prev2 = val2 } - return HtmlHelper.fromHtml(s.toString()) + return HtmlHelper.fromHtml(s.delete(s.length-4, s.length).toString()) } private fun isfs(profile1: Profile, profile2: Profile): Spanned { @@ -244,7 +244,7 @@ class ProfileViewerDialog : DaggerDialogFragment() { prev1 = val1 prev2 = val2 } - return HtmlHelper.fromHtml(s.toString()) + return HtmlHelper.fromHtml(s.delete(s.length-4, s.length).toString()) } private fun targets(profile1: Profile, profile2: Profile):Spanned { @@ -270,6 +270,6 @@ class ProfileViewerDialog : DaggerDialogFragment() { prev2l = val2l prev2h = val2h } - return HtmlHelper.fromHtml(s.toString()) + return HtmlHelper.fromHtml(s.delete(s.length-4, s.length).toString()) } } From 7c82dbdf93eca81fb1f3291a580557c0302b7857 Mon Sep 17 00:00:00 2001 From: Bart Sopers Date: Sat, 22 Aug 2020 11:06:33 +0200 Subject: [PATCH 05/24] Prepare Omnipod for upstream merge --- .github/workflows/gradle-ci-workflow.yaml | 33 ------------ app/build.gradle | 3 +- .../dependencyInjection/AppComponent.kt | 1 - .../dependencyInjection/FragmentsModule.kt | 2 - .../dependencyInjection/OmnipodModule.kt | 50 ------------------- .../dependencyInjection/PluginsModule.kt | 7 --- .../dependencyInjection/ServicesModule.kt | 2 - 7 files changed, 1 insertion(+), 97 deletions(-) delete mode 100644 .github/workflows/gradle-ci-workflow.yaml delete mode 100644 app/src/main/java/info/nightscout/androidaps/dependencyInjection/OmnipodModule.kt diff --git a/.github/workflows/gradle-ci-workflow.yaml b/.github/workflows/gradle-ci-workflow.yaml deleted file mode 100644 index 6ec6107b54..0000000000 --- a/.github/workflows/gradle-ci-workflow.yaml +++ /dev/null @@ -1,33 +0,0 @@ -name: Gradle CI - -on: - - push - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Set up JDK 1.8 - uses: actions/setup-java@v1 - with: - java-version: 1.8 - - name: Create NDK path - run: sudo mkdir -p /usr/local/lib/android/sdk/ndk && sudo chmod 777 /usr/local/lib/android/sdk/ndk - - name: Cache NDKs - id: cache-ndk - uses: actions/cache@v2 - with: - path: /usr/local/lib/android/sdk/ndk - key: ${{ runner.os }}-ndk-21.0.6113669-21.1.6352462 - - name: Install NDK 21.0.6113669 - run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;21.0.6113669" --sdk_root=${ANDROID_SDK_ROOT} - - name: Install NDK 21.1.6352462 - run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;21.1.6352462" --sdk_root=${ANDROID_SDK_ROOT} - - uses: eskatos/gradle-command-action@v1 - with: - arguments: assembleFullDebug - wrapper-cache-enabled: true - dependencies-cache-enabled: true - configuration-cache-enabled: true diff --git a/app/build.gradle b/app/build.gradle index 4ce21e51c3..c633d46524 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -126,7 +126,7 @@ android { targetSdkVersion 28 multiDexEnabled true versionCode 1500 - version "2.7-omnipod-0.4.1-SNAPSHOT" + version "2.6.7-dev" buildConfigField "String", "VERSION", '"' + version + '"' buildConfigField "String", "BUILDVERSION", '"' + generateGitBuild() + '-' + generateDate() + '"' buildConfigField "String", "REMOTE", '"' + generateGitRemote() + '"' @@ -245,7 +245,6 @@ dependencies { implementation project(':danar') implementation project(':rileylink') implementation project(':medtronic') - implementation project(':omnipod') implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.google.android.gms:play-services-wearable:17.0.0' diff --git a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AppComponent.kt b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AppComponent.kt index 345ab5a615..a748e57eb1 100644 --- a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AppComponent.kt +++ b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/AppComponent.kt @@ -28,7 +28,6 @@ import javax.inject.Singleton WizardModule::class, RileyLinkModule::class, MedtronicModule::class, - OmnipodModule::class, APSModule::class, PreferencesModule::class, OverviewModule::class, diff --git a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/FragmentsModule.kt b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/FragmentsModule.kt index cde5137ac9..07c8cd1495 100644 --- a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/FragmentsModule.kt +++ b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/FragmentsModule.kt @@ -34,7 +34,6 @@ import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.dialog.RileyL import info.nightscout.androidaps.plugins.pump.insight.LocalInsightFragment import info.nightscout.androidaps.plugins.pump.medtronic.MedtronicFragment import info.nightscout.androidaps.plugins.pump.medtronic.dialog.RileyLinkStatusDeviceMedtronic -import info.nightscout.androidaps.plugins.pump.omnipod.OmnipodFragment import info.nightscout.androidaps.plugins.pump.virtual.VirtualPumpFragment import info.nightscout.androidaps.plugins.source.BGSourceFragment import info.nightscout.androidaps.plugins.treatments.TreatmentsFragment @@ -66,7 +65,6 @@ abstract class FragmentsModule { @ContributesAndroidInjector abstract fun contributesLoopFragment(): LoopFragment @ContributesAndroidInjector abstract fun contributesMaintenanceFragment(): MaintenanceFragment @ContributesAndroidInjector abstract fun contributesMedtronicFragment(): MedtronicFragment - @ContributesAndroidInjector abstract fun contributesOmnipodFragment(): OmnipodFragment @ContributesAndroidInjector abstract fun contributesNSProfileFragment(): NSProfileFragment @ContributesAndroidInjector abstract fun contributesNSClientFragment(): NSClientFragment @ContributesAndroidInjector abstract fun contributesSmsCommunicatorFragment(): SmsCommunicatorFragment diff --git a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/OmnipodModule.kt b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/OmnipodModule.kt deleted file mode 100644 index e7a8f31cfa..0000000000 --- a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/OmnipodModule.kt +++ /dev/null @@ -1,50 +0,0 @@ -package info.nightscout.androidaps.dependencyInjection - -import dagger.Module -import dagger.Provides -import dagger.android.ContributesAndroidInjector -import info.nightscout.androidaps.plugins.pump.omnipod.OmnipodPumpPlugin -import info.nightscout.androidaps.plugins.pump.omnipod.comm.OmnipodCommunicationManager -import info.nightscout.androidaps.plugins.pump.omnipod.defs.state.PodStateManager -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.PodHistoryActivity -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.PodManagementActivity -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.wizard.initpod.InitActionFragment -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.wizard.initpod.InitPodTask -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.wizard.pages.InitPodRefreshAction -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.wizard.pages.PodInfoFragment -import info.nightscout.androidaps.plugins.pump.omnipod.dialogs.wizard.removepod.RemoveActionFragment -import info.nightscout.androidaps.plugins.pump.omnipod.driver.comm.AapsOmnipodManager -import info.nightscout.androidaps.plugins.pump.omnipod.driver.comm.AapsPodStateManager -import info.nightscout.androidaps.plugins.pump.omnipod.driver.ui.OmnipodUITask - -@Module -@Suppress("unused") -abstract class OmnipodModule { - - // Activities - @ContributesAndroidInjector - abstract fun contributesPodManagementActivity(): PodManagementActivity - @ContributesAndroidInjector abstract fun contributesPodHistoryActivity(): PodHistoryActivity - - // Fragments - @ContributesAndroidInjector abstract fun initActionFragment(): InitActionFragment - @ContributesAndroidInjector abstract fun removeActionFragment(): RemoveActionFragment - @ContributesAndroidInjector abstract fun podInfoFragment(): PodInfoFragment - - // Service - @ContributesAndroidInjector - abstract fun omnipodCommunicationManagerProvider(): OmnipodCommunicationManager - @ContributesAndroidInjector abstract fun aapsOmnipodManagerProvider(): AapsOmnipodManager - - // Data - @ContributesAndroidInjector abstract fun omnipodUITaskProvider(): OmnipodUITask - @ContributesAndroidInjector abstract fun initPodRefreshAction(): InitPodRefreshAction - @ContributesAndroidInjector abstract fun podStateManager(): PodStateManager - @ContributesAndroidInjector abstract fun initPodTask(): InitPodTask - @ContributesAndroidInjector abstract fun omnipodPumpPlugin(): OmnipodPumpPlugin - - companion object { - @Provides - fun podStateManagerProvider(aapsPodStateManager: AapsPodStateManager) : PodStateManager = aapsPodStateManager - } -} diff --git a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/PluginsModule.kt b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/PluginsModule.kt index efb59be7c3..c7033eec2d 100644 --- a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/PluginsModule.kt +++ b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/PluginsModule.kt @@ -40,7 +40,6 @@ import info.nightscout.androidaps.plugins.pump.combo.ComboPlugin import info.nightscout.androidaps.plugins.pump.insight.LocalInsightPlugin import info.nightscout.androidaps.plugins.pump.mdi.MDIPlugin import info.nightscout.androidaps.plugins.pump.medtronic.MedtronicPumpPlugin -import info.nightscout.androidaps.plugins.pump.omnipod.OmnipodPumpPlugin import info.nightscout.androidaps.plugins.pump.virtual.VirtualPumpPlugin import info.nightscout.androidaps.plugins.sensitivity.SensitivityAAPSPlugin import info.nightscout.androidaps.plugins.sensitivity.SensitivityOref1Plugin @@ -148,12 +147,6 @@ abstract class PluginsModule { @IntKey(150) abstract fun bindMedtronicPumpPlugin(plugin: MedtronicPumpPlugin): PluginBase - @Binds - @PumpDriver - @IntoMap - @IntKey(155) - abstract fun bindOmnipodPumpPlugin(plugin: OmnipodPumpPlugin): PluginBase - @Binds @NotNSClient @IntoMap diff --git a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/ServicesModule.kt b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/ServicesModule.kt index f961c3a863..ec71d8a4ad 100644 --- a/app/src/main/java/info/nightscout/androidaps/dependencyInjection/ServicesModule.kt +++ b/app/src/main/java/info/nightscout/androidaps/dependencyInjection/ServicesModule.kt @@ -10,7 +10,6 @@ import info.nightscout.androidaps.plugins.pump.common.hw.rileylink.service.Riley import info.nightscout.androidaps.plugins.pump.insight.InsightAlertService import info.nightscout.androidaps.plugins.pump.insight.connection_service.InsightConnectionService import info.nightscout.androidaps.plugins.pump.medtronic.service.RileyLinkMedtronicService -import info.nightscout.androidaps.plugins.pump.omnipod.service.RileyLinkOmnipodService import info.nightscout.androidaps.services.AlarmSoundService import info.nightscout.androidaps.services.DataService import info.nightscout.androidaps.services.LocationService @@ -30,5 +29,4 @@ abstract class ServicesModule { @ContributesAndroidInjector abstract fun contributesInsightConnectionService(): InsightConnectionService @ContributesAndroidInjector abstract fun contributesRileyLinkService(): RileyLinkService @ContributesAndroidInjector abstract fun contributesRileyLinkMedtronicService(): RileyLinkMedtronicService - @ContributesAndroidInjector abstract fun contributesRileyLinkOmnipodService(): RileyLinkOmnipodService } \ No newline at end of file From d1ad8f5505c49084add1b2bcfb5c94ff1b3c6142 Mon Sep 17 00:00:00 2001 From: xJoe Date: Sat, 22 Aug 2020 16:03:56 +0200 Subject: [PATCH 06/24] Wiki url As wiki.AndroidAPS.org not available at present --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ae885da9fe..f762852a96 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # AndroidAPS -* Check the wiki: http://wiki.androidaps.org +* Check the wiki: https://androidaps.readthedocs.io * Everyone who’s been looping with AndroidAPS needs to fill out the form after 3 days of looping https://docs.google.com/forms/d/14KcMjlINPMJHVt28MDRupa4sz4DDIooI4SrW0P3HSN8/viewform?c=0&w=1 [![Gitter](https://badges.gitter.im/MilosKozak/AndroidAPS.svg)](https://gitter.im/MilosKozak/AndroidAPS?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) From f224cb1af1e1f7201e56e881dcba180867d69544 Mon Sep 17 00:00:00 2001 From: Bluefox Date: Sat, 22 Aug 2020 17:17:43 +0200 Subject: [PATCH 07/24] Show time string instead of ms in JSON structures --- .../androidaps/utils/JSONFormatter.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/info/nightscout/androidaps/utils/JSONFormatter.java b/app/src/main/java/info/nightscout/androidaps/utils/JSONFormatter.java index db1f6af239..d5e576b413 100644 --- a/app/src/main/java/info/nightscout/androidaps/utils/JSONFormatter.java +++ b/app/src/main/java/info/nightscout/androidaps/utils/JSONFormatter.java @@ -9,6 +9,9 @@ import org.json.JSONObject; import org.slf4j.Logger; import java.util.Iterator; +import java.util.Date; +import java.text.SimpleDateFormat; +import java.text.DateFormat; import info.nightscout.androidaps.logging.StacktraceLoggerWrapper; @@ -84,6 +87,7 @@ public class JSONFormatter { private String visit(final Object object, final int indent) throws JSONException { String ret = ""; + Long n; if (object instanceof JSONArray) { ret += visit((JSONArray) object, indent); } else if (object instanceof JSONObject) { @@ -92,7 +96,19 @@ public class JSONFormatter { if (object instanceof String) { ret += write("\"" + ((String) object).replace("<", "<").replace(">", ">") + "\"", indent); } else { - ret += write(String.valueOf(object), indent); + // try to detect Date as milliseconds + if (object instanceof Long) { + n = (Long) object; + if (n > 1580000000000L && n < 2000000000000L) { // from 2020.01.26 to 2033.05.18 it is with high probability a date object + Date date = new Date(n); + DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + ret += write(formatter.format(date), indent); + } else { + ret += write(String.valueOf(object), indent); + } + } else { + ret += write(String.valueOf(object), indent); + } } } return ret; @@ -107,4 +123,4 @@ public class JSONFormatter { return ret; } } -} \ No newline at end of file +} From 7b94b2fa21df488577f938a96f2cd01ab582ce9f Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sat, 22 Aug 2020 17:49:10 +0200 Subject: [PATCH 08/24] fix nsclient layout --- .../res/layout/overview_fragment_nsclient_tablet.xml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml b/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml index 5f56623663..58a567a66e 100644 --- a/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml +++ b/app/src/main/res/layout/overview_fragment_nsclient_tablet.xml @@ -44,17 +44,13 @@ android:textSize="90dp" android:textStyle="bold" /> - + android:paddingTop="18dp" + android:src="@drawable/ic_flat" /> Date: Sat, 22 Aug 2020 18:33:13 +0200 Subject: [PATCH 09/24] Add Calibration in Translator.kt Replace strings by Constants defined in CareportalEvent (most of them already defined) 8 Constants added in CareportalEvent file (3 types used in CareDialog.kt and Translator.kt, 5 only used in translator.kt) => I don't know if these types still exists now without CarePortal Plugin... --- .../androidaps/dialogs/CareDialog.kt | 6 +-- .../androidaps/db/CareportalEvent.java | 12 +++++ .../nightscout/androidaps/utils/Translator.kt | 53 ++++++++++--------- core/src/main/res/values/strings.xml | 1 + 4 files changed, 44 insertions(+), 28 deletions(-) diff --git a/app/src/main/java/info/nightscout/androidaps/dialogs/CareDialog.kt b/app/src/main/java/info/nightscout/androidaps/dialogs/CareDialog.kt index d52e3d26e6..bad46290aa 100644 --- a/app/src/main/java/info/nightscout/androidaps/dialogs/CareDialog.kt +++ b/app/src/main/java/info/nightscout/androidaps/dialogs/CareDialog.kt @@ -156,9 +156,9 @@ class CareDialog : DialogFragmentWithDate() { if (options == EventType.BGCHECK || options == EventType.QUESTION || options == EventType.ANNOUNCEMENT) { val type = when { - actions_care_meter.isChecked -> "Finger" - actions_care_sensor.isChecked -> "Sensor" - else -> "Manual" + actions_care_meter.isChecked -> CareportalEvent.FINGER + actions_care_sensor.isChecked -> CareportalEvent.SENSOR + else -> CareportalEvent.MANUAL } actions.add(resourceHelper.gs(R.string.careportal_newnstreatment_glucosetype) + ": " + translator.translate(type)) actions.add(resourceHelper.gs(R.string.treatments_wizard_bg_label) + ": " + Profile.toCurrentUnitsString(profileFunction, actions_care_bg.value) + " " + resourceHelper.gs(unitResId)) diff --git a/core/src/main/java/info/nightscout/androidaps/db/CareportalEvent.java b/core/src/main/java/info/nightscout/androidaps/db/CareportalEvent.java index 80a72ada37..22768183a3 100644 --- a/core/src/main/java/info/nightscout/androidaps/db/CareportalEvent.java +++ b/core/src/main/java/info/nightscout/androidaps/db/CareportalEvent.java @@ -78,6 +78,18 @@ public class CareportalEvent implements DataPointWithLabelInterface, Interval { public static final String MBG = "Mbg"; // comming from entries + // found in CareDialog.kt file + public static final String FINGER = "Finger"; + public static final String SENSOR = "Sensor"; + public static final String MANUAL = "Manual"; + + // found in Translator.kt + public static final String SNACKBOLUS = "Snack Bolus"; + public static final String SENSORSTART = "Sensor Start"; + public static final String TEMPBASALSTART = "Temp Basal Start"; + public static final String TEMPBASALEND = "Temp Basal End"; + public static final String TEMPBASALCANCEL = "Temporary Target Cancel"; + @Deprecated public CareportalEvent() { StaticInjector.Companion.getInstance().androidInjector().inject(this); diff --git a/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt b/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt index 501c2e7d1a..c5743c44d1 100644 --- a/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt +++ b/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt @@ -1,6 +1,7 @@ package info.nightscout.androidaps.utils import info.nightscout.androidaps.core.R +import info.nightscout.androidaps.db.CareportalEvent import info.nightscout.androidaps.utils.resources.ResourceHelper import javax.inject.Inject import javax.inject.Singleton @@ -15,30 +16,32 @@ class Translator @Inject internal constructor( fun translate(text: String): String = when (text) { - "BG Check" -> resourceHelper.gs(R.string.careportal_bgcheck) - "Snack Bolus" -> resourceHelper.gs(R.string.careportal_snackbolus) - "Meal Bolus" -> resourceHelper.gs(R.string.careportal_mealbolus) - "Correction Bolus" -> resourceHelper.gs(R.string.careportal_correctionbolus) - "Carb Correction" -> resourceHelper.gs(R.string.careportal_carbscorrection) - "Combo Bolus" -> resourceHelper.gs(R.string.careportal_combobolus) - "Announcement" -> resourceHelper.gs(R.string.careportal_announcement) - "Note" -> resourceHelper.gs(R.string.careportal_note) - "Question" -> resourceHelper.gs(R.string.careportal_question) - "Exercise" -> resourceHelper.gs(R.string.careportal_exercise) - "Site Change" -> resourceHelper.gs(R.string.careportal_pumpsitechange) - "Pump Battery Change" -> resourceHelper.gs(R.string.careportal_pumpbatterychange) - "Sensor Start" -> resourceHelper.gs(R.string.careportal_cgmsensorstart) - "Sensor Change" -> resourceHelper.gs(R.string.careportal_cgmsensorinsert) - "Insulin Change" -> resourceHelper.gs(R.string.careportal_insulincartridgechange) - "Temp Basal Start" -> resourceHelper.gs(R.string.careportal_tempbasalstart) - "Temp Basal End" -> resourceHelper.gs(R.string.careportal_tempbasalend) - "Profile Switch" -> resourceHelper.gs(R.string.careportal_profileswitch) - "Temporary Target" -> resourceHelper.gs(R.string.careportal_temporarytarget) - "Temporary Target Cancel" -> resourceHelper.gs(R.string.careportal_temporarytargetcancel) - "OpenAPS Offline" -> resourceHelper.gs(R.string.careportal_openapsoffline) - "Finger" -> resourceHelper.gs(R.string.glucosetype_finger) - "Sensor" -> resourceHelper.gs(R.string.glucosetype_sensor) - "Manual" -> resourceHelper.gs(R.string.manual) - else -> resourceHelper.gs(R.string.unknown) + CareportalEvent.BGCHECK -> resourceHelper.gs(R.string.careportal_bgcheck) + CareportalEvent.SNACKBOLUS -> resourceHelper.gs(R.string.careportal_snackbolus) + CareportalEvent.MEALBOLUS -> resourceHelper.gs(R.string.careportal_mealbolus) + CareportalEvent.CORRECTIONBOLUS -> resourceHelper.gs(R.string.careportal_correctionbolus) + CareportalEvent.CARBCORRECTION -> resourceHelper.gs(R.string.careportal_carbscorrection) + CareportalEvent.COMBOBOLUS -> resourceHelper.gs(R.string.careportal_combobolus) + CareportalEvent.ANNOUNCEMENT -> resourceHelper.gs(R.string.careportal_announcement) + CareportalEvent.NOTE -> resourceHelper.gs(R.string.careportal_note) + CareportalEvent.QUESTION -> resourceHelper.gs(R.string.careportal_question) + CareportalEvent.EXERCISE -> resourceHelper.gs(R.string.careportal_exercise) + CareportalEvent.SITECHANGE -> resourceHelper.gs(R.string.careportal_pumpsitechange) + CareportalEvent.PUMPBATTERYCHANGE -> resourceHelper.gs(R.string.careportal_pumpbatterychange) + CareportalEvent.SENSORSTART -> resourceHelper.gs(R.string.careportal_cgmsensorstart) + CareportalEvent.SENSORCHANGE -> resourceHelper.gs(R.string.careportal_cgmsensorinsert) + CareportalEvent.INSULINCHANGE -> resourceHelper.gs(R.string.careportal_insulincartridgechange) + CareportalEvent.TEMPBASALSTART -> resourceHelper.gs(R.string.careportal_tempbasalstart) + CareportalEvent.TEMPBASALEND -> resourceHelper.gs(R.string.careportal_tempbasalend) + CareportalEvent.PROFILESWITCH -> resourceHelper.gs(R.string.careportal_profileswitch) + CareportalEvent.TEMPORARYTARGET -> resourceHelper.gs(R.string.careportal_temporarytarget) + CareportalEvent.TEMPBASALCANCEL -> resourceHelper.gs(R.string.careportal_temporarytargetcancel) + CareportalEvent.OPENAPSOFFLINE -> resourceHelper.gs(R.string.careportal_openapsoffline) + CareportalEvent.MBG -> resourceHelper.gs(R.string.careportal_calibration) + + CareportalEvent.FINGER -> resourceHelper.gs(R.string.glucosetype_finger) + CareportalEvent.SENSOR -> resourceHelper.gs(R.string.glucosetype_sensor) + CareportalEvent.MANUAL -> resourceHelper.gs(R.string.manual) + else -> resourceHelper.gs(R.string.unknown) } } \ No newline at end of file diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index cc79280850..5d4bc4bdfa 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -163,6 +163,7 @@ BG Check + Calibration Announcement Note Question From 5bb9775aaaca9359932f64473bf9effe61719732 Mon Sep 17 00:00:00 2001 From: Philoul Date: Sat, 22 Aug 2020 19:01:58 +0200 Subject: [PATCH 10/24] Modify String name (mbg = Manual Bg and not only calibration) --- .../main/java/info/nightscout/androidaps/utils/Translator.kt | 3 +-- core/src/main/res/values/strings.xml | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt b/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt index c5743c44d1..bb6901ea62 100644 --- a/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt +++ b/core/src/main/java/info/nightscout/androidaps/utils/Translator.kt @@ -37,8 +37,7 @@ class Translator @Inject internal constructor( CareportalEvent.TEMPORARYTARGET -> resourceHelper.gs(R.string.careportal_temporarytarget) CareportalEvent.TEMPBASALCANCEL -> resourceHelper.gs(R.string.careportal_temporarytargetcancel) CareportalEvent.OPENAPSOFFLINE -> resourceHelper.gs(R.string.careportal_openapsoffline) - CareportalEvent.MBG -> resourceHelper.gs(R.string.careportal_calibration) - + CareportalEvent.MBG -> resourceHelper.gs(R.string.careportal_mbg) CareportalEvent.FINGER -> resourceHelper.gs(R.string.glucosetype_finger) CareportalEvent.SENSOR -> resourceHelper.gs(R.string.glucosetype_sensor) CareportalEvent.MANUAL -> resourceHelper.gs(R.string.manual) diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index 5d4bc4bdfa..69b9625397 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -163,7 +163,7 @@ BG Check - Calibration + Manual BG or Calibration Announcement Note Question From 0f408e0e8f031511e938d0ae75e46f390f33709a Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Sat, 22 Aug 2020 19:24:31 +0200 Subject: [PATCH 11/24] fix rs & pumpcontrol build --- .../jniLibs/arm64-v8a/libBleEncryption.so | Bin 22680 -> 22680 bytes .../jniLibs/armeabi-v7a/libBleEncryption.so | Bin 26448 -> 26448 bytes .../src/main/jniLibs/x86/libBleEncryption.so | Bin 22296 -> 22296 bytes .../main/jniLibs/x86_64/libBleEncryption.so | Bin 22944 -> 22944 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/danars/src/main/jniLibs/arm64-v8a/libBleEncryption.so b/danars/src/main/jniLibs/arm64-v8a/libBleEncryption.so index 59e0c564336b389d1bc5257acb12d0fae4efa331..c5fddf892520595d9446ce1510db2b6ceee93afd 100644 GIT binary patch delta 1174 zcmY+EZ){Ul6u|F!?dw|RSmvrP6}B=htevoKIP41R`oIDqNCJc{`+%}JqE5%Qx)LCo zFr55L_F>I|3=@)V29h<|2b$-H5l6r<5)Ct9NX#@CTb(*}{vix~k5G@NygKD2_x$cX z=iKw>-n@Gz31^bf-|T2o#lx>D-gdd@O4wX15Q9)&^kJQ;T_8qb(0TWhBd_$!YtLu2 z@~5_!t{M%!Ie%31NM|Kz#*eKE+{Q1he#sfYMRFy~VNl)-eRxDxTys@sxR}*sC*yIE zFFcrJt238OHI3q|WLj@vT6V(-f-MX)xZb9?dRCe)?YTG+i|N^iQJVtOc+%!~?OJF0 zT**b-$;{@e#VL+(YVD)eV>xR(LY@NWG*{l_6Nh_YD)Y9S$h-h?yAU_*JF4Rjrtea9 ze39t6Ib?C`!@Z^Y2bNNORuRTe#lje}?9qoUFY7<&3B&(@22zE>7-5|qRKtFL!$W(z zP&K~IQw;&(FH-r!NGYn3&R31+*ndcfnpCm520v~oDY0%$P%pkw@-8gael1ZXIH<|X zE(6%LYh`yO*oqfD0a%51JjY$-_i12>5Y8dXZhiRb?lG?r{nAm@D8u;jXMFPphyTCj zv})w@jz@IwtHy8m_44a*T}!MO1UP^Nz5w=kBhZA`yqjSYueZ9^aj22rMqM~WFwxtf zmvItNpa$1q)b}~)xUu2@e5GBgCcyU==Ywf4)i zX)A2fKC9}sf=^q&Mgthv?mhnzz&1?QqO0y64cNG+*+DhPhyRDKOpbd&1SRdI;GdGa zt>e|s%8s_zUXOLRcJ7Z=wzPD0ckSQT)!Nw+d#ke@ch*%L9^t!n^040|nqXF?h-R46 zOe=8AG?9nd^&L@!S@k{9Ugj9{9p-yK5S?OreE2BSbFf&klQuERi5DLMP%`^EV7;5;!%T8uefGsh|XozIqOoMW_yfbb-f$5 z;|`V)jItcVI7=%gSvKKRz1ueT7tuIiN9aj;hPRx+qHs28byxu>wuFo28m@JmXA11q z4uy{wXtmo^JKVxU4gR8Cxu5r6?!k)q!^uz@`mr2344piF!`E(5es-)^7jBU#jP>Y^pK|8aY9fgjn|=Vo z6U`q&S-aU>1OAIT?**U_f$4%$YxkCYVS5B${KUH;7i4$NnO^$Gpqj&B-47hbY2a)`_~9 znMXu}l6X-h9}{I+(3x{g@q`m$E-_2yL?Y5nUEtfT&%-c|w)*WK{X%pB-)~dweeBr4 zYps4LVVSLp&}M!&wkgrB--wpYmFZ`mUI??!yWDM@`;4UrOw@C?ajscB$!iDjJlo?~ zVEZF}%Qk>_*bbvR<(FJKHm4e3247G4eJU4W{-o_@Zcxv;MsPHxzzw!u`%$w7Z9a9b z8Y604i+8FnSisXgVNbkr>9?7}uX@7n|DS-rdt&ZTs}(zh(cYMQ=h4uHdiP8J0S--X A-~a#s diff --git a/danars/src/main/jniLibs/armeabi-v7a/libBleEncryption.so b/danars/src/main/jniLibs/armeabi-v7a/libBleEncryption.so index fabc03368aa2046882f3205875c147bcaaa401e2..47acae4c14a9f578de2732512c2fff6f3b0f5b17 100644 GIT binary patch delta 2968 zcmZveeN@xe8ONWS7a>RrA|X)3Bm^V@6d3RC@)kg`sI6MNIpru4r}9#9zU(OK)NP*Q z4BqMioX%I2svR_Sb*?PF)m0C8pxs(!buv$?(^K|d!PIK z?(g2;P1jx4b(fh|N$)Nqx?8{IfUIO5(Kwv3fB5e+H$VErrUF_9n1sa#6*`y8T4^u6zp5Y;3T6$!qU5gnRAWQESH*I`^|29c)_uRtqB z+$8wfh)XkH$D81{BoWOQ;&w6BQD+vBNa*-8CY1kRz%~SmQGiZ}XJF#1*>D7ZHT2yW zZxsAJ@c#t85#!tiYS2E2CW;jva5~1v-~rWw-Y(S=addbK9baR>r9`6Lf`0@Fw{e9; z6`m7LR4w#wLYl$ZM0oV^X|^E!9u4ArsU*1WK63i9?<4o2h>IthE%-9D+fdL7VPp?R zKF7!lf?to!`kdEq;Fsuc!_4mp@xMTyiWQuwq!jfjuwci9_(lokk|ynS!uODH0TTKP zf{&5lL?}@T3URN{mq>6CE9xi2=R*IKCrVXpm@ks5a%vKY@&)Z4#MaM#y&VEEHWgzb z8PDa5_$9 zT2?>B@TP$sX($w#qzxh{68cEz(KYr&GVVpg6L*h2VQQI4)Jymsdm?M_YTePkJq9}l z?6_2A*w-pEdDeRz^k^VmPS+T>YxL}IJScRz{Lx!PUEl&}GVcl1GDW17EC)-7p5b8j zfV<$Zxn1kQWWTeMz6Lf%P zU;-t)Ec(aNv)DEto3BMH#X)}kWO+B2s4@?S%MEtS9k9y$G)68~Znx^NWj?^RGNMgF zdkk%sSrH${e0%H?oa9?LMwh{V(#(q!5|~el{U*-QZbXdWBi@*}Jlx;z(W`VRyeAcJ z$@i=tb^6&Swgp*|(or_>;vq?ErTrM&!}ll6m2QP)^i@elEaR3acU;p#dA_MSnHLk*;wmS zsmW2Z#??MhCk=Y4S)>T+5|tdM4p9X-cKP9P(m74cj#^>Kqw3r6l?gr|_!)qNqTk7rZS^A9rOS zpf?W}gH$K$W>L~^pJ?el9mZT4K-Oq?RV@v`)IwvZpfZ!N!_u4Oa$V0s)Y;;M`g*2^<9G$NOcugHkixNPnMU)n~U zuWYSIaaMtM^CO~f{L#XG$=foNfiG=`T=RWzdx*Qq=-DPyx3;@SJ+txNjNG7mHm{4M z?p+aQaMyRwR*5#wZSnNXVnv2c{=9yLS4*gYwB(SuMC!gL{=6|Wf|>ZW%!r@_Td9M* zmEGtzx%O*mk)G-!^RqPiv=*rv^zrz<~DcBuekrknJ^}BmU z`tfdTWT}lKdNh@&HJ0c;zQI>vkMOpvV7#l&toV?tBXd$)6I2rF>V)1V6!nIX9px+hlKrKNk;z{_>}E3`n5r!_ARU~ zbbr=7QQ%>IG`mc-t6%bTK9xRetQmFgLMfynN8~W6yV^A<{FXUnc8f^dWIe}k=dPXJ zY;`}`IqRtNf|dK?AVd?zzkv%Kw$hg`%v&6?Zd_6c$@^9nx(`PYS>*Tw0{ayIJnukA zz_=n1ifPssAEN$9qNz~qhVA4v`A1ck?P|k_^E3O1^C~`@c1#cp%~D(^FJNc#nFU(; zWBY?Xrey}V@-bgl5G2X9TlIWvfl+zRzPU|&WNn*#POKrv@QusUv^9Ukd72LwXu=&s z^Yyq-k>;~Yl0SGF-YE7rY{{1!^+r~YN3UOlbbEQWK`ZGPdZ9C~HsmrE$y*BJ;uj9N zr&>HT;(Tw2EY0}8G7^C+4s9(8TLpW+3~vwih!>Fy{$4IGN)`7EdYg-j;>GMczHM%B zT@`}UCllR3dlj^UE8tV`31|Z!f%D)TI0H_B6QB_s1{|2cey|Vx3hV|u!FKQqumx-a z8^H!p12A_et%tD|tN|6E9IOOoU^!UEhvx=|SE0m(@Jc}mC+I{4p^|=n|Cbp&OC#A z;VftYpMrL91AGPUgNGmwIaX4I$!H?+16ZtYmBGlqg44J7KI<6~iWS+t=SQ&#$2yf${Ge|+wF{Jy{6 z`Q3BR<92nju1;3JPWgTr(fj6&ht+e6iN@iKeI0zDHf83+u0pT6-sCH53)Al3-ZrD& zGQ(i{y$|i*Kwk+zPl9@se~lxGmtJrh{6p}9I!W(R8i?LOho97O3l1$wL_d|U|qwZkmXY>G&`^5PqMY=m&g-BCO^TVg|AomR=}A6NyYxTaB^;39XSl zzk=r-c%GKpW<(Ck{q76wMSl}UUMkryLa)aRzRaWq`MHtCG0DDNL3yN3|1RJU5ikt_ zgC)T^1UMK$l!`<=Gjsz1j$lS7O7;cN_wppAmfhoJN^S0nIYjxAb{}kIrtg-+Wccdg z3(0t_K-gPgPnFuA!QRf>mD=)yP`#Yu`%rB}Mlah>pze;ucaJ@0I`4W}AK^Ln*t=2HTHCRnKhfu~KAsS<+W*@{Soh#E zIA>{zFfdKBjjX2@;!V)?6x;0)IBU6S@Mh{0F0%f30ns7L!^q>zyKAs$9?@NHo}R*X z@oUrHX5Z(z(UVvaFN@Yj%^zGo663dgBy#G<^LOS?tb8sC|Lyru>dEI#(T7=&#TZk- zn2B#QE@qSYCF2a^d2G(-2>uk@2c6(L_!Bq{J_It|b8(PsVpB9dj^!gintGth{7g>E zN2=q3Fjyxqk3E94#MolCj2F!KVuPQftB~j-_!OK4TfrM(5hw+d0Ra`bEf6(=X3zlE zgEv4bFoEv@75G;H(F1T1oB-?ij=0yA`|;@;EWL3d^3Z7mWUb00`q^BfY7hA8_rWfU zI^JI%@^hOBpZzqJMlH%kD1VP~nPp~T0tZrHRFJ@6;vCkH4N8C8I(9UTTc*kW=2Q6a4jV@eyxNHLyxPQ=`q*uq~&0)FQldTrjM%wpw8p&v=FtQldKFU>LDJUZVU}{YWn8l z7*@upyV(q7cfd?#PrTq3r}EY58mxfr=_%ndrw%;|r(0Ax_l6Mt1v|&`8jFMv`hKv;LDTgQSS%+IZ=OF7% zL<~k`CCWAs!*^sPvQ_*Hp0)g5hJnrI%FG0|l&55dGY2or)XNkOUY!|Vsu&OCg+M-z zt2hkzYw#^*6a68Ws1Eh7P^yF=frjXOYrE`sN|{NZfUhu#=xRK!C!DOuP`}Nu zWrwjq{xCZ+>H2_2-8tYEZw&Oqz6`oTlqQ||+^fj}SZqdezb3((` z4g^E{|LmQ7Pfn=3XrPa`Rm*PVW5V1h^a)Mc!cHy@nBtg6)3Z)=B4YDKHc+S)NHE^<*U zZz!k?`P^0ACO^8l&3}HpkSlySqN?ASKPtBJAVIGh9jr9spTeJ~3sYGGUoIFFJ%baB zmUo3b#*+D^!i2Ca zBWI+gyeLs#bJ-V%BCedO!WYky@w)Vc%X9DvI0jlkGx#<56)=N3@C$GN>;rqj9syZgNn(rviOGFQnGlrAMYzm<=0pGW&IL&!C_zqAA#fG zGjIW10)GQxxIc_w7Dxgc!582k7R@THHxBKj3a#?RfANY6gK|y@el+-=3WIvIl*mJ~ J_2=#814W7 diff --git a/danars/src/main/jniLibs/x86/libBleEncryption.so b/danars/src/main/jniLibs/x86/libBleEncryption.so index fb51d4816fa9b6e18aa071daa306f8533e16145d..0c860f07d9e615b1d2deacd06091156ec5ae9042 100644 GIT binary patch delta 1295 zcmZ9MT}<0m6u|HK(@sFpIhq-yqYO%+6d53h^3`^(7?$A{T}2j%;E)e9DM*VCZea|Z z{MRiOk1lAoIHSunE+pp9CJ#O^Nz5i};=%(%1d6b9+C@y9R_S&;Wd(H)_x$d;=i{Dx z?#=BVfc^pS)T;wlAp(8Pj;L)sSs8uaWzE+1v?l_`{gt_z?cP0AFZFeN(EBkiLH*|8 zd?7|bhz%lEGzlSwQ-l~{hV-3G54t2BEa7{S&N`PQL`B$lA2T~gh@+~zzFiSQSQ3Sx zaI8yWy+nw|!ul1~Yw?zp0#g_tk1=X#lQ?JDH_;k^==9=#BI z?z_8J564-!&dzYWk^O6ng_sQML(Eg0|HH6uW&6RRf9+KfLJ}6`T*PR6*$+Pw9qS)v zDcAVr13veGNO#S8xmYh(>s9iIY@3!VCT07C>>Bsg-XzMoB-<9;wn(>dAN+*tcH1M} zt_6fgHII+cxNMtq+x+f|IeA{*u978p&9u+NQQZOYU=MdkxNW}wTVwIYrtA%NdGWc* z=ezxxKK2nWbPYFPZekro;k$_^p+U*j^?>&H4X*Tj$iC{WUG@G(xtde}@RSmrdF(5Mr<^)g;X=;6Q3VT*HM_1ALA58w~I{<{D1JX=T#z zHb6c$rMJNdPNhFBz2U{?^gOIICO{#!8`I$-JYl>91=x_$2;bqAjDYs=%)NE3o#H&s zo3bO9LoNOydIlfKd>z&)?_@ev+Oli+234;frb9{2=};vMPOyj5uy)v(Rr__LqT~-k z!s1mT&woAE+ObhNRPZIl$9>NkI@S^tuO=wNXP+G4UO?f)pu+gVRH#zSgM$Cw(oVgoLO~st?jL@S6lZwTAZ&r_F+p&8EElbi7CS} zOEeX_9P0y-Z%SKZ)n$j(Z>hQ?r12OPKWo9ySG4j7%wlw@0md<>)CAkGhGi4Vr8*eG z&q`Au4==Oy;BUO1hnvhHYq>d1z2ql4f*+YRD4XM8H=Z<`)I+z3MzO9`gI;r-y82I| z%PU%}B@P5`wxq#DEN3~6Z7h57eU=uyV9`MmdM#TzgBOXo$u#yY(WgNo?KJDmATt;u z-<$q6(Fs1Hn24in;%H zqOX`c{vh(*AtPx6L>ew2<}VIl7XQrwOzkq!QD%@i$W$&^Juyn}GtPCO$J@JgQBM9? aLgPhDwd>RqJe$CBdy0DHyHnciXW$<+rwwNS delta 1250 zcmZ9MeMnnZ6u|F!d2uO=Bh0`m2_`nrXg)>_tu3`NAF^y%up7>-TZyb?Svx_f4s98v zsI;>_Q)$a_qcF>C+13t*n|rPk<{v^C!?_iQGVG|WT3gaBTV>SEex9A!=t}=M=XcLL zANSmIFYjbOoa~3=as5zOh@lhp`_{<3Se6sB_sl)Unf}{d&p(~M75~khu&iyI&>L|9 z;)Q)>LX3eB&x%~}ju4{HA;bk{#(tUEh%J&0#_6t7)AOd$YcL_O*G1=*rf5n`@Ppvt;+OFdG#i zc0ToJufv>Y=RRAr`7VwR`GuIu+C$7XuK#h?4zqvP*8lx)=!7Kf+Bdqf{QACWBK2T8 zdC-uoGpT+>jVZEvL5<9))tA-il-e?xs{fP7H>yTb$%r8-l5L-GyUC~_*^*MtirTEm zKfItAcq@^t~z8$dRUKPjq_9ZUR!b=1Bha0NfTVdyCpA4 zAI+j#vJnrsEU**NRRTU7c8$Ug>~QaeTlklI$@sH%hv-`;jyh(p&s}7uRs@WuL$Fp z6%mNxVui=uc9lrW3_tvg;eDwxSN~#%{)l`?Cw*>|`IQQOjiQld?F?=UIAH;s0v?Ft zDb}4h8nD3>-V8XP7IT9R_zHbN53lQ3ccL0B)|>cAb>VE#jHAIkXvXQFM?bYlG=`@G zW-JWl=@b7F{k&{dhw{LVyF+pcb_PB znQf+(@8f=kd~wPHqG3MTD@@}oQG%IZ_A;$=L?g^z<~+0E8jls~fJKAi0s;#xf4Xs(>~@}r6*~oKG(Q%rI75^u(3qM4 zT}&2MC)#6XVrmt2rZF>hiluJH(IVR>mMB#-{zi#WjJg<7F?K8%_4T{&EsAAk-*?XU zopbKF=iaw$dnaq}WSc)U4iyXP-_Vv_M%v9C?lLaM`&hH&I53Zl+Xkw)9Y zt3-xZ>7YCMn7OsjYwA1UTx*23ir~9ojVruPzO#ZD=PCT*C2=aC=b5!&`|MUh*@NV=4m z&Cb(!%X91yrCQEE_q|gPnAB2-Ag|+Ja8TH!I^7hXbdr71Iha(&uo1`9pXiv4HYOLc z6?8PYx^dsEF~RL{n6zOsD74h=ukV%p(OW@=o((C=z$;Jj>p6e>rlQ;vo3y;br}R3m zE6|^mTFI#gV<|)QE1Vm-Ne8AK(DmQwteL)!Ii~YU;f>?eg;2wFb>k9v*)N6)1fk6U zLxJJr#yQT&4Ax))O`Vb1_z{SwDnx1(yx?X3hH6Do+GHJew}zL9Y?C8kFXwg%lf8~# z|9|@NZ`1~ssp+Bvpf>O`p1~VP*^FUYwk*d3#)>>`Jxghz#kXot* ztC!~)P@z9wQ@3EJ9&1{j5vpAEc8k-OTj=++c)MAvr)A(X^o7*B{9PYA{&`wzA6Zk= zJRMMx+N7m6si{p`s$V3CQozuB=RMwqU-ZIP2lSRIlriu3CeSssEwzE|BXe50Auth< zn@nAuuc!TzB^2kX1@I2_$W`T^N?o~T+X*aXmI9_cx}9Fe&XRMcg&m;RW-ewwr^7Q7 z*etpT`)kU}NJ>4C&DYhE-BMS&*<*X?_NAM#=pIOJDNx{U9hNsmzf4UTiL8NkW=v-b z=xD~Py4yBN$(+J^X>R6J_6gNwE<*iJ!Q|5oFi~X8%Fun6MTJ={I;D?}WE~p6JCk=? zt7{#?4$8@A;}t))C9{RpYg?il%%IflWOkGmWT&tl^sDSDRz#OzPo#*PX}ZCgl$w*w z&e4LL$rwg;P6ex=BRTP`kot1UbfI+0$c^Lu=N|8h3n#+8grb zBX73B_Ft!OHt%gWtu0u@O6Yijg{9KB1(kEYNa5X9;?3jB%A~+j`3vWoRou@(=$thh!KPaD>Iub_rW;LcTj^Hp`bJwEYvGA|H)1t0|?k$xGL zI<2!RWjX_84q5vF zAo<6%54Oh|#F6jOSn+p27pCmOn0fDh)qi~I9^)z8o(B4pBaOw;B}cMl<*MbYGghr! zQC+vTYIS{G#?qy=YisLYudQ0Ws&38d8hYd?iQRirQO4oUjQ&Nzz?ZJjPD@{iiTx0& zI4S|Tx(uJqv<0dU>ZCC$wk~W{)!+*$Q+h5d${wz|#+%>Oy=Zzyw`1J120@4i)rU_d z8RuBoWU|glVNJ9U&%Ly6jzu@zPan-mWN*?z$QS5K2(`qVDX^_h3zKQCGm{n2Iy`64 zCwNY#FYz>x(Pd#ivbs`OJ1vA=MsMJ0rY(48(SBEEO0DFP!f!_f8E@4Oy6=h=|a)32oAr|-mTdV_?UO_(aFz_&N$yMY4`+yIC z+xrzI`H`|vNgqJ)BLo3!fPMH0w;lN4E*1pF--8XDJ&c9WXdkeYH+&xp0SAFwfxSPV zQDEo(;-tt<^ZYC$J43FD%nAAz_{0Ta6knz0icDj5n60LR75R~4e(m3{_=E0$-~}F^ delta 3021 zcmZ8j4Nz3q72f;UwF_Z=Xds9I7Rf3s2+IPy{Dc)A?xqVt2h)HWwN0vaBswF>NXDcZ zL{N8Gtv^R;(mF<)OzJdtYGw^HREwZ(V=UISni3PN;14dAk z-#O==d+vS9?)S6(ezxPi@WZ7VMFfODsdsi{~E|wKO9=?gAgx;;-hGuE|$IOuhH$B zl5o+e(YU>?uiU=%gKl44Z}7suW!d_L_cX`=SrTI=1>^wiQwTs%-Kn6TRwmA*Kc`Qm zj}m9aNu{VRZkmMW@u%d!nsF1P~@6E{r(g_b&ebzN>> z%n^{ml%OmR{O}2WFXu(@cXj*Kyn-k6-CQ?9e_YDTsrd1fKIUD{#Rcih>7NP04gb~| zZ!^aWyi#c6I7Cgb<+`$Q3wXCrrw26aVHja}xN$chjGMuVETGaYMJl$BnkZ<&n9ZH9gRZRyKd!jE&60&XAPiltS56x(y7 ztbfH)QDUp1n#7Dsc86ZgFtRUcL&hTZHuYpAuthWiTc+yFq_o@Fd|fr!DYnmya#VvSx@^j6Ilx#&z!+lQ-9`<1TmYwZ<)q!QH>>;eL-6-^HKjA znE5mzE1BhzIV)2zSZQHalVH3=m$QyeJYnJ8)(YN1?4XVgT6x9KttR#c-LftgA}v&& zZDRejIy;56)6cV)vRCLn>}+~2XSxuXN#!{vc9&M?Ou;ZbIo0efx||cw7Sd==rJ&EC zxw%t$Ke?5KpUfQF*Bm|+J^MR`!f)P22x2St$M>viRz)jmuG?PXvAya4Z|)?~&EI(9`Q(H&dO7bE z_A&h~FNy7;K%R-!(w)3K7NCs$im5kKmEMpy2YE$$>vtudBHr5xqWt;nb-I~vWaac! z!GhwU6yEIuym@??IbArST)kxdhg03m-&7ed&m*}=FR{x`wVt1TRZtzj3PEE5VtcgS zY5u1tTHjoC)Dtt0q6_obr&Li`#*R}K?+Dtiw)^?ps(8FV(AR7*sSW0xyo zEjhWP%I&?5%~rt^TipUeUV_PR=;aD!m<<@~)n?~TzxMfter2yi9>a7n$bUu&uEo`G zJPnh-1C9uVvxNaVA8H%>`O)d_P^}~S#a{g2K-M_`Nd7ULf$cJP;>b^`tnMgK!jvV9 znfLyQ;y*fdS9k!or-jZs(pe$hcbKSnR#{x|tSm?3PK^CU!@!rSrk4)PijDgUs%}gI za&;L#0Xhfu6x3(Nsc2lYTTxkY$~66DS>DK1X=2o7VYXp{us-s8dW|L?R1ZFDsjS$@ z@~Ngch3%)Ec%GuRVxutSDt%p?$ljxSkcTO*B!%rD3D04wDKWAYg)#WRb}DfWO~H)2Y3v)t`9bF6gUbzc14y= z59N7s#Q+i?LIkb?j^ZcUUSRyUSP)or7aVZ$Fcw0iqreJa(Fhg-M&6g@-N0MGBS8O9 ysWD>LY{?%rCo7yCA*tFj>6(KNU85PpVrr* From 7e2e5be6bbba712488908b417c2bbaa9fb696788 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 24 Aug 2020 21:39:14 +0200 Subject: [PATCH 12/24] Dana options activity fix --- .../androidaps/dana/DanaFragment.kt | 8 ++--- .../nightscout/androidaps/dana/DanaPump.kt | 4 +-- .../activities/DanaUserOptionsActivity.kt | 34 +++++++++---------- .../danar/comm/MsgSetUserOptions.kt | 4 +-- .../danar/comm/MsgSettingUserOptions.kt | 12 +++---- .../DanaRS_Packet_Option_Get_User_Option.kt | 6 ++-- .../DanaRS_Packet_Option_Set_User_Option.kt | 8 ++--- 7 files changed, 38 insertions(+), 38 deletions(-) diff --git a/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt b/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt index 4585b80aa7..ba0c110823 100644 --- a/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt +++ b/dana/src/main/java/info/nightscout/androidaps/dana/DanaFragment.kt @@ -27,6 +27,7 @@ import info.nightscout.androidaps.utils.T import info.nightscout.androidaps.utils.WarnColors import info.nightscout.androidaps.utils.alertDialogs.OKDialog import info.nightscout.androidaps.utils.extensions.plusAssign +import info.nightscout.androidaps.utils.extensions.toVisibility import info.nightscout.androidaps.utils.resources.ResourceHelper import info.nightscout.androidaps.utils.sharedPreferences.SP import io.reactivex.android.schedulers.AndroidSchedulers @@ -35,6 +36,7 @@ import kotlinx.android.synthetic.main.danar_fragment.* import javax.inject.Inject class DanaFragment : DaggerFragment() { + @Inject lateinit var rxBus: RxBusWrapper @Inject lateinit var aapsLogger: AAPSLogger @Inject lateinit var fabricPrivacy: FabricPrivacy @@ -95,6 +97,7 @@ class DanaFragment : DaggerFragment() { danar_btconnection.setOnLongClickListener { activity?.let { OKDialog.showConfirmation(it, resourceHelper.gs(R.string.resetpairing), Runnable { + aapsLogger.error("USER ENTRY: Clearing pairing keys !!!") (activePlugin.activePump as DanaPumpInterface).clearPairing() }) } @@ -212,9 +215,6 @@ class DanaFragment : DaggerFragment() { } //hide user options button if not an RS pump or old firmware // also excludes pump with model 03 because of untested error - val isKorean = activePlugin.activePump.pumpDescription.pumpType == PumpType.DanaRKorean - if (isKorean || pump.hwModel == 0 || pump.hwModel == 3) { - danar_user_options?.visibility = View.GONE - } + danar_user_options?.visibility = (pump.hwModel != 1 && pump.protocol != 0x00).toVisibility() } } diff --git a/dana/src/main/java/info/nightscout/androidaps/dana/DanaPump.kt b/dana/src/main/java/info/nightscout/androidaps/dana/DanaPump.kt index 175daea266..d687d27936 100644 --- a/dana/src/main/java/info/nightscout/androidaps/dana/DanaPump.kt +++ b/dana/src/main/java/info/nightscout/androidaps/dana/DanaPump.kt @@ -159,8 +159,8 @@ class DanaPump @Inject constructor( var v3RSPump = false; // User settings - var timeDisplayType = 0 - var buttonScrollOnOff = 0 + var timeDisplayType24 = false + var buttonScrollOnOff = false var beepAndAlarm = 0 var lcdOnTimeSec = 0 var backlightOnTimeSec = 0 diff --git a/dana/src/main/java/info/nightscout/androidaps/dana/activities/DanaUserOptionsActivity.kt b/dana/src/main/java/info/nightscout/androidaps/dana/activities/DanaUserOptionsActivity.kt index fafebe603d..03d51edf9b 100644 --- a/dana/src/main/java/info/nightscout/androidaps/dana/activities/DanaUserOptionsActivity.kt +++ b/dana/src/main/java/info/nightscout/androidaps/dana/activities/DanaUserOptionsActivity.kt @@ -28,6 +28,7 @@ import kotlin.math.max import kotlin.math.min class DanaUserOptionsActivity : NoSplashAppCompatActivity() { + @Inject lateinit var aapsLogger: AAPSLogger @Inject lateinit var rxBus: RxBusWrapper @Inject lateinit var fabricPrivacy: FabricPrivacy @@ -71,9 +72,9 @@ class DanaUserOptionsActivity : NoSplashAppCompatActivity() { aapsLogger.debug(LTag.PUMP, "UserOptionsLoaded:" + (System.currentTimeMillis() - danaPump.lastConnection) / 1000 + " s ago" - + "\ntimeDisplayType:" + danaPump.timeDisplayType + + "\ntimeDisplayType24:" + danaPump.timeDisplayType24 + "\nbuttonScroll:" + danaPump.buttonScrollOnOff - + "\ntimeDisplayType:" + danaPump.timeDisplayType + + "\nbeepAndAlarm:" + danaPump.beepAndAlarm + "\nlcdOnTimeSec:" + danaPump.lcdOnTimeSec + "\nbackLight:" + danaPump.backlightOnTimeSec + "\npumpUnits:" + danaPump.units @@ -84,33 +85,35 @@ class DanaUserOptionsActivity : NoSplashAppCompatActivity() { danar_shutdown.setParams(danaPump.shutdownHour.toDouble(), 0.0, 24.0, 1.0, DecimalFormat("1"), true, save_user_options) danar_lowreservoir.setParams(danaPump.lowReservoirRate.toDouble(), 10.0, 50.0, 10.0, DecimalFormat("10"), false, save_user_options) when (danaPump.beepAndAlarm) { - 0x01 -> danar_pumpalarm_sound.isChecked = true - 0x02 -> danar_pumpalarm_vibrate.isChecked = true - 0x11 -> danar_pumpalarm_both.isChecked = true + 0b01 -> danar_pumpalarm_sound.isChecked = true + 0b10 -> danar_pumpalarm_vibrate.isChecked = true + 0b11 -> danar_pumpalarm_both.isChecked = true - 0x101 -> { + 0b101 -> { danar_pumpalarm_sound.isChecked = true danar_beep.isChecked = true } - 0x110 -> { + 0b110 -> { danar_pumpalarm_vibrate.isChecked = true danar_beep.isChecked = true } - 0x111 -> { + 0b111 -> { danar_pumpalarm_both.isChecked = true danar_beep.isChecked = true } } - if (danaPump.lastSettingsRead == 0L) - aapsLogger.error(LTag.PUMP, "No settings loaded from pump!") else setData() + if (danaPump.lastSettingsRead == 0L && danaPump.hwModel < 0x05) // RS+ doesn't use lastSettingsRead + aapsLogger.error(LTag.PUMP, "No settings loaded from pump!") + else + setData() } fun setData() { // in DanaRS timeDisplay values are reversed - danar_timeformat.isChecked = !isRS() && danaPump.timeDisplayType != 0 || isRS() && danaPump.timeDisplayType == 0 - danar_buttonscroll.isChecked = danaPump.buttonScrollOnOff != 0 + danar_timeformat.isChecked = danaPump.timeDisplayType24 + danar_buttonscroll.isChecked = danaPump.buttonScrollOnOff danar_beep.isChecked = danaPump.beepAndAlarm > 4 danar_screentimeout.value = danaPump.lcdOnTimeSec.toDouble() danar_backlight.value = danaPump.backlightOnTimeSec.toDouble() @@ -123,12 +126,9 @@ class DanaUserOptionsActivity : NoSplashAppCompatActivity() { //exit if pump is not DanaRS, DanaR, or DanaR with upgraded firmware if (!isRS() && !isDanaR() && !isDanaRv2()) return - if (isRS()) // displayTime on RS is reversed - danaPump.timeDisplayType = if (danar_timeformat.isChecked) 0 else 1 - else - danaPump.timeDisplayType = if (danar_timeformat.isChecked) 1 else 0 + danaPump.timeDisplayType24 = danar_timeformat.isChecked - danaPump.buttonScrollOnOff = if (danar_buttonscroll.isChecked) 1 else 0 + danaPump.buttonScrollOnOff = danar_buttonscroll.isChecked danaPump.beepAndAlarm = when { danar_pumpalarm_sound.isChecked -> 1 danar_pumpalarm_vibrate.isChecked -> 2 diff --git a/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSetUserOptions.kt b/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSetUserOptions.kt index 68d6ef73d9..142e3d85d0 100644 --- a/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSetUserOptions.kt +++ b/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSetUserOptions.kt @@ -13,8 +13,8 @@ class MsgSetUserOptions( // No options set -> Exiting aapsLogger.debug(LTag.PUMPCOMM, "NO USER OPTIONS LOADED EXITING!") } else { - danaPump.userOptionsFrompump!![0] = (if (danaPump.timeDisplayType == 1) 0 else 1).toByte() - danaPump.userOptionsFrompump!![1] = danaPump.buttonScrollOnOff.toByte() + danaPump.userOptionsFrompump!![0] = if( danaPump.timeDisplayType24) 0.toByte() else 1.toByte() + danaPump.userOptionsFrompump!![1] = if (danaPump.buttonScrollOnOff) 1.toByte() else 0.toByte() danaPump.userOptionsFrompump!![2] = danaPump.beepAndAlarm.toByte() danaPump.userOptionsFrompump!![3] = danaPump.lcdOnTimeSec.toByte() danaPump.userOptionsFrompump!![4] = danaPump.backlightOnTimeSec.toByte() diff --git a/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSettingUserOptions.kt b/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSettingUserOptions.kt index 9f3350a579..2d7d703994 100644 --- a/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSettingUserOptions.kt +++ b/danar/src/main/java/info/nightscout/androidaps/danar/comm/MsgSettingUserOptions.kt @@ -20,22 +20,22 @@ class MsgSettingUserOptions( for (pos in bytes.indices) { aapsLogger.debug(LTag.PUMPCOMM, "[" + pos + "]" + bytes[pos]) } - danaPump.timeDisplayType = if (bytes[0] == 1.toByte()) 0 else 1 // 1 -> 24h 0 -> 12h - danaPump.buttonScrollOnOff = if (bytes[1] == 1.toByte()) 1 else 0 // 1 -> ON, 0-> OFF + danaPump.timeDisplayType24 = bytes[0].toInt() == 0 // 0 -> 24h 1 -> 12h + danaPump.buttonScrollOnOff = bytes[1] == 1.toByte() // 1 -> ON, 0-> OFF danaPump.beepAndAlarm = bytes[2].toInt() // 1 -> Sound on alarm 2-> Vibrate on alarm 3-> Both on alarm 5-> Sound + beep 6-> vibrate + beep 7-> both + beep Beep adds 4 - danaPump.lcdOnTimeSec = bytes[3].toInt() and 255 - danaPump.backlightOnTimeSec = bytes[4].toInt() and 255 + danaPump.lcdOnTimeSec = bytes[3].toInt() + danaPump.backlightOnTimeSec = bytes[4].toInt() danaPump.selectedLanguage = bytes[5].toInt() // on DanaRv2 is that needed ? danaPump.units = bytes[8].toInt() danaPump.shutdownHour = bytes[9].toInt() - danaPump.lowReservoirRate = bytes[32].toInt() and 255 + danaPump.lowReservoirRate = bytes[32].toInt() /* int selectableLanguage1 = bytes[10]; int selectableLanguage2 = bytes[11]; int selectableLanguage3 = bytes[12]; int selectableLanguage4 = bytes[13]; int selectableLanguage5 = bytes[14]; */ - aapsLogger.debug(LTag.PUMPCOMM, "timeDisplayType: " + danaPump.timeDisplayType) + aapsLogger.debug(LTag.PUMPCOMM, "timeDisplayType24: " + danaPump.timeDisplayType24) aapsLogger.debug(LTag.PUMPCOMM, "Button scroll: " + danaPump.buttonScrollOnOff) aapsLogger.debug(LTag.PUMPCOMM, "BeepAndAlarm: " + danaPump.beepAndAlarm) aapsLogger.debug(LTag.PUMPCOMM, "screen timeout: " + danaPump.lcdOnTimeSec) diff --git a/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Get_User_Option.kt b/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Get_User_Option.kt index c9fe481da8..f0232854f7 100644 --- a/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Get_User_Option.kt +++ b/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Get_User_Option.kt @@ -20,10 +20,10 @@ class DanaRS_Packet_Option_Get_User_Option( override fun handleMessage(data: ByteArray) { var dataIndex = DATA_START var dataSize = 1 - danaPump.timeDisplayType = byteArrayToInt(getBytes(data, dataIndex, dataSize)) + danaPump.timeDisplayType24 = byteArrayToInt(getBytes(data, dataIndex, dataSize)) == 0 dataIndex += dataSize dataSize = 1 - danaPump.buttonScrollOnOff = byteArrayToInt(getBytes(data, dataIndex, dataSize)) + danaPump.buttonScrollOnOff = byteArrayToInt(getBytes(data, dataIndex, dataSize)) == 1 dataIndex += dataSize dataSize = 1 danaPump.beepAndAlarm = byteArrayToInt(getBytes(data, dataIndex, dataSize)) @@ -68,7 +68,7 @@ class DanaRS_Packet_Option_Get_User_Option( val selectableLanguage5 = byteArrayToInt(getBytes(data, dataIndex, dataSize)) // Pump's screen on time can't be less than 5 failed = if (danaPump.lcdOnTimeSec < 5) true else false - aapsLogger.debug(LTag.PUMPCOMM, "timeDisplayType: " + danaPump.timeDisplayType) + aapsLogger.debug(LTag.PUMPCOMM, "timeDisplayType24: " + danaPump.timeDisplayType24) aapsLogger.debug(LTag.PUMPCOMM, "buttonScrollOnOff: " + danaPump.buttonScrollOnOff) aapsLogger.debug(LTag.PUMPCOMM, "beepAndAlarm: " + danaPump.beepAndAlarm) aapsLogger.debug(LTag.PUMPCOMM, "lcdOnTimeSec: " + danaPump.lcdOnTimeSec) diff --git a/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Set_User_Option.kt b/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Set_User_Option.kt index c6572d6f60..78db5a28c2 100644 --- a/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Set_User_Option.kt +++ b/danars/src/main/java/info/nightscout/androidaps/danars/comm/DanaRS_Packet_Option_Set_User_Option.kt @@ -20,16 +20,16 @@ class DanaRS_Packet_Option_Set_User_Option( override fun getRequestParams(): ByteArray { aapsLogger.debug(LTag.PUMPCOMM, "UserOptions:" + (System.currentTimeMillis() - danaPump.lastConnection) / 1000 + " s ago" - + "\ntimeDisplayType:" + danaPump.timeDisplayType + + "\ntimeDisplayType24:" + danaPump.timeDisplayType24 + "\nbuttonScroll:" + danaPump.buttonScrollOnOff - + "\ntimeDisplayType:" + danaPump.timeDisplayType + + "\nbeepAndAlarm:" + danaPump.beepAndAlarm + "\nlcdOnTimeSec:" + danaPump.lcdOnTimeSec + "\nbacklight:" + danaPump.backlightOnTimeSec + "\ndanaRPumpUnits:" + danaPump.units + "\nlowReservoir:" + danaPump.lowReservoirRate) val request = ByteArray(13) - request[0] = (danaPump.timeDisplayType and 0xff).toByte() - request[1] = (danaPump.buttonScrollOnOff and 0xff).toByte() + request[0] = if (danaPump.timeDisplayType24) 0.toByte() else 1.toByte() + request[1] = if (danaPump.buttonScrollOnOff) 1.toByte() else 0.toByte() request[2] = (danaPump.beepAndAlarm and 0xff).toByte() request[3] = (danaPump.lcdOnTimeSec and 0xff).toByte() request[4] = (danaPump.backlightOnTimeSec and 0xff).toByte() From 6a84db7aa804dee1c7aa0ba69dd7e425e2c3ae73 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 24 Aug 2020 21:53:08 +0200 Subject: [PATCH 13/24] New Crowdin updates (#2909) * New translations strings.xml (Lithuanian) * New translations strings.xml (Lithuanian) * New translations strings.xml (Bulgarian) * New translations strings.xml (Dutch) * New translations strings.xml (Dutch) * New translations strings.xml (Polish) * New translations strings.xml (Lithuanian) * New translations strings.xml (Portuguese) * New translations strings.xml (Portuguese) * New translations strings.xml (Polish) * New translations strings.xml (Hebrew) * New translations strings.xml (Italian) * New translations strings.xml (Italian) * New translations strings.xml (Korean) * New translations strings.xml (Chinese Simplified) * New translations strings.xml (Turkish) * New translations strings.xml (Portuguese, Brazilian) * New translations strings.xml (Portuguese, Brazilian) * New translations strings.xml (Slovak) * New translations strings.xml (Russian) * New translations strings.xml (Russian) * New translations strings.xml (Swedish) * New translations strings.xml (Slovenian) * New translations strings.xml (Czech) * New translations strings.xml (Slovenian) * New translations strings.xml (Portuguese, Brazilian) * New translations strings.xml (Portuguese, Brazilian) * New translations strings.xml (Chinese Simplified) * New translations strings.xml (Chinese Simplified) * New translations strings.xml (Turkish) * New translations strings.xml (Turkish) * New translations strings.xml (Slovenian) * New translations strings.xml (Croatian) * New translations strings.xml (Slovak) * New translations strings.xml (Russian) * New translations strings.xml (Russian) * New translations strings.xml (Portuguese) * New translations strings.xml (Portuguese) * New translations strings.xml (Polish) * New translations strings.xml (Croatian) * New translations strings.xml (Dutch) * New translations strings.xml (Romanian) * New translations strings.xml (Romanian) * New translations strings.xml (Polish) * New translations strings.xml (Dutch) * New translations strings.xml (French) * New translations strings.xml (Swedish) * New translations strings.xml (Romanian) * New translations strings.xml (Romanian) * New translations strings.xml (Lithuanian) * New translations strings.xml (Lithuanian) * New translations strings.xml (Lithuanian) * New translations strings.xml (French) * New translations strings.xml (Swedish) * New translations strings.xml (Swedish) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (Czech) * New translations strings.xml (French) * New translations strings.xml (Spanish) * New translations strings.xml (Korean) * New translations strings.xml (Irish) * New translations strings.xml (Korean) * New translations strings.xml (Italian) * New translations strings.xml (Italian) * New translations strings.xml (Hebrew) * New translations strings.xml (Hebrew) * New translations strings.xml (Irish) * New translations strings.xml (Greek) * New translations strings.xml (Spanish) * New translations strings.xml (Greek) * New translations strings.xml (German) * New translations strings.xml (German) * New translations strings.xml (Bulgarian) * New translations strings.xml (Afrikaans) * New translations strings.xml (Afrikaans) * New translations strings.xml (Irish) * New translations strings.xml (German) * New translations strings.xml (German) * New translations strings.xml (Czech) * New translations strings.xml (Czech) * New translations strings.xml (Greek) * New translations strings.xml (French) * New translations strings.xml (Spanish) * New translations strings.xml (Spanish) * New translations strings.xml (Bulgarian) * New translations strings.xml (Bulgarian) * New translations strings.xml (Afrikaans) * New translations strings.xml (Croatian) * New translations strings.xml (German) * New translations strings.xml (Italian) * New translations strings.xml (German) * New translations strings.xml (Italian) * New translations strings.xml (Italian) * New translations objectives.xml (Italian) * New translations strings.xml (Spanish) * New translations strings.xml (Spanish) * New translations strings.xml (Spanish) * New translations strings.xml (Spanish) * New translations strings.xml (Slovak) * New translations strings.xml (Slovak) * New translations strings.xml (Czech) * New translations strings.xml (Czech) * New translations strings.xml (Bulgarian) * New translations strings.xml (Bulgarian) * New translations strings.xml (French) * New translations strings.xml (French) * New translations strings.xml (Swedish) * New translations strings.xml (Swedish) * New translations strings.xml (Swedish) * New translations strings.xml (Swedish) * New translations strings.xml (German) --- app/src/main/res/values-af-rZA/strings.xml | 18 --- app/src/main/res/values-bg-rBG/strings.xml | 119 --------------- app/src/main/res/values-cs-rCZ/strings.xml | 119 --------------- app/src/main/res/values-de-rDE/strings.xml | 122 +--------------- app/src/main/res/values-el-rGR/strings.xml | 18 --- app/src/main/res/values-es-rES/strings.xml | 138 +++--------------- app/src/main/res/values-fr-rFR/strings.xml | 119 --------------- app/src/main/res/values-ga-rIE/strings.xml | 10 -- app/src/main/res/values-hr-rHR/strings.xml | 10 -- app/src/main/res/values-it-rIT/objectives.xml | 2 +- app/src/main/res/values-it-rIT/strings.xml | 119 --------------- app/src/main/res/values-iw-rIL/strings.xml | 10 -- app/src/main/res/values-ko-rKR/strings.xml | 18 --- app/src/main/res/values-lt-rLT/strings.xml | 131 ++--------------- app/src/main/res/values-nl-rNL/strings.xml | 119 --------------- app/src/main/res/values-pl-rPL/strings.xml | 119 --------------- app/src/main/res/values-pt-rBR/strings.xml | 25 ---- app/src/main/res/values-pt-rPT/strings.xml | 119 --------------- app/src/main/res/values-ro-rRO/strings.xml | 119 --------------- app/src/main/res/values-ru-rRU/strings.xml | 119 --------------- app/src/main/res/values-sk-rSK/strings.xml | 119 --------------- app/src/main/res/values-sl-rSI/strings.xml | 10 -- app/src/main/res/values-sv-rSE/strings.xml | 131 ++--------------- app/src/main/res/values-tr-rTR/strings.xml | 10 -- app/src/main/res/values-zh-rCN/strings.xml | 10 -- core/src/main/res/values-af-rZA/strings.xml | 1 + core/src/main/res/values-bg-rBG/strings.xml | 3 + core/src/main/res/values-cs-rCZ/strings.xml | 3 + core/src/main/res/values-de-rDE/strings.xml | 3 + core/src/main/res/values-el-rGR/strings.xml | 1 + core/src/main/res/values-es-rES/strings.xml | 37 +++++ core/src/main/res/values-fr-rFR/strings.xml | 3 + core/src/main/res/values-ga-rIE/strings.xml | 1 + core/src/main/res/values-hr-rHR/strings.xml | 1 + core/src/main/res/values-it-rIT/strings.xml | 3 + core/src/main/res/values-iw-rIL/strings.xml | 1 + core/src/main/res/values-ko-rKR/strings.xml | 1 + core/src/main/res/values-lt-rLT/strings.xml | 14 ++ core/src/main/res/values-nl-rNL/strings.xml | 1 + core/src/main/res/values-pl-rPL/strings.xml | 1 + core/src/main/res/values-pt-rBR/strings.xml | 1 + core/src/main/res/values-pt-rPT/strings.xml | 1 + core/src/main/res/values-ro-rRO/strings.xml | 1 + core/src/main/res/values-ru-rRU/strings.xml | 1 + core/src/main/res/values-sk-rSK/strings.xml | 3 + core/src/main/res/values-sl-rSI/strings.xml | 1 + core/src/main/res/values-sv-rSE/strings.xml | 16 ++ core/src/main/res/values-tr-rTR/strings.xml | 1 + core/src/main/res/values-zh-rCN/strings.xml | 1 + dana/src/main/res/values-bg-rBG/strings.xml | 1 - dana/src/main/res/values-cs-rCZ/strings.xml | 1 - dana/src/main/res/values-de-rDE/strings.xml | 1 - dana/src/main/res/values-es-rES/strings.xml | 1 - dana/src/main/res/values-fr-rFR/strings.xml | 1 - dana/src/main/res/values-it-rIT/strings.xml | 1 - dana/src/main/res/values-lt-rLT/strings.xml | 1 - dana/src/main/res/values-nl-rNL/strings.xml | 1 - dana/src/main/res/values-pl-rPL/strings.xml | 1 - dana/src/main/res/values-pt-rBR/strings.xml | 1 - dana/src/main/res/values-pt-rPT/strings.xml | 1 - dana/src/main/res/values-ro-rRO/strings.xml | 1 - dana/src/main/res/values-ru-rRU/strings.xml | 1 - dana/src/main/res/values-sk-rSK/strings.xml | 1 - dana/src/main/res/values-sv-rSE/strings.xml | 1 - .../src/main/res/values-es-rES/strings.xml | 8 + .../src/main/res/values-af-rZA/strings.xml | 6 - .../src/main/res/values-bg-rBG/strings.xml | 8 +- .../src/main/res/values-cs-rCZ/strings.xml | 8 +- .../src/main/res/values-de-rDE/strings.xml | 8 +- .../src/main/res/values-el-rGR/strings.xml | 6 - .../src/main/res/values-es-rES/strings.xml | 19 ++- .../src/main/res/values-fr-rFR/strings.xml | 8 +- .../src/main/res/values-ga-rIE/strings.xml | 4 - .../src/main/res/values-hr-rHR/strings.xml | 4 - .../src/main/res/values-it-rIT/strings.xml | 8 +- .../src/main/res/values-iw-rIL/strings.xml | 4 - .../src/main/res/values-ko-rKR/strings.xml | 6 - .../src/main/res/values-lt-rLT/strings.xml | 7 - .../src/main/res/values-nl-rNL/strings.xml | 6 - .../src/main/res/values-pl-rPL/strings.xml | 6 - .../src/main/res/values-pt-rBR/strings.xml | 6 - .../src/main/res/values-pt-rPT/strings.xml | 7 - .../src/main/res/values-ro-rRO/strings.xml | 7 - .../src/main/res/values-ru-rRU/strings.xml | 7 - .../src/main/res/values-sk-rSK/strings.xml | 8 +- .../src/main/res/values-sl-rSI/strings.xml | 4 - .../src/main/res/values-sv-rSE/strings.xml | 8 +- .../src/main/res/values-tr-rTR/strings.xml | 4 - .../src/main/res/values-zh-rCN/strings.xml | 6 - 89 files changed, 173 insertions(+), 1968 deletions(-) diff --git a/app/src/main/res/values-af-rZA/strings.xml b/app/src/main/res/values-af-rZA/strings.xml index e173ca624b..fda5ce6971 100644 --- a/app/src/main/res/values-af-rZA/strings.xml +++ b/app/src/main/res/values-af-rZA/strings.xml @@ -905,22 +905,4 @@ Bolus slimjan min - - Nooit gekontak nie - Besig om te wek - Fout met kommunikasie - Te lank op kommunikasie gewag - Pomp onbeskikbaar - Ongeldige konfigirasie - Aktief - Slaap - - - - - - - - - diff --git a/app/src/main/res/values-bg-rBG/strings.xml b/app/src/main/res/values-bg-rBG/strings.xml index 2d2597a27a..9746325667 100644 --- a/app/src/main/res/values-bg-rBG/strings.xml +++ b/app/src/main/res/values-bg-rBG/strings.xml @@ -1082,7 +1082,6 @@ Изчисти приключение Изчисти стартираните Искате ли да нулирате прогреса си? - Време и/или промяна на часовата зона на помпата Не е избрана помпа Изберете единиците, в които искате да работите Качване на локални промени в НС профила @@ -1159,7 +1158,6 @@ Удостоверяването неуспешно Абсолютен инсулин Главната парола се използва за архивиране на настройки и за подмяна на защитата в приложението. Запомни я или я пази на сигурно място. - Паролите не съвпадат Сегашна главна парола Индикатори Копиране на настройки от NS @@ -1168,123 +1166,6 @@ Бутоните винаги се показват на дъното на екрана. Голям екран Тема - - Никога не сме се свързвали - Събуждане - Грешка в комуникацията - Изтичане на времето за връзка - Помпата е недостъпна - Грешна конфигурация - Активна - Спинка си - - - Интеграция на помпата Omnipod, изисква RileyLink устройство (с фърмуер минимум 2.0 ) . - - Звук при болус активен - Звук при базал активен - Звук при SMB активен - Звук при временен базал активен - Опции за отстраняване на грешки в под активирани - Разрешено е DST/Timezone - - Под Mgmt - Статус на под - %1$.2f Е остават - Над 50 Е - Адрес на под - Срокът на пода изтича - Няма информация. - Няма активен под - Под не е инициализиран - Сигнали за активен под - Ack Предупреждения - - Omnipod (433.91 MHz) - - Забранено действие.\n\n Първо трябва да конфигурурате Omnipod , преди да използвате тази операция,. - Операцията не е възможна.\n\n Трябва да изчакате няколко минути, докато AAPS се опита да зададе профил за първи път. - Неправилен PodInitActionType: %1$s - Няма активен под. - Грешка при проверка на командата - Непредвидена грешка. Моля, докладвайте! (тип: %1$s). - Неуспешна комуникация: получени грешни входни параметри. - Връзката е неуспешна: таймаут. - Комуникацията е неуспешна: възникнала е неочаквана грешка. Моля, докладвайте! - Неуспешна комуникация: проверката на целостта на съобщението е неуспешна. - Неуспешна комуникация: получени грешни входни параметри. - Съобщението е неуспешно: Pod е в лошо състояние. - Неуспешна комуникация: получени грешни входни параметри. - Неуспешна комуникация: получи съобщение с невалиден номер на последователност от Pod. - Неуспешна комуникация: получи съобщение с невалиден номер на последователност от Pod. - Неуспешна комуникация: получени грешни входни параметри. - Комуникацията е неуспешна: nonce ресинхронизирането е неуспешно. - Комуникацията е неуспешна: nonce ресинхронизирането е неуспешно. - Комуникацията е неуспешна: няма достатъчно данни, получени от Pod. - Грешка на Pod (%1$03d %2$s). Моля, деактивирайте вашия Pod и стартирайте нов. - Комуникацията е неуспешна: Pod върна отговор с грешка. - - Управление на Pod - Инициализация на Pod - Деактивирай под - Нулиране на под - История на под - Стартирай болус - Отмяна на болус - Приложи временен базал - Отказ на базал - Отказ на базал - Задаване на график за базал - Получу статус на под - Получи информация за Pod - Задаване на час - Конфигуриране на аларми - Потвърждение на аларми - Спиране на доставката на инсулин - Подновяване на доставката - Непознат запис - %1$.1fЕ - %1$.1f U, CH=%2$.1f g - Скорост: %1$.1f U, Продължителност: %2$d мин. - Ако натиснете OK, състоянието на Pod ще бъде нулирано и няма да можете да общувате с него повече. Правете това, само ако вече не можеш да се свързвате с него. Ако все още можете да общувате с Под, моля, използвайте опцията Деактивирай Pod. - Историята на Pod не е достъпна в момента. - Напълни Pod - \nНапълнете с достатъчно инсулин за 3 дни.\n\nИзчакайте два сигнала от Pod по време на процеса на зареждане. Те показват, че е вмъкнат минималният размер от 85U. Уверете се, че сте изпразнил напълно спринцовката, дори след като сте чули двата сигнала.\n\nСлед пълнене на Pod, моля натиснете Следващ.\n\nЗабележка: не вадете капачката на капсулата на Podв този момент. - Пълнене - Опитвам се да се сдвоя с Pod.\n\nКогато всички елементи са проверени, можете да натиснете Следващ.\n\nЗабележка: задръжте Pod много близо до RileyLink в този момент. - Прикрепете Pod - \nПодгответе мястото за инфузия. Отстранете капачката на Pod и лепенката и прикрепете капсулата към мястото за инфузия.\n\nАко канюла стърчи, моля натиснете Отказ и изхвърлете вашия Pod.\n\nПрес Следваща да се вмъкне канюлата и да започне базалната доставка. - Вмъкване на канюла - Опитвам се да определя първоначалния базален график и да вмъкна канюлата.\n\nКогато всички елементи са проверени, можете да натиснете Следващ. - Информация за Pod - \Podе активна.\n\nВашият базален график е програмиран и канюлата вмъкната.\n\nМоля, проверете дали канюлата е поставена правилно или заменете Pod, ако чувствате, че не е. - Деактивирай Pod - \nНатиснете Следващ , за да деактивирате Pod.\n\nЗабележка: Това ще спре всички доставки на инсулин и деактивира Pod. - Деактивиране на Pod - Деактивиране на Pod.\n\nКогато всички елементи са проверени, можете да натиснете Следващ.\n\nЗабележка: Ако деактивирането непрекъснато се проваля, моля натиснете Отказ и използвайте опция Нулирай Pod , за да възстановите състоянието на Pod. - Pod изключен.\n\nмоля, извадете Pod от тялото си и го хвърли. - Сдвояване на под - Пълнене на под - Напълни канула - Приложи базалният профил - Отмяна - Деактивирай под - - - Интеграция на Omnipod Dash. - Край на напомняне за сдвояване - Край на напомнянето за настройка - Подът скоро ще изтече - Подът скоро ще изтече - Спирането е неизбежно - Минимален инсулин в резервоара - Непозната аларма - Задаването на базален профил може да е неуспешно. Доставката на инсулин може да бъде спряна! Моля, опреснете статуса на под. - Стартиране на временен базал неуспешно. Ако е имало вече такъв, той може да е бил отменен! Моля, обновете статуса на пода. - Задаването на време може да е неуспешно. Доставката на инсулин може да бъде спряна! Моля, опреснете статуса на под. - Не може да се провери статус на болус. Моля, уверете се, че вашият под е стартирал болус или го отменете. - Статистика на RL - Pulse лог Сравняване на профили Профил съветник Профил по подразбиране diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml index d5fece0d2b..44abc13ddf 100644 --- a/app/src/main/res/values-cs-rCZ/strings.xml +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -1082,7 +1082,6 @@ Vymazat dokončeno Vymazat start Chcete resetovat začátek cíle? Můžete přijít o svůj pokrok. - Změna času a/nebo časové zóny pumpy Nevybrána žádná pumpa Vyberte jednotky, ve kterých chcete zobrazit hodnoty Odeslat změny lokálního profilu do NS @@ -1159,7 +1158,6 @@ Autorizace selhala Absolutní inzulin Hlavní heslo se používá pro šifrování zálohy a pro \"přebití\" zabezpečení v aplikaci. Dobře si ho zapamatujte nebo uložte na bezpečném místě. - Hesla se neshodují Aktuální hlavní heslo Stavové indikátory Zkopírovat nastavení z NS @@ -1168,123 +1166,6 @@ Tlačítka jsou vždy zobrazena v dolní části obrazovky Velký displej Vzhled - - Nikdy nekontaktováno - Probouzení - Chyba komunikace - Vypršel časový limit komunikace - Pumpa nedostupná - Neplatná konfigurace - Aktivní - Spící - - - Integrace pumpy pro Omnipod, vyžaduje zařízení RileyLink (s firmwarem alespoň 2.0). - - Pípnutí při bolusu povoleno - Pípnutí při bazálu povoleno - Pípnutí při SMB povoleno - Pípnutí při TBR povoleno - Možnosti ladění podu povoleny - Letní čas / Detekce časového pásma povoleny - - Správa Podu - Stav Podu - Zbývá %1$.2f U - Více než 50 U - Adresa Podu - Expirace Podu - Žádné info - Žádný Pod není připojen - Není inicializován - Výstrahy aktivního Podu - Potrvdit upozornění - - Omnipod (433,91 MHz) - - Operace není možná.\n\nNejdříve je nutné nakonfigurovat Omnipod, než bude možné tuto funkci použít. - Operace není možná.\n\n Je třeba několik minut počkat, dokud se AAPS nepokusí poprvé nastavit profil. - Neplatný atribut PodInitActionType: %1$s - Žádný aktivní Pod. - Ověření příkazu se nezdařilo. - Došlo k neočekávané chybě. Nahlaste ji! (typ: %1$s). - Komunikace selhala: byly přijaty neplatné vstupní parametry. - Komunikace selhala: časový limit vypršel. - Komunikace se nezdařila: došlo k neočekávané chybě. Prosím nahlašte! - Komunikace selhala: ověření integrity zprávy se nezdařilo. - Komunikace selhala: byly přijaty neplatné pakety z podu. - Komunikace selhala: Pod je v chybném stavu. - Komunikace selhala: byla přijata neplatná odezva z Podu. - Komunikace selhala: od Podu byla přijata zpráva s neplatným pořadovým číslem. - Komunikace selhala: od Podu byla přijata zpráva s neplatnou adresou. - Komunikace selhala: nepodařilo se dekódovat zprávu z Podu. - Komunikace selhala: opaková synchronizace hodnoty Nonce se nezdařila. - Komunikace selhala: hodnota Nonce nebyla synchronizována. - Komunikace selhala: nedostatek dat přijatých z Podu. - Byla zjištěna chyba Podu (%1$03d %2$s). Deaktivujte Pod a spusťte nový. - Komunikace selhala: Pod vrátil chybovou odezvu. - - Správa Podu - Inicializovat Pod - Deaktivovat Pod - Resetovat Pod - Historie Podu - Nastavit bolsu - Zrušit bolus - Nastavit dočasný bazál - Zrušit dočasný bazál (interně ovladačem) - Zrušit dočasný bazál (nuceně uživatelem) - Nastavit plán bazálu - Zjistit stav Podu - Zjistit informace o Podu - Nastavit čas - Konfigurovat výstrahy - Potvrdit výstrahy - Pozastavit dodávání inzulínu - Obnovit dodávání inzulínu - Neznámá položka - %1$.1f U - %1$.1f U, Sach=%2$.1f g - Rychlost: %1$.1f U, doba trvání: %2$d min - Pokud stisknete OK, stav Podu bude vynuceně resetován a již nebudete moci komunikovat s Podem. Udělejte to pouze v případě, že s Podem již nelze komunikovat. Pokud stále můžete komunikovat s Podem, použijte volbu Deaktivovat Pod. - Historie Podu není v daném okamžiku k dispozici. - Naplňte Pod - \nNaplňte nový Pod dostatkem inzulínu na 3 dny.\n\nSledujte dvě pípnutí z Podu během procesu plnění. Tyto ukazují, že minimální množství 85U bylo naplněno. Ujistěte se, že stříkačka je zcela vyprázdněná a to i po vyslechnutí dvou pípnutí.\n\nPo naplnění Podu, prosím, stiskněte Další.\n\nPoznámka: prozatím nesundavejte kryt jehly. - Plnění - Snažím se spárovat s novým Podem a naplnit ho.\n\nJakmile budou zaškrtnuty všechny položky, můžete stisknout Další.\n\nPoznámka: ponechte prosím Pod velmi blízko RileyLinku. - Nasaďte Pod - \nPřipravte infuzní místo. Odstraňte krytku jehly a náplasti a nalepte Pod.\n\nPokud se kanyla odlepí, stiskněte Zrušit a zahoďte Pod.\n\nStiskněte Další pro vložení kanyly a spuštění bazálů. - Vkládání kanyly - Snažím se nastavit počáteční základní bazální plán a vložit kanylu.\n\nPři zaškrtnutí všech položek můžete stisknout tlačítko Další. - Pod Info - \nPod je nyní aktivní.\n\nVáš bazál byl naprogramován a kanyla byla vložena.\n\nOvěřte, prosím, že kanyla byla vložena správně a případně vyměňte Pod. - Deaktivovat Pod - \nStiskněte Další pro deaktivaci Podu.\n\nPoznámka: Zastavíte veškerý výdej inzulínu a deaktivujete Pod. - Deaktivace Podu - Deaktivace Podu.\n\nKdyž jsou zaškrtnuty všechny položky, můžete stisknout Další.\n\nPoznámka: Pokud deaktivace nepřetržitě selhává, prosím stiskněte Zrušit a použijte možnost Resetovat Pod pro resetování stavu Podu. - Pod deaktivován.\n\nOdstraňte Pod z těla a znehodnoťte jej. - Párování Podu - Plnění Podu - Plnění kanyly - Nastavit bazální profil - Zrušit podávání - Deaktivovat Pod - - - Integrace pumpy pro Omnipod Dash. - Upomínka dokončení párování - Upomínka dokončení nastavení - Životnost Podu brzy skončí - Pod brzy vyprší - Blíží se vypnutí - Nízký stav zásobníku - Neznámá výstraha - Nastavení bazálního profilu se možná nezdařilo. Výdej může být pozastaven! Obnovte prosím stav Podu. - Nastavení dočasného bazálu mohlo být neúspěšné. Pokud je dočasný bazál již spuštěn, mohl by být zrušen! Aktualizujte prosím stav Podu. - Nastavení času se možná nezdařilo. Výdej může být pozastaven! Obnovte prosím stav Podu. - Nelze ověřit, zda byl bolus úspěšný. Ověřte prosím, zda Váš Pod dodává bolus nebo ho zrušte. - Statistika RL - Pulse Log Porovnat profily Pomocník s profilem Výchozí profil diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml index 14a8b8f2a5..b804e1284c 100644 --- a/app/src/main/res/values-de-rDE/strings.xml +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -400,7 +400,7 @@ Zeige detailliertes IOB Differenziere IOB in Bolus- und Basal-IOB auf dem Watchface Nicht erfolgreich - bitte Telefon prüfen - nicht verfügbar + n/a Patientenalter Kind Teenager @@ -1083,7 +1083,6 @@ Unerwartetes Verhalten. Ziel erneut öffnen Ziel neu starten Möchtest Du den Start der Ziele zurücksetzen? Du verlierst Deine Fortschritte. - Zeit- und/oder Zeitzonenänderung an der Pumpe Keine Pumpe ausgewählt Wähle die Einheit, in der die Werte angezeigt werden sollen. Lade die Änderungen des lokalen Profils zu NS hoch. @@ -1160,7 +1159,6 @@ Unerwartetes Verhalten. Autorisierung fehlgeschlagen Gesamtinsulin Das Master-Passwort wird für die Backup-Verschlüsselung und zur Außerkraftsetzung der Sicherheit in der Anwendung verwendet. Merke es Dir oder bewahre es an einem sicheren Ort auf. - Die Passwörter stimmen nicht überein. Aktuelles Master-Passwort Statusanzeige Einstellung aus NS kopieren @@ -1169,124 +1167,6 @@ Unerwartetes Verhalten. Schaltflächen werden immer am unteren Rand des Bildschirms angezeigt Großer Bildschirm Erscheinungsbild - - Nie verbunden - Aufwecken - Fehler bei der Kommunikation - Zeitüberschreitung bei Kommunikation - Pumpe ist nicht erreichbar - Ungültige Einstellung - Aktiv - Schläft - - - Um den Omnipod nutzen zu können, brauchst Du einen RileyLink (mind. Firmware 2.0). - - Bolus-Piep aktiviert - Basal-Piep aktiviert - SMB-Piep aktiviert - TBR-Piep aktiviert - Pod-Debugging-Optionen aktiviert - Sommerzeit/Zeitzonen-Erkennung aktiviert - - Pod Mgmt - Pod Status - %1$.2f IE übrig - über 50 IE - Pod Adresse - Pod läuft ab - Keine Info - Kein Pod verbunden - Nicht initialisiert - Aktive Pod-Warnungen - Alarm bestätigen - - Omnipod (433.91 MHz) - - Aktion ist nicht möglich.\n\n Du musst zuerst den Omnipod konfigurieren, bevor Du diese Operation verwenden kannst. - Aktion ist nicht möglich.\n\n Du musst ein paar Minuten warten bis AAPS versucht, das Profil zum ersten Mal zu setzen. - Illegal PodInitActionType: %1$s - Kein aktiver Pod. - Kommandoprüfung fehlgeschlagen - Es ist ein unerwarteter Fehler aufgetreten. Bitte melden! (Typ: %1$s). - Kommunikation fehlgeschlagen: Ungültige Eingabeparameter empfangen. - Keine Verbindung: Zeitüberschreitung - Keine Verbindung: Es ist ein unerwarteter Fehler aufgetreten. Bitte melden! - Kommunikation fehlgeschlagen: Die Überprüfung der Nachrichtenintegrität ist fehlgeschlagen. - Kommunikation fehlgeschlagen: Es wurde ein ungültiges Paket vom Pod empfangen. - Kommunikation fehlgeschlagen: Der Pod befindet sich in einem falschen Status. - Kommunikation fehlgeschlagen: Es wurde eine ungültige Antwort vom Pod empfangen. - Kommunikation fehlgeschlagen: Ungültige Zeichenfolge vom Pod empfangen. - Kommunikation fehlgeschlagen: Ungültige Adresse vom Pod empfangen. - Kommunikation fehlgeschlagen: Nachricht vom Pod konnte nicht decodiert werden. - Kommunikation fehlgeschlagen: Nonce resync fehlgeschlagen. - Kommunikation fehlgeschlagen: Nonce nicht synchronisiert - Kommunikation fehlgeschlagen: Nicht genügend Daten vom Pod empfangen. - Ein Pod-Fehler (%1$03d %2$s) wurde festgestellt. Bitte deaktiviere den Pod und starte einen neuen. - Kommunikation fehlgeschlagen: Fehlerhafte Antwort vom Pod. - - Pod Management - Init Pod - Pod deaktivieren - Pod zurücksetzen - Pod Historie - Setze Bolus - Bolus abbrechen - Setze Temporäre Basalrate - Temporäre Basalrate abbrechen (intern über den Treiber) - Temporäre Basalrate abbrechen (vom Benutzer erzwungen) - Basalrate festlegen - Pod-Status abrufen - Pod-Info abrufen - Zeit einstellen - Warnungen konfigurieren - Alarme bestätigen - Abgabe abbrechen - Abgabe wieder aufnehmen - Unbekannte Eingabe - %1$.1f IE - %1$.1f IE, CH=%2$.1f g - Rate: %1$.1f IE, Dauer: %2$d min - Wenn Du OK klickst, wird die Verbindung zum Pod zwangsweise getrennt und Du wirst Dich nicht mehr mit ihm verbinden können. -Mache das nur, wenn AAPS nicht mehr mit dem Pod kommunizieren kann. Wenn dies noch geht, nutze stattdessen die Option Deaktiviere Pod. - Pod Historie derzeit nicht verfügbar. - Befülle den Pod - \nBefülle den neuen Pod mit ausreichend Insulin für 3 Tage.\n\nAchte auch zwei Pieptöne vom Pod während des Füllens. Diese zeigen an, dass der Pod mit der Mindestmenge von 85 IE befüllt wurde. Leere die Spritze komplett, auch wenn Du die beiden Pieptöne gehört hast.\n\nKlicke Weiter nachdem Du den Pod befüllt hast.\n\nHinweis: Entferne den Nadelschutz des Pods noch nicht. - Befüllen - Versuche Dich mit dem neuen Pod zu verbinden und befülle ihn.\n\nWenn alle Anzeigen angehakt sind, kannst Du Weiter klicken.\n\nHinweis: Pod und RileyLink müssen dabei sehr nah beieinander sein. - Befestige den Pod - \nBereite die Infusionsstelle vor. Entferne den Nadelschutz des Pods und die Schutzfolie über dem Kleber. Klebe dann den Pod an die gewünschte Körperstelle.\n\nFalls die Kanüle herausragt, klicke Abbrechen und verwirf den Pod.\n\nKlicke Weiter; um die Kanüle zu setzen und die Insulinabgabe zu beginnen. - Kanüle setzen - Erste Basalrate und Kanüle werden nun gesetzt.\n\nWenn alle Häkchen gesetzt sind, kannst Du Weiter klicken. - Pod Info - \nDer Pod ist jetzt aktiv.\n\nDeine Basalrate ist programmiert und die Kanüle wurde gesetzt.\n\nBitte überprüfe, ob die Kanüle korrekt gesetzt wurde und ersetze den Pod, wenn Du das Gefühl hast, dass dies nicht erfolgreich war. - Pod deaktivieren - \nDrücke Weiter um den Pod zu deaktivieren.\n\nHinweis: Dies unterbricht die gesamte Insulinabgabe und deaktiviert den Pod. - Deaktiviere den Pod - Deaktiviere den Pod.\n\nWenn alle Häkchen gesetzt sind, kannst Du Weiterdrücken.\n\nHinweis: Wenn das Deaktivieren fortwährend fehlschlägt, drücke bitte Abbrechen und verwende die Option Reset Pod, um den Pod Status zwangsweise zurückzusetzen. - Pod deaktiviert.\n\nBitte entferne den Pod von Deinem Körper und entsorge ihn. - Pod verbinden - Pod befüllen - Kanüle befüllen - Basalprofil setzen - Abgabe abbrechen - Pod deaktivieren - - - Integration für Omnipod Dash. - Erinnerung Kopplung beendet - Erinnerung Setup beendet - Pod läuft in Kürze ab - Pod läuft in Kürze ab - Herunterfahren steht unmittelbar bevor - Niedriger Reservoirstand - Unbekannter Alarm - Das Festlegen der Basalrate evtl. fehlgeschlagen. Insulinabgabe wird evtl. ausgesetzt! Aktualisiere den Pod-Status. - Das Festlegen der temporären Basalrate evtl. fehlgeschlagen. Sofern eine temporäre Basalrate bestand, wurde diese ggf. beendet! Aktualisiere den Pod-Status. - Das Festlegen der Zeit evtl. fehlgeschlagen. Insulinabgabe wird evtl. ausgesetzt! Aktualisiere den Pod-Status. - Erfolgreiche Bolusabgabe konnte nicht sicher ermittelt werden. Stelle sicher, dass der Pod Insulin abgibt oder brich den Bolus ab. - RL Stats - Pulse Log Profile vergleichen Profil-Helfer Standard-Profil diff --git a/app/src/main/res/values-el-rGR/strings.xml b/app/src/main/res/values-el-rGR/strings.xml index 3520b90a0c..cd6f51b85b 100644 --- a/app/src/main/res/values-el-rGR/strings.xml +++ b/app/src/main/res/values-el-rGR/strings.xml @@ -916,22 +916,4 @@ Οδηγός Bolus min - - Ποτέ δεν επικοινωνήσατε - Ξύπνημα - Σφάλμα με επικοινωνία - Λήξη χρόνου επικοινωνίας - Η αντλία δεν είναι διαθέσιμη - Μη έγκυρη παραμετροποίηση - Ενεργή - Sleeping - - - - - - - - - diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index ebc478e5fd..2c8af4892d 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -156,6 +156,7 @@ Basal Temporal Bolo extendido Nightscout versión: + Falta %1$d g Preferencias exportadas Exportar ajustes a Importar configuración de @@ -171,6 +172,8 @@ Se le solicitará la contraseña maestra, que es necesaria para descifrar las preferencias importadas. ¡Exportación cancelada! ¡Las preferencias NO se han exportado! ¡Importación cancelada! ¡Las preferencias NO se han importado! + ¡No se pueden importar preferencias! + Por favor, vuelve a la pantalla principal e inténtalo de nuevo. Seleccionar fichero para importar Por favor, compruebe las preferencias antes de importar: ¡Las preferencias no se pueden importar! @@ -232,6 +235,10 @@ Número mínimo de minutos que deben transcursar entre un bolus remoto y el siguiente Cuántos minutos deben transcurrir, al menos, entre un bolo y el siguiente Por su seguridad, para editar esta preferencia es necesario añadir al menos 2 números de teléfono. + Bolo %1$.2fU enviado correctamente + Entregando %1$.2f U + Bolo %1$.2fU enviado correctamente + Bolo de comida %1$.2f U entregado con éxito Objetivo %1$s para %2$d minutos Objetivo %1$s para %2$d minutos establecido correctamente Objetivo temporal cancelado con éxito @@ -264,6 +271,7 @@ Para desactivar el lazo responder con código %1$s Basal temporal %1$.2fU/h para %2$d min iniciada correctamente Bolo ampliado de %1$.2fU durante %2$d min se inició correctamente + Carbohidratos %1$d g ingresados correctamente Error al introducir %1$dg de carbohidratos Basal temporal de %1$d%% durante %2$d min iniciada correctamente Fallo inicio basal temporal @@ -637,6 +645,7 @@ Habilitar SMB con Objetivos Temporales Habilitar SMB cuando hay un Objetivo Temporal (TT) activo (ComerPronto, Actividad) Habilitar SMB con Objetivo Temporal Alto + Habilitar SMB cuando hay un objetivo temporal alto activo (ejercicio, superior a 100 mg/dl o 5.5 mmol/l) Insulina Carbohidratos Botones @@ -670,6 +679,7 @@ No administrar Bolo, solo anotar Categoría Subcategoría + Bolo sólo se registrará (no será entregado por la bomba) Rellenar BGs perdidos desde NS SMB administrado por bomba Actividad @@ -786,6 +796,7 @@ Pedir permiso La aplicación necesita permiso de ventana del sistema para las notificaciones La aplicación necesita permiso de ubicación para la exploración de BT e identificación de WiFi + La aplicación necesita permiso de almacenamiento para poder almacenar archivos de registro y valores de exportación Solicitar Configurar complemento de insulina Salir @@ -841,6 +852,7 @@ ¿Coinciden los códigos mostrados en este dispositivo y en su infusor? Insight sincronizada Accu-Chek Insight + %1$.2f U / %2$.2f U entregado %1$s: %2$s Tubo cambiado Hora del infusor actualizada @@ -898,6 +910,7 @@ Multionda: %1$.2f / %2$.2f U durante %3$d min Multionda: %1$.2f / %2$.2f U durante %3$d min TDD: %1$.2f + Reser.: %1$.2f U Batería.: %1$d%% Max. duración de recuperación [s] Min. duración de recuperación [s] @@ -1040,6 +1053,7 @@ Enviar a %1$s Enviar SMS a todos los números Mandar mensaje SMS + COB vs IOB ! Se ha detectado una absorción lenta de hidratos de carbono: %2$d%% de tiempo. Compruebe de nuevo su calculo. Los COB se pueden sobrestimar, por lo que ¡se podría administrar más insulina de la cuenta!]]> Administrar esta parte del resultado del asistente de bolos [%] El asistente de bolos realiza el cálculo, pero solo se entrega esta parte de la insulina calculada. Útil con el algoritmo SMB. @@ -1065,7 +1079,6 @@ Limpieza finalizada Limpieza iniciada ¿Desea reiniciar el objetivo? Puedes perder tu progreso. - Cambio de hora y/o huso horario en la bomba Ninguna bomba seleccionada Seleccione las unidades en las que desea visualizar los valores Subir cambios de perfil local a NS @@ -1090,6 +1103,7 @@ Encuesta Entrada de edad no válida Peso no válido + Entrada % invalida %1$s: Low: %2$02d%% In: %3$02d%% High: %4$02d%%]]> Promedio TIR @@ -1141,7 +1155,6 @@ Ha fallado la autorización Insulina en total La contraseña maestra se usa para cifrar la copia de seguridad y para sustituir la seguridad en la aplicación. Recordar o almacenar en sitio seguro. - Contraseñas no coinciden Contraseña maestra actual Luces de estado Copiar ajustes de NS @@ -1150,128 +1163,15 @@ Los botones siempre se muestran en la parte inferior de la pantalla Pantalla grande Tema - - Nunca conectados - En fase de inicio - Error con la comunicación - Tiempo de espera en la comunicación - Infusora no alcanzable - Configuración no válida - Activo - Suspendida - - - La integración de la bomba para Omnipod requiere el dispositivo RileyLink (con al menos 2,0 firmware). - - Aviso de bolo activado - Aviso de basal activado - Aviso de SMB activado - Aviso de TBT activado - Opciones de depuración de Pod habilitadas - Detección de DST/Timezone habilitada - - Pod Mgmt - Estado de Pod - %1$.2f U restantes - Más De 50 U - Dirección de Pod - Pod Caduca - Sin info - Sin Pod conectado - No Inicializado - Alertas de Pod activas - Alertas Ack - - Omnipod (433.91 MHz) - - La operación no es posible.\n\nDebe configurar Omnipod primero, antes de poder usar esta operación. - La operación no es posible.\n\n Necesitas esperar unos minutos, hasta que AAPS intente establecer el perfil por primera vez. - Ilegal PodInitActionType: %1$s - Ningún pod activo. - Falló la verificación del comando. - Error inesperado. Por favor, informe! (tipo: %1$s). - Comunicación fallida: se han recibido parámetros de entrada inválidos. - Comunicación fallida: tiempo de espera. - La comunicación ha fallado: error inesperado. ¡Por favor, Informe! - Comunicación fallida: falló la verificación de integridad del mensaje. - La comunicación ha fallado: se ha recibido un paquete no válido del Pod. - La comunicación ha fallado: el Pod está en un estado incorrecto. - La comunicación ha fallado: se ha recibido una respuesta no válida del Pod. - Ha fallado la comunicación: se ha recibido un mensaje con un número de secuencia no válido del Pod. - La comunicación ha fallado: se ha recibido un mensaje con una dirección no válida desde el Pod. - La comunicación ha fallado: no se ha podido descodificar el mensaje del Pod. - La comunicación ha fallado: nonce resync ha fallado. - Comunicación fallida: nonce no sincronizada. - La comunicación ha fallado: no se han recibido suficientes datos del Pod. - Un error de Pod (%1$03d %2$s) se ha detectado. Por favor, desactive su Pod e inicie uno nuevo. - La comunicación ha fallado: el Pod ha devuelto una respuesta de error. - - Administración de Pod - Iniciar Pod - Desactivar Pod - Restablecer Pod - Historial de Pod - Establecer Bolo - Cancelar Bolus - Establecer la basal temporal - Cancelar Basal Temporal (Internamente por controlador) - Cancelar Basal Temporal (forzado por el usuario) - Establecer Planificación Basal - Obtener estado de Pod - Obtener información de Pod - Establecer hora - Configurar alertas - Confirmar Alertas - Suspender la entrega - Reanudar la entrega - Entrada desconocida - %1$.1fU - %1$.1f U, CH=%2$.1f g - Tasa: %1$.1f U, Duración: %2$d min - Si pulsa OK, el estado de Pod se restablecerá por la fuerza y ya no podrá comunicarse con el Pod. Hágalo sólo si ya no puede comunicarse con el Pod. Si todavía puede comunicarse con el Pod, utilice la opción Desactivar Pod. - Historial del Pod no disponible en el momento. - Llenar el Pod - \nLlenar el nuevo Pod con suficiente insulina durante 3 días.\n\nEscucha dos pitidos del Pod durante el proceso de llenado. Esto indica que se ha insertado la cantidad mínima de 85U. Asegúrese de vaciar completamente la jeringa, incluso después de escuchar los dos pitidos.\n\nDespués de llenar el Pod, por favor pulse Next.\n\nNota: no retire el capuchón de la aguja del Pod en este momento. - Cebado - Intentando emparejar con el nuevo Pod y primarlo.\n\nCuando todos los elementos están marcados, puedes pulsar Siguiente.\n\nNota: por favor mantenga el Pod muy cerca del RileyLink en este momento. - Adherir el Pod - \nPreparar el sitio de infusión. Retire el capuchón de la aguja del Pod y el adhesivo y aplique el Pod al sitio de perfusión.\n\nSi la cánula se queda fuera, por favor presione Cancel y descarte su Pod.\n\nPress Next para insertar la cánula y comenzar la entrega basal. - Insertar cánula - Intentando establecer la programación basal inicial e insertar la cánula.\n\nCuando todos los elementos están marcados, puede pulsar Siguiente. - Pod Info - \nEl Pod ahora está activo.\n\nSu horario basal ha sido programado y la cánula ha sido insertada.\n\nPor favor, verifique que la cánula ha sido insertada correctamente y reemplace su Pod si usted siente que no lo ha hecho. - Desactivar Pod - \nPulsa Siguiente para desactivar el Pod.\n\nNota: Esto suspenderá toda la entrega insulina y desactivará el Pod. - Desactivando el Pod - Desactivando el Pod.\n\nCuando se comprueban todos los elementos, puede pulsar Next.\n\nNota: Si la desactivación falla, por favor pulse Cancelar y utilice la opción Restablecer Pod para restablecer por la fuerza el estado de Pod. - Pod desactivado.\n\nPor favor, retire el Pod de su cuerpo y desecharlo. - Emparejar Pod - Llenado de cánula del Pod - Llenar cánula - Establecer el perfil basal - Cancelar entrega - Desactivar Pod - - - Integración de la bomba para Omnipod Dash. - Finalizar recordatorio de emparejamiento - Recordatorio de configuración finalizado - Pod a punto de caducar - Pod a punto de caducar - El apagado es inminente - Reservorio bajo - Alerta desconocida - La configuración del perfil basal podría haber fallado. ¡La entrega podría ser suspendida! Por favor, actualiza el estado de Pod. - La configuración de basal temporal podría haber fallado. Si ya se está ejecutando una basal temporal, ¡puede que haya sido cancelada! Por favor, actualice el estado del pod. - Ajuste de la hora puede ser que haya fallado. La entrega puede ser suspendido! Por favor, actualizar estado de Pod. - No se puede verificar si el bolo ha sido exitoso. Por favor verifique que su Pod está poniendo bolo o cancele el bolo. - Estadísticas del RL - Registro de pulso Comparar perfiles Asistente de perfil + Perfil predeterminado Perfil actual Perfil disponible Tipo de perfil Edad: %1$.0f TDD: %2$.0f U + Edad: %1$.0f TDD: %2$.0f U %3$d%% Edad: %1$.0f Peso: %2$.0f kg + % de basal + Perfil DPV por defecto diff --git a/app/src/main/res/values-fr-rFR/strings.xml b/app/src/main/res/values-fr-rFR/strings.xml index 837a357cde..11a9776ae9 100644 --- a/app/src/main/res/values-fr-rFR/strings.xml +++ b/app/src/main/res/values-fr-rFR/strings.xml @@ -1083,7 +1083,6 @@ L\'ENSEMBLE DES RISQUES LIÉS À LA QUALITÉ ET À LA PERFORMANCE DU PROGRAMME S Refaire l\'objectif Suppression démarrée Voulez-vous réinitialiser le début de l\'objectif ? Vous risquez de perdre vos progrès. - Heure et/ou fuseau horaire changé sur la pompe Aucune pompe sélectionnée Sélectionnez les unités dans lesquelles vous souhaitez afficher les valeurs Remonter les modifications de profil local dans NS @@ -1160,7 +1159,6 @@ L\'ENSEMBLE DES RISQUES LIÉS À LA QUALITÉ ET À LA PERFORMANCE DU PROGRAMME S Echec de l\'authentification Insuline absolue Le mot de passe principal est utilisé pour crypter les sauvegardes et superviser la sécurité de l\'application. Rappelez-vous en ou stockez le en lieu sûr. - Les mots de passe ne correspondent pas Mot de passe principal actuel Voyants d\'état Copier les paramètres depuis NS @@ -1169,123 +1167,6 @@ L\'ENSEMBLE DES RISQUES LIÉS À LA QUALITÉ ET À LA PERFORMANCE DU PROGRAMME S Les boutons sont toujours affichés en bas de l\'écran Grand écran Thème - - Jamais contacté - Réveil en cours - Erreur de communication - Expiration du délai d\'attente en communication - Pompe hors de portée - Configuration non valable - Activé - En veille - - - L\'intégration de la pompe Omnipod nécessite un boitier RileyLink (avec au minimum un firmware 2.0). - - Bip Bolus Activé - Bip Basal Activé - Bip SMB activé - Bip DBT Activé - Options de débogage Pod activées - Changement de Zone/Heure Activé - - Pod - État du Pod - %1$.2f U restantes - Plus de 50 U - Adresse du Pod - Pod Expiré - Pas d\'infos - Pas de Pod Connecté - Non initialisé - Activer Alertes Pod - Valid Alert - - Omnipod (433.91 MHz) - - Operation impossible.\n\nVous devez d\'abord configurer l\'Omnipod pour pouvoir faire cette operation. - Operation impossible.\n\nVous devez attendre quelques minutes, jusqu\'à ce que AAPS tente de définir le profil pour la première fois. - type d\'action d\'init Pod non autorisée : %1$s - Pas de Pod Actif. - Échec de vérification de la commande. - Erreur inconnue. Veuillez signaler ! (type : %1$s). - Échec de communication : paramètres d\'entrées reçus invalides. - Échec de communication : délai expiré. - Échec de communication : Erreur inconnue. Veuillez signaler ! - Échec de communication : vérification de l\'intégrité du message échouée. - Échec de communication : paquet reçu du Pod invalide. - Échec de communication : état du Pod incorrect. - Échec de communication : réponse invalide reçue du Pod. - Échec de communication : message reçu du Pod avec un numéro de séquence invalide. - Échec de communication : message reçu du Pod avec une adresse invalide. - Échec de communication : échec du décodage du message reçu du Pod. - Échec de communication : resynchro nonce échouée. - Échec de communication : nonce non synchro. - Échec de communication : pas assez de données reçues du Pod. - Un défaut du Pod a été détecté (%1$03d %2$s). Veuillez désactiver votre Pod et en démarrer un nouveau. - Échec de communication : le Pod a renvoyé un message d\'erreur. - - Gestion Pod - Init Pod - Désactiver Pod - Réinit. Pod - Historique Pod - Définir Bolus - Annuler Bolus - Définir le Basal Temporaire - Basal Temp Annulée (en interne par le pilote) - Basal Temp Annulée (par l\'utilisateur) - Définir le schéma de basal - État du Pod - Infos du Pod - Régler L\'heure - Configurer les alertes - Valider les Alertes - Suspendre l\'injection - Pousuivre l\'injection - Entrée inconnue - %1$.1f U - %1$.1f U, Gluc=%2$.1f g - Débit : %1$.1f U, Durée : %2$d min - Si vous appuyez sur OK, le Pod sera réinitialisé et vous ne pourrez plus communiquer avec lui. Ne le faite que si vous ne pouvez plus communiquer avec le Pod. Si vous pouvez toujours communiquer avec lui, veuillez utiliser l\'option Désactiver Pod. - Historique Pod non disponible pour le moment. - Remplir le Pod - \nRemplir le nouveau Pod avec suffisamment d\'insuline pendant 3 jours.\n\nÉcoutez les deux bips du Pod pendant le processus de remplissage. Ils indiquent que la quantité minimale de 85U a été ajouté. Assurez-vous de vider complètement la seringue de remplissage, même après avoir entendu les deux bips.\n\nAprès avoir rempli le Pod, veuillez appuyer sur Suivant.\n\nRemarque : Ne retirez pas la protection de l\'aiguille du Pod pour le moment. - Amorçage - Tentative d\'appairage et d\'amorçage du nouveau Pod.\n\nQuand tous les items sont cochées, appuyez sur Suivant.\n\nRemarque : Veuillez maintenir le Pod tout près du RileyLink en ce moment. - Collez le Pod - \nPréparez le site d\'injection. Enlevez la protection de l\'aiguille et le support adhésif et collez le Pod sur le site d\'injection.\n\nSi la canule se colle, appuyez sur Annuler et jetez votre Pod.\n\nAppuyez sur Suivant pour insérer la canule et démarrer l\'injection de la basal. - Insertion canule - Tentative de définir le schéma de basal et d\'insertion de la canule.\n\nQuand tous les items sont cochés, appuyez sur Suivant. - Infos Pod - \nLe Pod est maintenant actif.\n\nVos débits de basal ont été programmés et la canule a été insérée.\n\nVeuillez verifier que la canule a été insérée correctement et remplacez votre Pod si vous pensez que ce n\'est pas le cas. - Désactiver Pod - \nAppuyez sur Suivant pour désactiver le Pod.\n\nRemarque : Cela suspendra l\'injection de l\'insuline et désactivera le Pod. - Désactivation du Pod - Désactivation du Pod.\n\nQuand tous les items sont cochés, appuyez sur Suivant.\n\nRemarque : Si la désactivation échoue en permanence, appuyez sur Annuler et utilisez l\'option Réinit. Pod pour réinitialiser l\'état du Pod. - Pod désactivé.\n\nVeuillez enlever le Pod de votre corps et le jeter. - Appairer le Pod - Amorcer le Pod - Remplir tubulure - Définir profil de basal - Annuler l\'injection - Désactiver Pod - - - Intégration de la pompe Omnipod Dash. - Rappel fin d\'appairage - Rappel fin de configuration - Le Pod expire bientôt - Le Pod expire bientôt - Arrêt imminent - Réservoir bas - Alerte inconnue - Le paramétrage du profil basal a peut-être échoué. L\'injection pourrait être suspendue ! Veuillez actualiser l\'état du pod. - Le réglage de la basal temp a peut-être échoué. S\'il y avait déjà un DBT en cours, cela a peut-être été annulé ! Veuillez actualiser le statut du pod. - Le paramétrage de l\'heure a peut-être échoué. L\'injection pourrait être suspendue ! Veuillez actualiser l\'état du pod. - Impossible de vérifier si le bolus a réussi. Vérifiez que votre Pod délivre le bolus ou annulez le bolus. - État RL - Enreg. Pulse Comparer les profils Assistant Profil Profil par défaut diff --git a/app/src/main/res/values-ga-rIE/strings.xml b/app/src/main/res/values-ga-rIE/strings.xml index 94dbab337b..8f12c9934a 100644 --- a/app/src/main/res/values-ga-rIE/strings.xml +++ b/app/src/main/res/values-ga-rIE/strings.xml @@ -17,14 +17,4 @@ PBAGE OAPS - - - - - - - - - - diff --git a/app/src/main/res/values-hr-rHR/strings.xml b/app/src/main/res/values-hr-rHR/strings.xml index 2578fce6a9..1ce4989b86 100644 --- a/app/src/main/res/values-hr-rHR/strings.xml +++ b/app/src/main/res/values-hr-rHR/strings.xml @@ -5,14 +5,4 @@ - - - - - - - - - - diff --git a/app/src/main/res/values-it-rIT/objectives.xml b/app/src/main/res/values-it-rIT/objectives.xml index ba4a3d013f..1eb4e508a1 100644 --- a/app/src/main/res/values-it-rIT/objectives.xml +++ b/app/src/main/res/values-it-rIT/objectives.xml @@ -44,7 +44,7 @@ Dai prova della tua conoscenza Studia e rispondi correttamente alle domande Risposta disabilitata fino a: %1$s - Risposta sbagliata! + Risposta errata! Prossimo N.C. Codice richiesta: %1$s (segna tutte le risposte corrette) diff --git a/app/src/main/res/values-it-rIT/strings.xml b/app/src/main/res/values-it-rIT/strings.xml index fb761cdf60..d687c57827 100644 --- a/app/src/main/res/values-it-rIT/strings.xml +++ b/app/src/main/res/values-it-rIT/strings.xml @@ -1082,7 +1082,6 @@ Cancella completamento Cancella avvio Vuoi resettare l\'avvio dell\'obiettivo? Potresti perdere i tuoi progressi. - Cambio di ora e/o fuso orario sul micro Nessun micro selezionato Seleziona le unità in cui vuoi visualizzare i valori Carica modifiche al profilo locale in NS @@ -1159,7 +1158,6 @@ Autorizzazione fallita Insulina assoluta La password master viene utilizzata per la crittografia del backup e per gestire la sicurezza nell\'applicazione. Ricordala o conservala in un luogo sicuro. - Le password non coincidono Password Master corrente Indicatori di stato Copia impostazioni da NS @@ -1168,123 +1166,6 @@ I tasti vengono sempre visualizzati nella parte inferiore dello schermo Visualizzazione ampia Tema - - Mai connesso - Risveglio - Errore nella comunicazione - Timeout della comunicazione - Micro irraggiungibile - Configurazione non valida - Attivo - In sospensione - - - Integrazione del microinfusore Omnipod, richiede un dispositivo RileyLink (con almeno il firmware 2.0). - - BIP bolo abilitato - BIP basale abilitato - BIP SMB abilitato - BIP TBR abilitato - Opzioni debug pod abilitate - Rilevamento ora legale/fuso orario abilitato - - GSTN pod - Stato pod - %1$.2f U rimanenti - Oltre 50 U - Indirizzo pod - Scadenza pod - No info - Nessun pod connesso - Non inizializzato - Attiva avvisi pod - Conferma avvisi - - Omnipod (433.91 MHz) - - Operazione non possibile.\n\nDevi prima configurare Omnipod. - Operazione non possibile.\n\n Devi attendere qualche minuto che AAPS imposti il profilo per la prima volta. - Illegal PodInitActionType: %1$s - Nessun pod attivo. - Verifica comando fallita. - Si è verificato un errore imprevisto. Segnalalo! (%1$s). - Comunicazione fallita: ricevuti parametri di input non validi. - Comunicazione fallita: timeout. - Comunicazione fallita: si è verificato un errore imprevisto. Segnalalo! - Comunicazione fallita: verifica dell\'integrità del messaggio fallita. - Comunicazione fallita: ricevuto un pacchetto non valido dal pod. - Comunicazione fallita: il pod è in uno stato non corretto. - Comunicazione fallita: ricevuta una risposta non valida dal pod. - Comunicazione fallita: ricevuto dal pod un messaggio con una sequenza numerica non valida. - Comunicazione fallita: ricevuto dal pod un messaggio con un indirizzo non valido. - Comunicazione fallita: non si è riuscito a decodificare il messaggio dal pod. - Comunicazione fallita: risincronizzazione \'nonce\' non riuscita. - Comunicazione fallita: \'nonce\' non sincronizzato. - Comunicazione fallita: non abbastanza dati ricevuti dal pod. - È stato rilevato un guasto al pod (%1$03d %2$s). Disattiva il tuo pod e avviane uno nuovo. - Comunicazione fallita: il pod ha restituito una risposta di errore. - - Gestione pod - Inizializza pod - Disattiva pod - Resetta pod - Storico pod - Imposta bolo - Cancella bolo - Imposta basale temporanea - Cancella basale temporanea (internamente dal driver) - Cancella basale temporanea (forzato da utente) - Imposta piano basale - Ottieni stato pod - Ottieni info pod - Imposta ora - Configurazione avvisi - Conferma avvisi - Sospendi erogazione - Riprendi erogazione - Inserimento sconosciuto - %1$.1f U - %1$.1f U, CH=%2$.1f g - Tasso: %1$.1f U, Durata: %2$d min - Se premi OK, lo stato del pod verrà resettato forzatamente e non potrai più comunicare con il pod. Fallo solo se non riesci più a comunicare con il pod. Se puoi ancora a comunicare con il pod, utilizza l\'opzione Disattiva pod . - Storico pod non disponibile al momento. - Riempi il pod - \nRiempi il nuovo pod con abbastanza insulina per 3 giorni.\n\nResta in ascolto di due bip dal pod durante il processo di riempimento. Questi indicano che è stata inserita la quantità minima di 85U. Assicurati di svuotare completamente la siringa di riempimento, anche dopo aver sentito i due segnali acustici.\n\nDopo il riempimento del pod, premi Avanti.\n\nNota: non rimuovere la protezione dell\'ago del pod in questo momento. - Caricamento - Prova associazione nuovo pod e caricamento.\n\nQuando tutti gli elementi sono stati controllati, puoi premere Avanti.\n\nNota: mantieni il pod molto vicino al RileyLink in questo momento. - Collega il pod - \nPrepara il sito di infusione. Rimuovi la protezione dell\'ago del pod e il supporto adesivo e attacca il pod al sito di infusione.\n\nSe la cannula fuoriesce premi Annulla e cambia il tuo pod.\n\nPremi Avanti per inserire la cannula e iniziare l\'erogazione della basale. - Inserimento cannula - Prova impostazione piano basale iniziale e inserimento cannula.\n\nQuando tutti gli elementi sono stati controllati, puoi premere Avanti. - Info pod - \nIl pod è adesso attivo.\n\nIl tuo piano basale è stato programmato e la cannula è stata inserita.\n\nVerifica che la cannula sia stata inserita correttamente e sostituisci il tuo pod se avverti il contrario. - Disattiva pod - \nPremi Avanti per disattivare il pod.\n\nNota: Questo sospenderà tutta l\'erogazione di insulina e disattiverà il pod. - Disattivazione del pod - Disattivazione del pod.\n\nQuando tutti gli elementi sono stati controllati, puoi premere Avanti.\n\nNota: Se la disattivazione fallisce continuamente, premi Annulla e usa l\'opzione Resetta pod per resettare forzatamente lo stato del pod. - Pod disattivato.\n\nRimuovi il pod dal tuo corpo e gettalo. - Associa pod - Carica pod - Riempi cannula - Imposta profilo basale - Cancella erogazione - Disattiva pod - - - Integrazione del microinfusore Omnipod Dash. - Fine promemoria associazione - Fine promemoria configurazione - Il pod scadrà presto - Il pod scadrà presto - L\'arresto è imminente - Livello serbatoio basso - Avviso sconosciuto - L\'impostazione del profilo basale potrebbe essere fallita. L\'erogazione potrebbe essere sospesa! Ricarica lo stato del pod. - L\'impostazione della basale temporanea potrebbe essere fallita. Se era già in esecuzione una basale temporanea, questa potrebbe essere stata cancellata! Ricarica lo stato del pod. - L\'impostazione dell\'ora potrebbe essere fallita. L\'erogazione potrebbe essere sospesa! Ricarica lo stato del pod. - Impossibile verificare che il bolo sia riuscito. Verifica che il tuo pod stia erogando il bolo oppure cancellalo. - Statistiche RL - Log impulsi Compara profili Assistente profilo Profilo predefinito diff --git a/app/src/main/res/values-iw-rIL/strings.xml b/app/src/main/res/values-iw-rIL/strings.xml index d887a2593b..76002e60dc 100644 --- a/app/src/main/res/values-iw-rIL/strings.xml +++ b/app/src/main/res/values-iw-rIL/strings.xml @@ -12,14 +12,4 @@ מסנכרן את הנתונים שלך עם Nightscout יבא פרופיל מ- Nightscout - - - - - - - - - - diff --git a/app/src/main/res/values-ko-rKR/strings.xml b/app/src/main/res/values-ko-rKR/strings.xml index d01047143b..afbaedee45 100644 --- a/app/src/main/res/values-ko-rKR/strings.xml +++ b/app/src/main/res/values-ko-rKR/strings.xml @@ -1005,22 +1005,4 @@ 임시 Basal 요청시간 임시 Basal 실행시간 - - 연결되지 않은 - 시작중 - 연결오류 - 연결시간초과 - 펌프에 연결할 수 없습니다 - 유효하지 않은 설정 - 활성 - 대기 - - - - - - - - - diff --git a/app/src/main/res/values-lt-rLT/strings.xml b/app/src/main/res/values-lt-rLT/strings.xml index 026c0433f1..8470cd44ab 100644 --- a/app/src/main/res/values-lt-rLT/strings.xml +++ b/app/src/main/res/values-lt-rLT/strings.xml @@ -156,6 +156,7 @@ Laikina bazė Ištęstas bolusas Nightscout versija: + Trūksta %1$d g Nustatymai eksportuoti Eksportuoti nustatymus Importuoti nustatymus iš @@ -234,6 +235,10 @@ Minimalus minučių skaičius, kuris turi praeiti nuo vieno boluso, suleisto nuotoliniu būdu iki kito Kiek mažiausiai minučių turi praeiti tarp vieno ir kito boluso Jūsų saugumui, norėdami redaguoti šį pasirinkimą, jums reikia pridėti ne mažiau kaip 2 telefono numerius. + %1$.2f vv bolusas sėkmingai suleistas + Bus suleista %1$.2f vv + %1$.2f vv bolusas sėkmingai suleistas + Bolusas %1$.2f vv sėkmingai suleistas Tikslas %1$s %2$d min. Tikslas %1$s %2$d min. nustatytas sėkmingai Laikinas tikslas atšauktas sėkmingai @@ -257,7 +262,9 @@ Pompa prijungta Nuotolinis valdymas negalimas Nuotolinis bolusas negalimas. Bandykite vėliau. + Norėdami aktyvuoti %1$.2f vv/val bazę, kurios trukmė %2$d min, atsakykite kodu %3$s Norėdami perjungti profilį %1$s %2$d%%, atsakykite kodu %3$s + Norint pradėti ištęstinį bolusą %1$.2f vv %2$d min., atsakykite kodu %3$s Įvedimui %1$dg %2$s atsakykite kodu %3$s Norėdami aktyvuoti %1$d%% bazę %2$d min., atsakykite kodu %3$s Norėdami sustabdyti Ciklą %1$d min., atsakykite kodu %2$s @@ -266,6 +273,7 @@ Ciklo išjungimui atsakykite su kodu %1$s %1$.2f vv/val laikina bazė, kurios trukmė %2$d min., aktyvuota sėkmingai %1$.2f vv ištęstas bolusas, kurio trukmė %2$d min., aktyvuotas sėkmingai + %1$d g angliavandenių įrašyti sėkmingai Įvesti %1$dg angliavandenių nepavyko %1$d%% laikina bazė, kurios trukmė %2$d min., aktyvuota sėkmingai Laikina bazė neaktyvuota @@ -846,6 +854,7 @@ Ar kodas, kurį matote įrenginyje, sutampa su pompos kodu? Insight sujungimas Accu-Chek Insight + %1$.2f vv iš %2$.2f vv suleista %1$s: %2$s Kateteris pakeistas Pompos laikas pakeistas @@ -903,6 +912,7 @@ Ištęstas: %1$.2f / %2$.2f V %3$d min Daugiabangis: %1$.2f / %2$.2f vv %3$d min BPD: %1$.2f + Rez.: %1$.2f vv Bat.: %1$d%% Didž. atkūrimo trukmė [s] Min. atkūrimo trukmė [s] @@ -1045,6 +1055,8 @@ Siųsti SMS: %1$s Siųsti SMS į visus numerius Išsiųsti SMS žinutę su tekstu + AAO prieš AIO + Pritaikytas boluso apribojimas: %1$.2f vv iki %2$.2f vv !!!!! Nustatytas lėtas angliavandenių įsisavinimas: %2$d%% laiko. Dar karą patikrinkite savo skaičiavimus. AAO gali būti pervertinti, todėl gali būti suleista per daug insulino!!!!!]]> Suleisti šią boluso skaičiuoklės rezultato dalį [%] Boluso skaičiuoklė atlieka skaičiavimus, tačiau tik dalis apskaičiuoto insulino yra suleidžiama. Naudinga kartu su SMB algoritmu. @@ -1070,7 +1082,6 @@ Išvalyti užbaigtus Išvalyti pradėtus Ar norite iš naujo nustatyti tikslų pradžią? Jūs galite prarasti jau pasiektus. - Laiko ir/ar laiko zonos pakeitimas pompoje Pompa nepasirinkta Pasirinkite vienetus, kurių vertes norite parodyti Įkelti vietinio profilio pakeitimus į NS @@ -1147,7 +1158,6 @@ Autorizacija nepavyko Insulinas absoliučiais vienetais Pagrindinis slaptažodis naudojamas atsarginiam šifravimui ir programos saugumo ignoravimui. Atsiminkite jį arba laikykite užsirašę saugioje vietoje. - Slaptažodžiai nesutampa Dabartinis pagrindinis slaptažodis Būklės indikatoriai Kopijuoti nustatymus iš NS @@ -1156,123 +1166,6 @@ Mygtukai visada rodomi ekrano apačioje Didelis ekranas Išvaizda - - Niekada nebuvo sujungta - Pažadinimas - Ryšio klaida - Ryšiui skirtas laikas baigėsi - Pompa nepasiekiama - Neteisinga konfigūracija - Aktyvi - Užmigusi - - - Omnipod pompos integracijai reikalingas RileyLink (programinės įrangos versija ne mažiau 2.0). - - Boluso signalas įjungtas - Bazės signalas įjungtas - SMB signalas įjungtas - Laikinos bazės signalas įjungtas - Įgalintos POD derinimo galimybės - Vasaros laiko/laiko juostos aptikimas įgalintas - - POD valdymas - POD būklė - liko %1$.2f U - Daugiau nei 50 U - POD adresas - POD laikas pasibaigs - Nėra informacijos - POD neprijungta - Nepavyko paleisti - Aktyvaus POD signalai - Priimti pranešimus - - Omnipod (433.91 MHz) - - Operacija negalima.\n\n Pirmiausia turite sukonfigūruoti Omnipod pompą prieš atliekant šią operaciją. - Operacija negalima.\n\n Jūs turite palaukti kelias minutes, kol AAPS bando nustatyti profilį pirmą kartą. - Neteisingas inicijavimo tipas:%1$s - Nėra aktyvaus POD. - Komandos patikra nepavyko. - Įvyko netikėta klaida. Prašome pranešti! (tipas: %1$s). - Ryšio klaida: gauti neteisingi įvesties parametrai. - Ryšio klaida: skirtas laikas baigėsi. - Ryšio klaida: įvyko netikėta klaida. Prašome pranešti! - Ryšio klaida: pranešimo vientisumo patikra nepavyko. - Ryšio klaida: netinkami įvesties iš POD parametrai. - Ryšio klaida: Pod būklė yra netinkama. - Ryšio klaida: gautas netinkamas atsakymas iš POD. - Ryšio klaida: iš POD gautas pranešimas su negaliojančiu serijos numeriu. - Ryšio klaida: iš POD gautas pranešimas su netinkamu adresu. - Ryšio klaida: nepavyko iššifruoti pranešimo iš POD. - Ryšio klaida: nepavyko iš naujo sinchronizuoti Nonce. - Ryšio klaida: Nonce nebuvo sinchronizuota. - Ryšio klaida: nepakankamai duomenų gauta iš POD. - Aptikta POD klaida (%1$03d %2$s). Išjunkite POD ir pradėkite naują. - Ryšio klaida: POD pateikė klaidos atsakymą. - - POD valdymas - Inicijuoti POD - Išjungti POD - Atstatyti POD - POD istorija - Nustatyti bolusą - Atšaukti bolusą - Nustatyti laikiną bazę - Atšaukti laikiną bazę (vidinis valdiklis) - Atšaukti laikiną bazę (Inicijuota vartotojo) - Nustatyti bazės tvarkaraštį - Gauti POD būklę - Gauti POD informaciją - Nustatyti laiką - Konfigūruoti perspėjimus - Patvirtinti perspėjimus - Sustabdyti suleidimą - Atnaujinti suleidimą - Nežinomas Įrašas - %1$.1f vv - %1$.1f vv, AV=%2$.1f g - Kiekis: %1$.1f vv, Trukmė: %2$d min - Jei spustelėsite OK, ryšys su POD bus priverstinai nutrauktas ir nebegalėsite prie jo prisijungti. Atlikite tai tik tada, kai AAPS nebegali bendrauti su POD. Jei ryšys su POD vis tiek veikia, naudokite parinktį Išjungti POD. - POD istorija šiuo metu nėra prieinama. - Užpildyti POD - \nUžpildykite naują POD insulinu, kurio pakaktų 3 dienas.\n\nTaip pat atkreipkite dėmesį į du pyptelėjimus iš POD, kai pildote. Tai rodo, kad rezervuaras buvo užpildytas mažiausiai 85vv. Visiškai ištuštinkite švirkštą, net jei girdėjote du pyptelėjimus.\n\nUžpildę POD, spustelėkite Kitas.\n\n Pastaba: vykdant šiuos veiksmus, nenuimkite POD adatos apsauginio dangtelio. - Užpildymas - Pabandykite suporuoti naują POD ir užpildykite jį.\n\nKai pažymėti visi elemetai, galite spustelėti Kitas.\n\n Pastaba: POD ir RileyLink turi būti būti labai arti vienas kito. - Prijunkite POD - \nParuoškite infuzijos vietą. Nuimkite adatos apsauginį dangtelį, pleistro apsaugą ir užklijuokite POD ant infuzijos vietos.\n\nJei kaniulė atšoks, paspauskite Atšaukti ir pakeiskite POD.\n\nSpauskite Kitas, norėdami įvesti kaniulę ir pradėti leisti insuliną. - Įvedama kaniulė - Mėginkite nustatyti pradinį bazės profilį ir įvesti kaniulę.\n\nKai visi elementai yra patikrinti, galite paspausti Kitas. - POD informacija - \nPOD yra aktyvus.\n\nJūsų bazės profilis yra suprogramuotas ir kaniulė įvesta.\n\nPatikrinkite, ar kaniulė buvo tinkamai įvesta, ir, jei jaučiate, kad taip nėra, pakeiskite POD. - Išjungti POD - \nSpustelėkiteKitas, kad išjungtumėte POD.\n\nPastaba: Tai sustabdys insulino leidimą ir išjungs POD. - POD išjungimas - POD išjungimas.\n\nJei visi elementai pažymėti, galite paspausti Kitas.\n\n Pastaba: Jei išjungimas vis nepavyksta, paspauskite Atšaukti ir naudokite parinktį Atstatyti POD , kad priverstinai atkurtumėte POD būklę. - POD išjungtas.\n\nNuimkite POD nuo odos ir jį išmeskite. - POD suporavimas - POD užpildymas - Kaniulės užpildymas - Nustatyti bazės profilį - Atšauti insulino leidimą - Išjungti POD - - - Integracija su Omnipod Dash pompa. - Priminimas apie suporavimo pabaigą - Priminimas apie sąrankos pabaigą - POD galiojimas greitai baigsis - POD galiojimas greitai baigsis - Išjungimas yra neišvengiamas - Žemas rezervuaro lygis - Nežinomas perspėjimas - Gali nepavykti nustatyti bazės profilio. Insulino leidimas gali būti sustabdytas! Atkurkite POD būseną. - Laikinos valandinės bazės nustatymas gali būti nesėkmingas. Jei laikina valandinė bazė iki šiol buvo nustatyta ir galioja, ji gali būti atšaukta! Atnaujinkite POD būseną. - Laiko nustatymas gali būti nesėkmingas. Insulino leidimas gali būti sustabdytas! Atkurkite POD būseną. - Neįmanoma patikrinti, ar bolusas suleistas sėkmingai. Patikrinkite, ar jūsų POD leidžia bolusą, arba bolusą atšaukite. - RL statistika - Pulse žurnalas Palyginti profilius Profilio pagalbininkas Numatytasis profilis diff --git a/app/src/main/res/values-nl-rNL/strings.xml b/app/src/main/res/values-nl-rNL/strings.xml index d0ec392641..4c9dbdacda 100644 --- a/app/src/main/res/values-nl-rNL/strings.xml +++ b/app/src/main/res/values-nl-rNL/strings.xml @@ -1065,7 +1065,6 @@ Voltooiing wissen Wissen gestart Wil je dit leerdoel opnieuw starten? Je kunt je voortgang verliezen. - Tijd en/of tijdzone wijzigen op de pomp Geen pomp geselecteerd Selecteer eenheden waarin je waarden wilt weergeven Upload lokale profielwijzigingen naar NS @@ -1140,7 +1139,6 @@ Authorisatie mislukt Absolute insuline Het masterwachtwoord wordt gebruikt voor het versleutelen van backups en om de app-beveiligingen te kunnen overschrijven. Onthoud het goed of bewaar het op een veilige plaats. - Wachtwoorden komen niet overeen Huidig masterwachtwoord Statusindicatoren Kopieer instellingen van NS @@ -1149,122 +1147,5 @@ Knoppen worden altijd weergegeven aan de onderkant van het scherm Groot scherm Skin - - Nooit verbonden - Ontwaken - Communicatiefout - Time-out op de communicatie - Pomp niet bereikbaar - Ongeldige configuratie - Actief - Slapend - - - Pomp integratie voor Omnipod, vereist RileyLink (met firmware 2.0 of hoger). - - Bolus pieptoon ingeschakeld - Basaal pieptoon ingeschakeld - SMB pieptoon ingeschakeld - Tijdelijk basaal pieptoon ingeschakeld - Pod debugging opties ingeschakeld - DST/tijdzone detectie ingeschakeld - - Pod Beheer - Pod Status - %1$.2f E over - Meer dan 50 E - Pod adres - Pod verloopt - Geen info - Geen pod verbonden - Niet geïnitialiseerd - Actieve pod alarmen - Alarmen bevestigen - - Omnipod (433,91 MHz) - - Bewerking is niet mogelijk.\n\nJe moet eerst Omnipod ingesteld hebben, voordat je deze bewerking kunt gebruiken. - Bewerking is niet mogelijk.\n\nJe moet enkele minuten wachten, totdat AAPS voor de eerste keer probeert om het profiel in te stellen. - Ongeldig PodInitActionType: %1$s - Geen actieve pod. - Opdracht verificatie is mislukt. - Er is een onverwachte fout opgetreden. Rapporteer dit alsjeblieft! (type: %1$s). - Communicatie mislukt: ongeldige invoerparameters ontvangen. - Communicatie mislukt: timeout. - Communicatie mislukt: er is een onvoorziene fout opgetreden. Rapporteer dit alsjeblieft! - Communicatie mislukt: berichtintegriteit kon niet worden geverifieerd. - Communicatie mislukt: ongeldige gegevens ontvangen van de Pod. - Communicatie mislukt: de Pod bevindt zich in een verkeerde staat. - Communicatie mislukt: ongeldig antwoord ontvangen van de Pod. - Communicatie mislukt: bericht met ongeldig volgnummer ontvangen van de Pod. - Communicatie mislukt: bericht met ongeldig adres ontvangen van de Pod. - Communicatie is mislukt: kon bericht van de Pod niet decoderen. - Communicatie mislukt: nonce resync is mislukt. - Communicatie mislukt: nonce out of sync. - Communicatie mislukt: onvoldoende gegevens ontvangen van de Pod. - Een pod-fout (%1$03d %2$s) is gedetecteerd. Deactiveer je Pod en start een nieuwe. - Communicatie mislukt: de Pod heeft een foutrespons gegeven. - - Pod Beheer - Initialiseer Pod - Deactiveer Pod - Reset Pod - Pod Historie - Bolus instellen - Annuleer Bolus - Instellen Tijdelijke Basaal - Annuleer Tijdelijk Basaal (Intern door stuurprogramma) - Annuleer Tijdelijk Basaal (Geforceerd door gebruiker) - Basaalprofiel instellen - Pod status ophalen - Pod info ophalen - Tijd instellen - Configureer alarmen - Bevestig alarmen - Onderbreek toediening - Hervat toediening - Onbekende invoer - %1$.1f E - %1$.1f E, KH=%2$.1f g - Basaal: %1$.1f E, Duur: %2$d min - Als je op OK klikt, zal de Pod gedwongen worden gereset en kun je niet meer communiceren met de Pod. Doe dit alleen als je al niet meer met de Pod kunt communiceren. Als je nog wel kunt communiceren met de Pod, gebruik dan de optie Deactiveer Pod. - Pod Historie momenteel niet beschikbaar. - Vul de Pod - \nVul de nieuwe Pod met voldoende insuline voor 3 dagen.\n\nLuister of je twee piepjes hoort tijdens het vullen. Deze geven aan dat de minimum hoeveelheid van 85E is bereikt. Ook als je de twee piepjes hebt gehoord ga je verder met vullen totdat de vulspuit volledig leeg is.\n\nNa het vullen van de Pod druk je op Volgende.\n\nOpmerking: verwijder de beschermkap van de Pod naald nog niet! - Uitvullen - Probeer te koppelen met de nieuwe Pod en laat de Pod de naald uitvullen.\n\nWanneer alle onderdelen zijn afgerond, druk je op Volgende.\n\nOpmerking: Houd de Pod goed dicht bij de RileyLink terwijl je dit doet. - Plaats de Pod - \nBereid het plaatsen voor. Verwijder de beschermdop van de naald en haal de papiertjes van de sticker.\n\n(Mocht je zien dat de canule uitsteekt, druk dan op Annuleren en begin overnieuw met een andere Pod.)\n\nBevestig de Pod op de huid. Druk op Volgende om de canule te gaan inschieten en de insulinetoediening te laten starten. - Canule inschieten - De basaalstand wordt ingesteld en de canule wordt ingeschoten.\n\nWanneer alle onderdelen zijn afgerond, druk je op Volgende. - Pod Info - \nDe Pod is nu actief.\n\nJouw basaalprofiel is ingeladen in de Pod en de canule is ingebracht.\n\nControleer of de canule correct is geplaatst en vervang de Pod als je denkt dat er iets is misgegaan. - Deactiveer Pod - \nDruk op Volgende om de Pod te deactiveren.\n\nOpmerking: Hiermee wordt de insuline toediening gestopt en wordt de Pod gedeactiveerd. - Deactiveren van de Pod - Deactiveren van de Pod.\n\nWanneer alle onderdelen zijn afgerond, druk je op Volgende.\n\nOpmerking: Als deactiveren herhaaldelijk niet wil lukken, druk je op Annuleren en gebruik de optie Reset Pod om de Pod-status geforceerd te deactiveren. - Pod gedeactiveerd.\n\nVerwijder de Pod van je lichaam en gooi hem weg. - Pod Koppelen - Pod Uitvullen - Canule vullen - Instellen Basaal Profiel - Annuleer toediening - Deactiveer Pod - - - Pomp integratie voor Omnipod Dash. - Herinnering koppeling afronden - Herinnering setup afronden - Pod verloopt binnenkort - Pod verloopt binnenkort - Schakelt zeer binnenkort uit - Laag reservoir - Onbekend alarm - Het instellen van basaal profiel is mogelijk mislukt. De toediening is misschien gestopt! Vernieuw de status van Pod. - Het instellen van tijdelijk basaal is mogelijk mislukt. Als er al een tijdelijk basaal actief was, is dat misschien geannuleerd! Vernieuw de status van de Pod. - Het instellen van de tijd is mogelijk mislukt. De toediening is misschien gestopt! Vernieuw de status van Pod. - Kan niet controleren of de bolus is geslaagd. Controleer of de Pod de bolus aan het toedienen is of annuleer de bolus. - RL Statistieken - Pulsen Log Profiel hulp diff --git a/app/src/main/res/values-pl-rPL/strings.xml b/app/src/main/res/values-pl-rPL/strings.xml index e97fba0680..fedb054b31 100644 --- a/app/src/main/res/values-pl-rPL/strings.xml +++ b/app/src/main/res/values-pl-rPL/strings.xml @@ -1066,7 +1066,6 @@ Wyczyść skończone Wyczyść rozpoczęte Czy chcesz zresetować czas rozpoczęcia zadania? Możesz utracić postępy. - Zmiana czasu i/lub strefy czasowej w pompie Nie wybrano pompy Wybierz jednostki, w których chcesz wyświetlać wartości Prześlij zmiany w profilu lokalnym do NS @@ -1142,7 +1141,6 @@ Autoryzacja nie powiodła się Cała insulina Hasło główne jest używane do szyfrowania kopii zapasowych i przełamania zabezpieczeń w aplikacji. Zapamiętaj je lub przechowuj w bezpiecznym miejscu. - Hasła się nie zgadzają! Aktualne hasło główne Wskaźniki stanu Kopiowanie ustawień z NS @@ -1151,123 +1149,6 @@ Przyciski są zawsze wyświetlane na dole ekranu Duży ekran Motyw - - Nigdy nie połączona - Wybudzanie - Błąd komunikacji - Przekroczony limit czasu połączenia - Pompa nieosiągalna - Nieprawidłowe ustawienia - Aktywna - Uśpiona - - - Integracja pompy Omnipod, wymaga RileyLink (z firmwarem 2.0 lub wyższym). - - Sygnał dźwiękowy bolusa włączony - Sygnał dźwiękowy bazy włączony - Sygnał dźwiękowy SMB włączony - Sygnał dźwiękowy TBR (tymczasowej dawk bazowej) włączony - Włączone opcje debugowania PODów - Włączone wykrywanie stref czasowych - - Pod Mgmt - Status Pod - %1$.2f U zostało - Ponad 50 U - Adres Pod - Pod traci ważność - Brak informacji - Pod nie podłączony - Nie zainicjowany - Aktywne alarmy Pod - Alerty ack - - Omnipod (433,91 MHz) - - To działanie nie jest możliwe.\n\n Musisz skonfigurować Omnipod przed uruchomieniem tego działania. - Operacja nie jest możliwa.\n\n Trzeba poczekać kilka minut, aż AAPS spróbuje ustawić profil pierwszy raz. - Niedozwolone działanie PodInitActionType: %1$s - Brak aktywnego Pod. - Nieudana weryfikacja polecenia. - Wystąpił nieoczekiwany błąd. Proszę zgłosić! (typ: %1$s). - Komunikacja nie powiodła się: odebrano niepoprawne parametry wejściowe. - Komunikacja nie powiodła się: przekroczono limit czasu. - Komunikacja nie powiodła się: wystąpił nieoczekiwany błąd. Proszę zgłosić! - Komunikacja nie powiodła się: weryfikacja integralności komunikatu nie powiodła się. - Komunikacja nie powiodła się: odebrano niepoprawny pakiet (komunikat) z Poda. - Komunikacja nie powiodła się: Pod jest w niewłaściwym stanie. - Komunikacja nie powiodła się: odebrano niepoprawną odpowiedź (pakiet) z Poda. - Komunikacja nie powiodła się: odebrano komunikat z niepoprawną sekwencją liczb z Poda. - Komunikacja nie powiodła się: odebrano komunikat z niepoprawną adresacją z Poda. - Komunikacja nie powiodła się: nie powiodło się dekodowanie komunikatu z Poda. - Komunikacja nie powiodła się: nonce resync nie powiodło się. - Komunikacja nie powiodła się: nonce nie jest zsynchronizowane. - Komunikacja nie powiodła się: brak wystarczającej ilości danych odebranych z Poda. - Błąd Pod. (%1$03d %2$s) został wykryty. Zdezaktywuj swój Pod i uruchom nowy. - Komunikacja nie powiodła się: Pod zwrócił odpowiedź o błędzie. - - Zarządzanie Pod - Uruchom Pod - Odłącz Pod - Resetuj Pod - Historia Pod - Podanie bolusa - Anulowanie bolusa - Ustaw tymczasową dawkę bazową - Anuluj tymczasową bazę (wewnętrznie przez sterownik) - Anuluj tymczasową bazę (wymuszone przez użytkownika) - Ustaw harmonogram Dawki bazowej - Pobierz status Pod - Pobierz informacje o Pod - Ustaw czas - Konfigurowanie alertów - Potwierdź alerty - Wstrzymaj podawanie - Wznów podawanie - Nieznany Wpis - %1$.1f U - %1$.1f U, CH=%2$.1f g - Dawka: %1$.1f U, Czas: %2$d min - Jeśli naciśniesz OK, stan Pod zostanie wyzerowany i nie będziesz mógł więcej komunikować się z tym Podem. Zrób to tylko wtedy, gdy nie możesz się z nim skmunikować. Jeśli nadal można komunikować się z Podem, skorzystaj z opcji Odłącz Pod. - Historia Pod nie jest dostępna w tej chwili. - Napełnij Pod - \nNapełnij nowego Poda z wystarczającą ilością insuliny przez 3 dni.\n\nNasłuchuj dwóch sygnałów dźwiękowych z Poda podczas procesu napełniania. Wskazują one, że minimalna ilość 85U została wypełniona. Należy upewnić się, że ampułkostrzykawka jest całkowicie pusta, nawet po odsłuchaniu dwóch sygnałów dźwiękowych.\n\nPo napełnieniu Poda, należy nacisnąć Dalej.\n\nUwaga: nie usuwaj w tym czasie osłonki igłowej Poda. - Wypełnianie - Próba sparowania z nowym Podem i wypełnienia go.\n\nKiedy wszystkie elementy są sprawdzone, można nacisnąć Następny.\n\nUwaga: prosimy o trzymanie w tym czasie Poda bardzo blisko RileyLink. - Przymocuj Poda - \nPrzygotowanie miejsca do infuzji. Zdjąć osłonkę igły i zabezpieczenie plastra i przykleić Pod do skóry w miejscu wkłucia.\n\nJeśli kaniula odkleja się, proszę wcisnąć Anuluj i odczepić Pod.\n\nNaciśnij Następny w celu wprowadzenia kaniuli i rozpoczęcia podawania bazy. - Wprowadzanie kaniuli - Próba ustawienia początkowego planu bazowego i wprowadzeia kaniuli.\n\nKiedy wszystkie elementy są sprawdzane, można nacisnąć Następny. - Informacje o Podzie - \nPod jest teraz aktywny.\n\nTwój plan dawki bazowej został zaprogramowany i wprowadzono kaniulę w miejsce wkłucia.\n\nSprawdź, czy kaniula została prawidłowo włożona i wymień swój Pod, jeśli czujesz, że nie. - Odłącz Pod - \nNaciśnij Następny w celu odłączenia Poda.\n\nUwaga: To spowoduje zawieszenie wszystkich dostaw insuliny i dezaktywację Poda. - Odłączanie Poda - Deaktywacja Pod.\n\nKiedy wszystkie elementy są zaznaczone, możesz nacisnąć Następna.\n\nUwaga: Jeśli deaktywacja w sposób ciągły nie powodzi się, należy nacisnąć Anuluj i użyć opcji Reset Pod, aby wymusić zresetowanie stanu Pod. - Pod odłączony.\n\nProszę odkleić Pod od ciała i wyrzucić go. - Sparuj Pod - Wypełnij Pod - Wypełnij kaniulę - Ustaw profil dawki bazowej - Anulowanie podawania - Odłącz Pod - - - Integracja pompy dla Omnipod Dash. - Zakończ przypomnienie parowania - Zakończ przypomnienie o konfiguracji - Pod wkrótce straci ważność - Pod wkrótce straci ważność - Wyłączenie jest nieuchronne - Niski poziom w zbiorniku - Nieznany alarm - Ustawienie profilu podstawowego mogło się nie powieść. Podawanie mogło zostać zawieszone! Odśwież status Pod. - Ustawienie bazy tymczasowej mogło się nie powieść. Jeśli była już uruchomiona baza tymczasowa, to mogła zostać odwołana! Odśwież status Pod. - Ustawienie czasu mogło się nie powieść. Podawanie mogło zostać zawieszone! Odśwież status Pod. - Nie można sprawdzić, czy podano bolus. Upewnij się, że Twój Pod podaje bolus lub odwołaj go. - Statystyki RL - Logi pulsów omnipod Porównaj profile Pomocnik profilu Profil domyślny diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 9ccd7c2cf4..27560b4cd6 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -1093,35 +1093,10 @@ Falha na autorização Insulina absoluta Password Mestre é usada para encriptação da cópia de segurança e substituir segurança na aplicação. Lembre-se dela ou guarde-a em um lugar seguro. - As passwords não coincidem Senha mestra atual Copiar definições do NS Tema original Botões são sempre exibidos na parte inferior da tela Mostrador Grande Tema - - Nunca contatado - A acordar - Erro com comunicação - Tempo limite para comunicação - Bomba inacessível - Configuração inválida - Ativo - A dormir - - - - - - - - Desativado Pod - Definir Bólus - Definir Basal temporário - %1$.1f U - Definir Perfil Basal - Desativado Pod - - diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index 28691e1395..b4b4d77296 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -1070,7 +1070,6 @@ Limpar terminado Limpar iniciado Deseja reiniciar o objectivo? Pode perder seu progresso. - Alterar Hora e/ou Fuso Horário na Bomba Nenhuma bomba seleccionada Seleccione as unidades em que deseja exibir os valores Carregar as alterações do perfil local para NS @@ -1147,7 +1146,6 @@ Falha na autorização Insulina absoluta Senha Mestre é usada para encriptação da cópia de segurança e substituir segurança na aplicação. Lembre-se dela ou guarde-a em um lugar seguro. - As senhas não coincidem Senha Mestre actual Luzes de Estado Copiar definições do NS @@ -1156,123 +1154,6 @@ Os botões são sempre exibidos na parte inferior do ecrã Mostrador Grande Tema gráfico - - Nunca contactado - A acordar - Erro com comunicação - Tempo limite para comunicação - Bomba inacessível - Configuração inválida - Activo - A dormir - - - Integração de bomba para Omnipod, requer RileyLink (com pelo menos firmware 2.0) dispositivo. - - Sinal Bólus Activado - Sinal Basal Activado - Sinal SMB Activado - Sinal DBT Activado - Opções de Depuração do Pod habilitadas - Detecção de DST/Fuso Horário Activado - - Gestão Pod - Estado do Pod - %1$.2f U restante - Mais de 50 U - Endereço do Pod - Pod Expira - Sem info - Nenhum Pod ligado - Não inicializado - Alertas Pod Activos - Reco Alertas - - Omnipod (433.91 MHz) - - A operação não é possível.\n\nPrecisa configurar o Omnipod primeiro, antes de pode usar esta operação. - A operação não é possível.\n\n Precisa de esperar alguns minutos, até que AAPS tente definir o perfil para a primeira vez. - PodInitActionType Ilegal: %1$s - Nenhum Pod Activo. - A verificação do comando falhou. - Ocorreu um erro inesperado. Por favor reporte! (digite: %1$s). - Falha na comunicação: foram recebidos parâmetros de entrada inválidos. - Falha na comunicação: tempo limite. - Falha na comunicação: ocorreu um erro inesperado. Por favor, reporte! - Falha na comunicação: mensagem de falha de verificação de integridade. - Falha na comunicação: recebeu um pacote inválido do Pod. - Falha na comunicação: o Pod está em um estado errado. - Falha na comunicação: recebeu uma resposta inválida do Pod. - Falha na comunicação: recebeu uma mensagem com número de sequência inválido do Pod. - Falha na comunicação: recebeu uma mensagem com um endereço inválido do Pod. - Falha na comunicação: falha ao descodificar a mensagem do Pod. - Falha na comunicação: nonce resync falhou. - Falha na comunicação: nonce fora de sincronização. - Falha na comunicação: não há dados suficientes recebidos do Pod. - Uma falha de Pod (%1$03d %2$s) foi detectada. Por favor, desactive o Pod e inicie um novo. - Falha na comunicação: o Pod devolveu uma resposta de erro. - - Gestão Pod - Iniciar Pod - Desactivar Pod - Repor Pod - Histórico do Pod - Definir Bólus - Cancelar Bólus - Definir Basal Temporária - Cancelar Basal Temporária (Forçado pelo controlador) - Cancelar Basal Temporária (Forçado pelo utilizador) - Definir Programação Basal - Obter Status do Pod - Obter Pod Info - Definir Hora - Configurar Alertas - Reconhecer Alertas - Suspender Administração - Retomar Administração - Entrada Desconhecida - %1$.1f U - %1$.1f U, HC=%2$.1f g - Taxa: %1$.1f U, Duração: %2$d min - Se pressionar OK, o estado do Pod vai ser forçado a redefinir e você não será capaz de comunicar mais com o Pod. Faça isso somente se você não pode comunicar mais com o Pod. Se ainda pode comunicar com o Pod, por favor, use o Desactivar Pod opção. - Histórico do Pod não disponível no momento. - Encher o Pod - \nPreencher o novo Pod com insulina suficiente para 3 dias.\n\nOuvir dois sinais sonoros a partir do Pod durante o processo de enchimento. Isso indica que a quantidade mínima de 85U foi inserida. Certifique-se de esvaziar completamente a seringa, mesmo depois de ouvir dois sinais sonoros.\n\nDepois de preencher o Pod, por favor, pressione Próximo.\n\nNota: não remova a tampa da agulha do Pod neste momento. - A Purgar - A tentar emparelhar com o novo Pod e purgá-lo.\n\nQuando todos os itens forem verificados, pode pressionar Próximo.\n\nNota: por favor, mantenha o Pod muito perto do RileyLink neste momento. - Anexar o Pod - \nPrepare o local de infusão. Remova a tampa da agulha do Pod e o adesivo e fixe o Pod no local de infusão.\n\nSe a canula sair, por favor, pressione Cancelar e descarte o seu Pod.\n\nPressione Próximo para inserir a canula e começar a administração da basal. - A inserir canula - A tentar definir um plano da basal inicial e inserir canula.\n\nQuando todos os itens estiverem verificados, pode pressionar Próximo. - Info Pod - \nO Pod está agora activo.\n\nO seu plano de basal foi programado e a canula foi inserida.\n\nPor favor, verifique se a canula foi inserida correctamente e substitua o seu Pod se você se sente que não. - Desactivar Pod - \nPressione Próximo para desactivar o Pod.\n\nNota: Isto irá suspender toda a administração de insulina e desactivar o Pod. - A Desactivar Pod - A desactivar o Pod.\n\nQuando todos os itens forem verificados, pode pressionar Próximo.\n\nNota: Se desactivar falhar continuamente, por favor, pressione Cancelar e use o Repor Pod opção para forçar a repor o estado do Pod. - Pod desactivado.\n\nPor favor, remova o Pod do seu corpo e descarte-o. - Emparelhar Pod - Purgar Pod - Enchimento de Canula - Definir Perfil Basal - Cancelar Administração - Desactivar Pod - - - Integração da Bomba para Omnipod Dash. - Lembrete Concluir Emparelhamento - Lembrete Terminar Configuração - Pod vai expirar em breve - Pod vai expirar em breve - Encerramento iminente - Reservatório baixo - Alerta desconhecido - Pode ter falhado ao definir perfil da basal. A administração pode estar suspensa! Por favor, actualize o estado do Pod. - Pode ter falhado ao definir basal temporária. Se houve uma basal temporária já em execução, pode ter sido cancelada! Por favor, actualize o estado do Pod. - Pode ter falhado ao definir a hora. A administração pode estar suspensa! Por favor, actualize o estado do Pod. - Não é possível verificar se o bólus foi bem-sucedido. Por favor, verifique se o Pod está administrar ou cancelar o bólus. - Estatísticas RL - Registo de Pulse Comparar Perfis Assistente de Perfil Perfil Padrão diff --git a/app/src/main/res/values-ro-rRO/strings.xml b/app/src/main/res/values-ro-rRO/strings.xml index f04d78c2d8..573bdb13fe 100644 --- a/app/src/main/res/values-ro-rRO/strings.xml +++ b/app/src/main/res/values-ro-rRO/strings.xml @@ -1070,7 +1070,6 @@ Șterge starea \"Terminat\" Șterge starea \"Început\" Doriți să reîncepeți obiectivul? Vă puteți pierde progresul. - Schimbare oră și/sau fus orar în pompă Nicio pompă selectată Selectați unitățile în care doriți să afișați valorile Transmiteți modificările profilului local către NS @@ -1147,7 +1146,6 @@ Autorizarea a eșuat Insulină totală Parola master (principală) este folosită pentru criptarea copiilor de rezervă și pentru a suprascrie securitatea în aplicație. Rețineți-o sau păstrați-o într-un loc sigur. - Parolele nu coincid Parola principală curentă Lumini de stare Copiați setările din NS @@ -1156,123 +1154,6 @@ Butoanele sunt afișate întotdeauna în partea de jos a ecranului Display mare Tema - - Niciodată contactată - Se pornește - Eroare de comunicație - Comunicația nu a reușit la timp - Pompă indisponibilă - Configurație invalidă - Activă - În repaus - - - Integrare pompa pentru Omnipod, necesită dispozitivul RileyLink (cu versiune firmware de cel puțin 2.0). - - Bip pentru Bolus Activat - Bip pentru Bazală Activat - Bip pentru SMB Activat - Bip pentru TBR Activat - Opțiuni de depanare Pod Activate - Detectare DST/fus orar activată - - Pod Mgmt - Status Pod - %1$.2f U rămase - Peste 50 U - Adresă Pod - Pod-ul expiră - Nu există informații - Niciun Pod conectat - Neiniţializat - Alerte pod active - Alerte de confirmare - - Omnipod (433.91 MHz) - - Operațiunea nu este posibilă.\n\nTrebuie să configuraţi Omnipod înainte de a putea efectua această operațiune. - Operaţiunea nu este posibilă.\n\n Trebuie să aşteptaţi câteva minute până când AAPS încearcă să seteze profilul pentru prima dată. - Acțiune PodInitActionType ilegala: %1$s - Niciun Pod activ. - Verificarea comenzii a eşuat. - A apărut o eroare neașteptată. Vă rugăm să o raportați! (tip: %1$s). - Comunicarea a eșuat: s-au primit parametri de intrare incorecți. - Comunicarea a eșuat: timpul a expirat. - Comunicarea a eşuat: a apărut o eroare neaşteptată. Vă rugăm să o raportaţi! - Comunicarea a eşuat: verificarea integrităţii mesajului a eşuat. - Comunicarea a eşuat: a fost primit un pachet invalid de la Pod. - Comunicarea a eșuat: Pod-ul este într-o stare incorectă. - Comunicarea a eșuat: s-a primit un răspuns incorect de la Pod. - Comunicarea a eșuat: s-a primit un mesaj cu un număr de secvență invalid de la Pod. - Comunicarea a eșuat: s-a primit un mesaj cu o adresă invalidă de la Pod. - Comunicarea a eșuat: nu s-a reușit decodarea mesajului de la Pod. - Comunicarea a eșuat: resincronizarea nonce nu a reușit. - Comunicarea a eșuat: nonce nu poate fi sincronizată. - Comunicarea a eşuat: nu s-au primit suficiente date de la Pod. - A fost detectată o eroare a Pod-ului (%1$03d %2$s). Vă rugăm să îl dezactivați pe acesta și să porniți unul nou. - Comunicarea a eșuat: Pod-ul a returnat un răspuns de eroare. - - Gestionare Pod - Inițializare Pod - Dezactivare Pod - Resetare Pod - Istoric Pod - Setează bolusul - Anulați Bolus - Setează bazala temporară - Anulați bazală temporară (la nivel intern de către driver) - Anulați bazală temporară (impus de către utilizator) - Programați ratele bazale - Obțineți Status Pod - Obțineți Informații Pod - Setare timp - Configurare alerte - Confirmare alerte - Suspendați Livrarea - Reluați livrarea - Intrare necunoscută - %1$.1f U - %1$.1f U, CH=%2$.1f g - Rata: %1$.1f U, Durata: %2$d min - Dacă apăsați OK, statusul Pod-ului va fi resetat forțat şi nu veți mai putea comunica cu Pod-ul. Faceți acest lucru numai dacă nu mai puteți comunica deloc cu Pod-ul. Daca mai puteți comunica cu Pod-ul, va rugam sa folosiți opțiunea Dezactivare Pod. - Istoricul Pod-ului nu este disponibil momentan. - Umpleţi Pod-ul - \nUmpleți noul Pod cu suficientă insulină pentru 3 zile.\n\nAr trebui sa auziți două bipuri de la Pod în timpul procesului de umplere. Acestea indică faptul că, cantitatea minimă de 85U a fost introdusă. Asigurați-vă ca ați golit complet seringa de umplere, chiar și după ce ați auzit două bipuri.\n\nDupă umplerea Pod-ului, vă rugăm să apăsați Următorul.\n\nNotă: Nu scoateți capacul transparent al acului in acest moment. - Amorsare - Încercare de împerechere cu noul Pod și amorsare.\n\nAtunci când toate etapele sunt gata, puteți apăsa Următorul.\n\nNotă: vă rugăm să țineți Pod-ul foarte aproape de RileyLink în timpul procesului. - Atașați Pod-ul - \nPregătiți setul de infuzie. Scoateți capacul acului și suport adeziv și atașați Pod-ul la locul de infuzie.\n\nDacă, canula pare in neregulă, apăsați Anulare și aruncați Pod-ul.\n\nApăsați Următorul pentru a introduce canula și a începe livrarea bazalei. - Inserare canulă - Încercare de programare inițială a ratelor bazale si de insertie a canulei.\n\nCând toate elementele sunt gata, puteți apăsa Următorul. - Informații Pod - \nPod-ul este acum activ.\n\nRatele bazale au fost programate și canula a fost introdusă.\n\nVă rugăm să verificați că acul a fost introdus corect. Dacă considerați ca nu, înlocuiți Pod-ul. - Dezactivare Pod - \nApăsați Următorul pentru a dezactiva Pod-ul.\n\nNotă: Acest lucru va suspenda orice livrare de insulină și va dezactiva Pod-ul. - Dezactivare Pod - Dezactivare Pod.\n\nAtunci când toate elementele sunt gata, puteți apăsa Următorul.\n\nNotă: Dacă dezactivarea eșuează continuu, vă rugăm să apăsați Anulează și folosiți opțiunea Resetare Pod pentru a forța resetarea Pod-ului. - Pod dezactivat.\n\nScoateți Pod-ul și aruncați-l. - Împerechere Pod - Amorsare Pod - Umplere Canulă - Setează profilul bazalelor - Anulare livrare - Dezactivare Pod - - - Integrare cu pompa pentru Omnipod Dash. - Finalizare memento împerechere - Finalizare memento setare - Pod-ul va expira în curând - Pod-ul va expira în curând - Oprirea este iminentă - Nivel rezervor scăzut - Alertă necunoscută - Setarea ratelor bazale s-ar putea să fi eșuat. Livrarea ar putea fi suspendată! Vă rugăm să reactualizați starea Pod-ului. - Setarea ratelor bazale temporare s-ar putea să fi eșuat. Dacă a existat o bazală temporară în livrare, aceasta ar putea fi fost anulată! Vă rugăm să reactualizați starea Pod-ului. - Setarea datei și orei s-ar putea să fi eșuat. Livrarea ar putea fi suspendată! Vă rugăm să reactualizați starea Pod-ului. - Nu se poate verifica dacă bolusul a reușit. Verificați dacă Pod livrează ceva sau anulați bolusul. - Statistici RL - Jurnal Puls Compară profilurile Ajutor profil Profil implicit diff --git a/app/src/main/res/values-ru-rRU/strings.xml b/app/src/main/res/values-ru-rRU/strings.xml index f44a07ebd3..6adf98bb48 100644 --- a/app/src/main/res/values-ru-rRU/strings.xml +++ b/app/src/main/res/values-ru-rRU/strings.xml @@ -1084,7 +1084,6 @@ Context | Edit Context Очистить завершенные Очистить начатые Хотите сбросить начатую цель? Можете потерять уже достигнутое. - Изменение времени и/или часового пояса на помпе Помпа не выбрана Выберите единицы, в которых вы хотите отображать значения Перенести изменения локального профиля в NS @@ -1161,7 +1160,6 @@ Context | Edit Context Ошибка авторизации Абсолютный инсулин Главный пароль используется для шифрования резервных копий и для переопределения защиты в приложении. Запомните его или храните в безопасном месте. - Пароли не совпадают Текущий главный пароль Индикаторы состояния Копировать параметры из NS @@ -1170,123 +1168,6 @@ Context | Edit Context Кнопки всегда отображаются в нижней части экрана Большой дисплей Тема оформления - - Никогда не подключалось - Пробуждение - Ошибка связи - Таймаут связи - Помпа недоступна - Недопустимая конфигурация - Активно - Сон - - - Для интеграции с помпой Omnipod требуется устройство RileyLink (с прошивкой 2.0 и выше). - - Звуковой сигнал болюса включен - Звуковой сигнал базала включен - Звуковой сигнал микроболюса SMB включен - Звуковой сигнал временного базала TBR включен - Опции Отладки Пода Включены - Включено обнаружение часового пояса - - Управление помпой - Статус помпы - %1$.2f ед. осталось - Более 50 ед. - Адрес Пода - Срок действия Пода истекает - Нет информации. - Нет подключения к помпе - Нет инициализации - Активные оповещения помпы - Оповещения помпы - - Omnipod (433.91 МГц) - - Операция невозможна.\n\n Сначала нужно настроить помпу Omnipod. - Операция невозможна.\n\n Подождите несколько минут, пока AAPS пытается задать профиль. - Недопустимый тип инициализации: %1$s - Активная помпа не выбрана. - Командная верификация не состоялась. - Произошла непредвиденная ошибка. Пожалуйста, сообщите об ошибке! (сообщить:: %1$s). - Ошибка связи: недопустимые входные параметры. - Ошибка связи: время ожидания истекло. - Ошибка связи: возникла непредвиденная ошибка. Пожалуйста, сообщите! - Ошибка связи: проверка целостности сообщения завершилась неудачно. - Ошибка связи: недопустимые входные параметры. - Ошибка связи: Pod находится в неверном состоянии. - Ошибка связи: недопустимый ответ от помпы. - Ошибка связи: получено сообщение с недопустимым порядковым номером от Pod. - Ошибка связи: получено сообщение с некорректным адресом от Pod. - Ошибка связи: не удалось декодировать сообщение от Pod. - Ошибка соединения: не удалось выполнить синхронизацию nonce resync. - Ошибка соединения: вне синхронизации. - Ошибка связи: недостаточно данных от Pod. - Обнаружена ошибка Pod (%1$03d %2$s). Деактивируйте Pod и запустите новый. - Ошибка связи: Pod ответил ошибкой. - - Управление помпой Omnipod - Инициализировать Pod - Деактивировать Pod - Сброс помпы - Журнал помпы - Настроить болюс - Отменить болюс - Установить временный базал - Отменить временный базал (внутренний драйвер) - Отменить временный базал (принудительно пользователем) - Задать расписание базала - Получить состояние Pod - Получить информацию о Pod - Установить Время - Сконфигурировать оповещения - Подтвердить оповещения - Приостановить подачу - Возобновить подачу - Неизвестная запись - %1$.1f ед - %1$.1f ед, CH=%2$.1f г - Скорость: %1$.1f ед, Продолжительность: %2$d мин - Если нажать OK, состояние Pod будет принудительно сброшено, и вы больше не сможете общаться с Pod. Сделайте это только в том случае, если вы не можете обмениваться с Pod. Если еще можно связаться с Pod, воспользуйтесь опцией Деактивировать Pod. - В настоящее время история помпы недоступна. - Заполнить Pod - \nЗаполните новый Pod запасом инсулина на 3 дня.\n\nПоступят два звуковых сигнала от помпы во время заправки. Это означает, что минимальное количество 85U заправлено. Не забудьте опустошить заправочный шприц даже после того, как услышите два звуковых сигнала.\n\nПосле заполнения Pod нажмите Next.\n\nПримечание: Пока не снимайте с помпы колпачок с иглой. - Первичное заполнение инфузионной секции пода - Попытка сопряжения с новым Podом и первичного заполнения инфузионного отсека..\n\n После проверки всех пунктов можно нажать Далее.\n\nПримечание: В это время Под должен находиться рядом с RileyLink. - Подключить Под - \nПодготовьте место инфузии. Удалите колпачок с иглы и защиту липкого слоя, Установите Pod на тело.\n\nесли канюля выступает, нажмите отменить и утилизируйте Pod.\n\Нажмите Далее чтобы вставить канюлю и начать подачу базала. - Установка канюли (катетера) - Определение графика подачи базала и установка канюли. \n\n Когда проверены все шаги, нажмите Далее. - Информация о Pod - \nПомпа сейчас активна.\n\nБазальный график запрограммирован и катетер установлен.\n\nУбедитесь в том, что канюля установлена правильно и замените Pod, если такой уверенности нет. - Деактивировать Pod - \nНажмите Далее для деактивации Пода\n\nПримечание: Это Приостановит всякую подачу инсулина и деактивирует помпу. - Деактивация помпы - Деактивация помпы.\n\n, Когда проверены все элементы, нажмите Далее.\n\nПримечание: Если деактивация постоянно завершается ошибкой, нажмите Отменить и примените Сброс помпы чтобы принудительно сбросить состояние Pod\'a. - Pod деактивирован.\n\nУдалите и утилизируйте Pod. - Сопряжение Pod - Заполнение инфузионной секции Pod\'a - Заполнение катетера - Задан профиль базала - Отмена подачи инсулина - Деактивировать Pod - - - Интеграция с помпой Omnompod Dash. - Напоминание о завершении сопряжения - Напоминание о завершении настройки - Срок работы Pod\'a истекает - Срок Pod\'a истекает в ближайшее время - Остановка неизбежна - В резервуаре мало инсулина - Неизвестное оповещение - Возможно, не удалось задать базовый профиль. Подача инсулина может быть приостановлена! Обновите состояние Pod. - Возможно, установка временного базала не удалась. Если временный базал уже работал, возможна его отмена! Обновите статус Pod\'a. - Возможно, не удалось задать время. Подача инсулина может быть приостановлена! Обновите состояние Pod. - Не удалось проверить правильность подачи болюса. Убедитесь, что Pod подает болюс или отмените его. - Статистика RL - Журнал Pulse Сравнить профили Помощник профиля Профиль по умолчанию diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index 68b8313891..ff4c243225 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -1082,7 +1082,6 @@ Vymazanie dokončené Vymazanie začaté Chcete resetovať začiatok cieľa? Môžete prísť o svoj pokrok. - Zmena času a/alebo časovej zóny na pumpe Nie je vybraná žiadna pumpa Vyberte jednotky, v ktorých chcete zobraziť hodnoty Odoslať zmeny lokálneho profilu do NS @@ -1159,7 +1158,6 @@ Autorizácia zlyhala Celkový inzulín Hlavné heslo sa používa na šifrovanie zálohy a na \"prebitie\" zabezpečenia v aplikácii. Dobre si ho zapamätajte, alebo uložte na bezpečnom mieste. - Heslá sa nezhodujú Aktuálne hlavné heslo Indikátory stavu Kopírovať nastavenia z NS @@ -1168,123 +1166,6 @@ Tlačidlá sú vždy zobrazené v spodnej časti obrazovky Veľký displej Vzhľad - - Nikdy nepripojené - Prebúdzanie - Chyba komunikácie - Uplynul časový limit komunikácie - Pumpa nedostupná - Neplatná konfigurácia - Aktívna - Spiaca - - - Integrácia pumpy pre Omnipod, vyžaduje zariadenie RileyLink (s firmwarom aspoň 2.0). - - Pípnutie pri boluse povolené - Pípnutie pri bazále povolené - Pípnutie pri SMB povolené - Pípnutie pri TBR povolené - Možnosti ladenia Podu povolené - Letný čas / Detekcia časového pásma povolená - - Správa Podu - Stav Podu - Zostáva %1$.2f JI - Viac ako 50 JI - Adresa Podu - Expirácia Podu - Žiadne info - Žiadny Pod nie je pripojený - Nie je inicializovaný - Výstrahy aktívneho Podu - Potvrdiť výstrahu - - Omnipod (433,91 MHz) - - Operácia nie je možná.\n\nNajskôr je nutné nakonfigurovať Omnipod, kým bude možné túto funkciu použiť. - Operácia nie je možná.\n\n Je potrebné niekoľko minút počkať, pokiaľ sa AAPS nepokúsi prvý krát nastaviť profil. - Neplatný atribút PodInitActionType: %1$s - Žiadny aktívny Pod. - Overenie príkazu zlyhalo. - Došlo k neočakávanej chybe. Nahláste ju! (typ: %1$s). - Komunikácia zlyhala: boli prijaté neplatné vstupné parametre. - Komunikácia zlyhala: časový limit vypršal. - Komunikácia zlyhala: vyskytla sa neočakávaná chyba. Prosím, nahláste to! - Komunikácia zlyhala: overenie integrity správy zlyhalo. - Komunikácia zlyhala: boli prijaté neplatné pakety z Podu. - Komunikácia zlyhala: Pod je v chybnom stave. - Komunikácia zlyhala: bola prijatá neplatná odozva z Podu. - Komunikácia zlyhala: bola prijatá správa s neplatným poradovým číslom z Podu. - Komunikácia zlyhala: bola prijatá správa s neplatnou adresou z Podu. - Komunikácia zlyhala: nepodarilo se dekódovať správu z Podu. - Komunikácia zlyhala: opakovaná synchronizácia Nonce hodnoty zlyhala. - Komunikácia zlyhala: hodnota Nonce nebola synchronizovaná. - Komunikácia zlyhala: nedostatok dát prijatých z Podu. - Bola zistená chyba Podu (%1$03d %2$s). Deaktivujte Pod a spustite nový. - Komunikácia zlyhala: Pod vrátil chybovú odozvu. - - Správa Podu - Inicializovať Pod - Deaktivovať Pod - Resetovať Pod - História Podu - Nastaviť bolus - Zrušiť bolus - Nastaviť dočasný bazál - Zrušiť dočasný bazál (interne ovládačom) - Zrušiť dočasný bazál (nútene užívateľom) - Nastaviť plán bazálu - Zistiť stav Podu - Zistiť informácie o Pode - Nastaviť čas - Nastaviť výstrahy - Potvrdiť výstrahy - Pozastaviť dodávanie inzulínu - Pokračovať v dodávaní inzulínu - Neznáma položka - %1$.1f JI - %1$.1f JI, CH=%2$.1f g - Rýchlosť: %1$.1f JI, Doba trvania: %2$d min - Keď stlačíš OK, bude pripojenie na Pod nútene prerušené a nebudete sa môcť k nemu už viac pripojiť. Urob tak iba vtedy, ak AAPS nemôže viac komunikovať s Podom. Ak stále môžete komunikovať s Podom, prosím použite možnosť Deaktivovať Pod. - História Podu momentálne nie je dostupná. - Naplňte Pod - \nNaplňte Pod dostatočným množstvom inzulínu na 3 dni.\n\nPočúvaj aj dve pípnutia počas plnenia. Tieto poukazujú na to, že Pod bol naplnený minimálnym množstvom 85 JI. Úplne vyprázdni striekačku, aj keď si počul dve pípnutia.\n\nKlikni <bĎalej</b> po tom, čo si naplnil Pod.\n\n<b>Poznámka:</b> Neodstraňuj ešte ochranu ihly na Pode. - Plnenie - Pokús sa spárovať s novým Podom a naplň ho.\n\nKeď sú všetky položky zaškrtnuté, môžete stlačiť Ďalej.\n\nPoznámka: prosím držte teraz Pod veľmi blízko RileyLinku. - Pripevni Pod - \nPripravte infúzny set. Odstráňte krytku ihly na Pode a ochranu samolepky a pripojte Pod k infúznemu setu. \n\nAk sa kanyla odlepí, prosím stlačte Zrušiť a zahoďte Váš Pod.\n\nStlačte Ďalšia na zavedenie kanyly a začiatok podávania bazálu. - Zavedenie kanyly - Pokúšam sa nastaviť počiatočnú bazálnu dávku a zaviesť kanylu.\n\nAk sú všetky položky označené, môžete stlačiť Ďalší. - Informácie o Pode - \nPod je teraz aktívny.\n\nVaša bazálna dávka je nastavená a kanyla bola zavedená.\n\nProsím skontrolujte, či bola kanyla zavedená správne a ak máte pocit, že nie, tak vymeňte Pod. - Deaktivovať Pod - \nStlačte Ďalej pre deaktiváciu Podu.\n\nPoznámka: Toto preruší celkovo podávanie inzulínu a deaktivuje Pod. - Deaktivácia Podu - Deaktivujem Pod.\n\nKeď sú všetky položky zaškrtnuté, môžete stlačiť Ďalej.\n\nPoznámka: Ak deaktivácia neustále zlyháva, stlačte prosím Zrušiť a použite možnosť Resetovať Pod, na nútené obnovenie stavu Podu. - Pod deaktivovaný.\n\nProsím odstráňte Pod z Vášho tela a zlikvidujte ho. - Spárujte Pod - Naplňte Pod - Naplňte kanylu - Nastavte bazálny profil - Zrušte podávanie - Deaktivujte Pod - - - Integrácia pumpy pre Omnipod Dash. - Pripomienka ukončenia párovania - Pripomienka ukončenia nastavenia - Pod čoskoro expiruje - Pod čoskoro expiruje - Vypnutie je bezprostredné - Nízka hladina zásobníka - Neznáma výstraha - Nastavenie bazálu mohlo zlyhať. Podávanie môže byť pozastavené! Prosím, obnovte stav Podu. - Nastavenie dočasného bazálu mohlo zlyhať. Ak už bol spustený dočasný bazál, mohol byť zrušený! Prosím, obnovte stav Podu. - Nastavenie času mohlo zlyhať. Podávanie môže byť pozastavené! Prosím, obnovte stav Podu. - Nie je možné overiť, či bolo podávanie bolusu úspešné. Prosím overte, že váš Pod podáva bolus, alebo zrušte bolus. - Štatistiky RL - Pulse Log Porovnať profily Pomocník s profilom Predvolený profil diff --git a/app/src/main/res/values-sl-rSI/strings.xml b/app/src/main/res/values-sl-rSI/strings.xml index 2578fce6a9..1ce4989b86 100644 --- a/app/src/main/res/values-sl-rSI/strings.xml +++ b/app/src/main/res/values-sl-rSI/strings.xml @@ -5,14 +5,4 @@ - - - - - - - - - - diff --git a/app/src/main/res/values-sv-rSE/strings.xml b/app/src/main/res/values-sv-rSE/strings.xml index e17e7d055c..7f225e9d90 100644 --- a/app/src/main/res/values-sv-rSE/strings.xml +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -157,6 +157,7 @@ Eversense-appen. Temp basal Förlängd bolus Nightscoutversion: + Saknar %1$dg Inställningar exporterade Exportera inställningar till Importera inställningar från @@ -235,6 +236,10 @@ Eversense-appen. Minsta antal minuter som måste förflyta mellan en fjärrbolus och nästa Minsta antal minuter mellan fjärrbolus För att redigera den här inställningen måste du, för din säkerhet, lägga till minst 2 telefonnummer. + Bolus %1$.2f enheter levererat + Kommer att leverera %1$.2f enheter + Bolus %1$.2f enheter levererat + Bolus på %1$.2f enheter levererat Temporärt mål på %1$s är satt i %2$d minuter Temporärt mål på %1$s är satt i %2$d minuter Temporärt mål avbrutet @@ -258,7 +263,9 @@ Eversense-appen. Pump återansluten Otillåtet fjärrkommando Fjärrbolus inte tillgängligt. Försök igen senare. + För att starta temp basal %1$.2f enheter/tim i %2$d min, svara med kod %3$s För att byta till profil %1$s %2$d%% svara med kod %3$s + För att starta förlängd bolus med %1$.2f enheter över %2$d min, svara med kod %3$s Om du vill ange %1$dg kl. %2$s, svara med kod %3$s För att starta temp basal %1$d%% i %2$d min, svara med kod %3$s För att pausa loop i %1$d minuter, svara med kod %2$s @@ -267,6 +274,7 @@ Eversense-appen. För att inaktivera loopen, svara med kod %1$s Temp basal %1$.2f enheter/tim i %2$d min startad Förlängd bolus %1$.2f enheter över %2$d min har startats + %1$dg kolhydrater registrerat Misslyckades med att registrera %1$dg kolhydrater Temp basal %1$d%% enheter/tim i %2$d min startad Fel vid start av temp basal @@ -847,6 +855,7 @@ Eversense-appen. Stämmer koderna överens mellan denna enhet och din pump? Parkoppling av Insight Accu-Chek Insight + %1$.2fU / %2$.2fU levererat %1$s: %2$s Slang bytt Tiden uppdaterad i pumpen @@ -904,6 +913,7 @@ Eversense-appen. Förl: %1$.2f / %2$.2f U i %3$d min Kombi: %1$.2f / %2$.2f U i %3$d min TDD: %1$.2f + Res: %1$.2fU Batt.: %1$d%% Max paus mellan återanslutningsförsök [s] Min paus mellan återanslutningsförsök [s] @@ -1046,6 +1056,8 @@ Eversense-appen. Skicka SMS: %1$s Skicka SMS till alla nummer Skicka SMS med text + COB kontra IOB + Bolusbegränsning tillämpad: %1$.2f U till %2$.2f U Varning! Långsam KH-absorption upptäckt %2$d%% av tiden. Dubbelkolla din beräkning. COB kan vara väldigt missvisande och du riskerar få för mycket insulin!]]> Direkt bolus [%] Bolusguiden utför beräkningar, men endast denna del av beräknat insulin levereras. Användbar med SMB-algoritm. @@ -1071,7 +1083,6 @@ Eversense-appen. Rensa avslutade Rensa påbörjade Vill du starta om målet? Du kan förlora de steg du gjort hittills. - Tid och/eller tidszonsändring på pump Ingen pump har valts Välj enheter du vill visa värden i Överför lokala profiländringar till NS @@ -1148,7 +1159,6 @@ Eversense-appen. Behörighetskontroll misslyckades Absolut insulinmängd Huvudlösenordet används för att kryptera backuper och för att åsidosätta vissa säkerhetsfunktioner i applikationen. Kom ihåg det eller förvara det på ett säkert ställe. - Lösenorden stämmer inte överens Nuvarande huvudlösenord Statuslampor Kopiera inställningar från NS @@ -1157,123 +1167,6 @@ Eversense-appen. Knappar visas alltid längst ned på skärmen Stor skärm Tema - - Aldrig ansluten - Väcker - Kommunikationsfel - Kommunikationstimeout - Pumpen kan inte nås - Felaktig konfigureration - Aktiv - Sover - - - Pumpintegrering för Omnipod. Kräver Riley Link med minst v2-firmware. - - Boluspip aktiverade - Basalpip aktiverade - SMB-pip aktiverade - Tempbasal-pip aktiverade - Debug-alternativ aktiverade för pod - Automatisk avkänning av tidszon aktiverad - - Omnipod - Pod-status - %1$.2f U återstår - Över 50 U - Podadress - Pod går ut - Ingen info - Ingen pod ansluten - Inte initierad - Aktiva pod-varningar - Ack-varningar - - Omnipod (433.91 MHz) - - Operationen inte möjlig.\n\n Du måste konfigurera Omnipod innan du kan använda denna funktion. - Operationen är inte möjlig.\n\n Du måste vänta några minuter, tills AAPS försöker ställa in profilen för första gången. - Ogiltig PodInitActionType: %1$s - Ingen aktiv pod. - Kommandoverifikation misslyckades. - Ett oväntat fel uppstod. Vänligen rapportera! (typ: %1$s). - Kommunikationsfel: Emottog ogiltiga indataparametrar. - Kommunikationsfel: Timeout. - Kommunikationsfel: Ett oväntat fel inträffade. Rapportera! - Kommunikationsfel: Lyckades inte verifiera meddelandet. - Kommunikationsfel: Mottog ett ogiltigt datapaket från pod. - Kommunikationsfel: Pod är i fel tillstånd. - Kommunikationsfel: Mottog ett felaktig svar från pod. - Kommunikationsfel: Tog emot ett meddelande med ett ogiltigt sekvensnummer från podden. - Kommunikationsfel: Tog emot ett meddelande med en ogiltig adress från podden. - Kommunikationsfel: Misslyckades avkoda meddelandet från pod. - Kommunikationsfel: \"nonce resync\" misslyckades. - Kommunikationsfel: \"nonce\" är inte i synk. - Kommunikationsfel: Mottog inte tillräckligt mycket data från pod. - Ett pod-fel (%1$03d %2$s) har upptäckts. Vänligen inaktivera din pod och starta en ny. - Kommunikationsfel: Pod returnerade ett fel. - - Podhantering - Initiera pod - Inaktivera pod - Återställ pod - Pod-historik - Leverera bolus - Avbryt Bolus - Sätt temp basal - Avbryt temp basal (internt av drivrutinen) - Avbryt temp basal (tvingat av användaren) - Ange basaldoser - Uppdatera pod-status - Hämta Pod-information - Ställ in tid - Konfigurera varningar - Bekräfta varningar - Pausa insulintillförsel - Återuppta insulintillförsel - Okänd post - %1$.1f U - %1$.1f U, KH=%2$.1f g - Dos: %1$.1f U, Duration: %2$d min - Om du trycker på OK, kommer poddstatus att tvångsåterställas och du kommer inte att kunna kommunicera med podden längre. Gör det här bara om du inte kan kommunicera med podden. Om du fortfarande kan kommunicera med den, använd alternativet Inaktivera pod. - Pod-historik är inte tillgänglig för tillfället. - Fyll pod - \nFyll den nya podden med tillräckligt med insulin för 3 dagar.\n\nLyssna efter två pip under påfyllningsprocessen. Dessa anger att minimimängden 85U har nåtts. Var noga med att helt tömma påfyllningssprutan, även efter att ha hört de två pipen.\n\nNär påfyllningen är klar, tryck Nästa.\n\nNotera: Ta inte bort nålskyddet ännu. - Förfyllning - Försöker parkoppla den nya podden och förfylla den.\n\nNär alla steg är sluförda, kan du trycka på Nästa.\n\nNotera: Håll din riley link väldigt nära podden. - Fäst podden - \nFörbered infusionsplatsen. Ta bort poddens nålskydd och fäst podden på infusionsplatsen.\n\nOm kanylen sticker ut, tryck på Avbryt och kasta din pod.\n\nTryck Nästa för att skjuta in kanylen och påbörja basaldoseringen. - Skjuter in kanylen - Försöker att ställa in basaldoser och skjuta in kanylen.\n\nNär alla steg är slutförda, kan du trycka på Nästa. - Pod-info - \nPodden är nu aktiverad.\n\nDina basaldoser har programmerats och kanylen har skjutits in in.\n\nKontrollera att kanylen sitter på rätt sätt och byt pod om den inte gjort det. - Inaktivera pod - \nTryck på Nästa för att inaktivera podden.\n\nOBS! Det här stoppar all insulintillförsel och inaktiverar podden. - Inaktiverar pod - Inaktivering av pod\n\nNär alla steg är slutförda, kan du trycka på Nästa.\n\nNotera: Om inaktivering misslyckas ofta, tryck på Avbryt och använd alternativet Återställ pod för att tvångsåterställa podden. - Pod inaktiverad.\n\nTa bort podden och kasta den. - Parkoppla pod - Förfyll pod - Fyll kanyl - Sätt basalprofil - Avbryt leverans - Inaktivera pod - - - Pumpintegration för Omnipod Dash. - Påminnelse att slutföra parkoppling - Påminnelse att slutföra installation - Pod löper snart ut - Pod kommer att gå ut inom kort - Pod kommer snart att stängas av - Låg reservoar - Okänd varning - Inställning av basalprofil kan ha misslyckats. Leverans kan avbrytas! Vänligen uppdatera pod-status. - Inställning av temp basal kan ha misslyckats. Om det redan var en temp basal igång, kan den ha avbrutits! Vänligen uppdatera pod-status. - Tidsuppdateringen kan ha misslyckats. Leverans kan avbrytas! Vänligen uppdatera pod-status. - Det går inte att verifiera om bolusen är slutförd. Verifiera att din pod leverarar bolus eller avsluta bolus. - RL-statistik - Pulslogg Jämför profiler Profilguide Standardprofil diff --git a/app/src/main/res/values-tr-rTR/strings.xml b/app/src/main/res/values-tr-rTR/strings.xml index aa1332bb29..0c525f3183 100644 --- a/app/src/main/res/values-tr-rTR/strings.xml +++ b/app/src/main/res/values-tr-rTR/strings.xml @@ -682,14 +682,4 @@ Aktif Karbonhidratın ne kadar hızlı sindirildiğine ve KŞ\'nin beklenenden d Tomato (MiaoMiao) Tomato - - - - - - - - - - diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 41c36951a1..ec2b5760b4 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -800,14 +800,4 @@ DXCM 从补丁版的德康APP收到血糖值 - - - - - - - - - - diff --git a/core/src/main/res/values-af-rZA/strings.xml b/core/src/main/res/values-af-rZA/strings.xml index 547b8d8642..e60d671ab5 100644 --- a/core/src/main/res/values-af-rZA/strings.xml +++ b/core/src/main/res/values-af-rZA/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-bg-rBG/strings.xml b/core/src/main/res/values-bg-rBG/strings.xml index ab0a97b28a..7039b50890 100644 --- a/core/src/main/res/values-bg-rBG/strings.xml +++ b/core/src/main/res/values-bg-rBG/strings.xml @@ -101,6 +101,9 @@ седмици мин. д + + Грешна парола + Паролите не съвпадат Базалните стойности не са за кръгли часове: %1$s Базалната стойност е заместена от минимално поддържаната стойност %1$s diff --git a/core/src/main/res/values-cs-rCZ/strings.xml b/core/src/main/res/values-cs-rCZ/strings.xml index d8a92915a8..627b1131c1 100644 --- a/core/src/main/res/values-cs-rCZ/strings.xml +++ b/core/src/main/res/values-cs-rCZ/strings.xml @@ -101,6 +101,9 @@ týdnů m d + + Chybné heslo + Hesla se neshodují Hodnoty bazálů nejsou zarovnané na celé hodiny: %1$s Hodnota bazálu nahrazena minimální možnou: %1$s diff --git a/core/src/main/res/values-de-rDE/strings.xml b/core/src/main/res/values-de-rDE/strings.xml index 385e053603..ee4307a648 100644 --- a/core/src/main/res/values-de-rDE/strings.xml +++ b/core/src/main/res/values-de-rDE/strings.xml @@ -101,6 +101,9 @@ Wochen min d + + Falsches Passwort + Die Passwörter stimmen nicht überein. Basalraten beginnen nicht zur vollen Stunde: %1$s Basal-Wert wurde durch den kleinst möglichen Wert ersetzt: %1$s diff --git a/core/src/main/res/values-el-rGR/strings.xml b/core/src/main/res/values-el-rGR/strings.xml index 4a4b06493f..a39cd1c48c 100644 --- a/core/src/main/res/values-el-rGR/strings.xml +++ b/core/src/main/res/values-el-rGR/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-es-rES/strings.xml b/core/src/main/res/values-es-rES/strings.xml index 7969bb22d4..ae7fb664ca 100644 --- a/core/src/main/res/values-es-rES/strings.xml +++ b/core/src/main/res/values-es-rES/strings.xml @@ -8,15 +8,22 @@ Perfil basal actualizado en bomba Datos inválidos Basal Temporal no emitida + Entregando %1$.2f U Esperando bomba Conexión por %1$d s + Entregando %1$.2f U Estableciendo comunicacion Conectando Conectado Desconectado Desconectando AndroidAPS iniciado + %1$.1f U + %1$.2f U + %1$+.2f U + %1$d g %1$.0f/%2$dU + %1$.2f U/h %1$.2f h %1$d min Bomba ocupada @@ -77,6 +84,8 @@ Ubicación no habilitada Para activar la visibilidad Bluetooth en nuevos dispositivos, la ubicación debe estar habilitada. AAPS no hace un seguimiento de su ubicación y se puede desactivar después de realizar la vinculación. + hace %1$d m + hace %1$.1f h h días horas @@ -92,6 +101,9 @@ semanas m d + + Contraseña incorrecta + Contraseñas no coinciden Valores basales no alineados a las horas: %1$s Valor basal reemplazado por el valor mínimo soportado: %1$s @@ -113,7 +125,10 @@ Perfil inválido: %1$s + %1$d min + %1$s: ∑: %2$.2fU Bol: %3$.2fU Bas: %4$.2fU(%5$.0f%%)]]> + %1$s: ∑: %2$.2fU Bol: %3$.2fU Bas: %4$.2fU(%5$.0f%%) Carbs: %6$.0fg]]> Medir glucosa Aviso @@ -153,6 +168,7 @@ Esperando resultado SMB + %dg Carbohidratos adicionales necesarios dentro De %d minutos Estadísticas TDD acumulativa @@ -169,10 +185,31 @@ Basal diaria *2 Detección de tiempo + %1$dhoras %2$dmin + Operación no soportada por bomba y/o controlador. Operación no soportada todavía por la bomba. + Ok + Nunca conectados + En fase de inicio + Error con la comunicación + Tiempo de espera en la comunicación + Bomba no alcanzable + Configuración no válida + Activo + Suspendida + Basales + Ajustes + Notificaciones + Estadísticas + Desconocido/a + Todos + Bolos + Cebado + Alarmas + Glucosa diff --git a/core/src/main/res/values-fr-rFR/strings.xml b/core/src/main/res/values-fr-rFR/strings.xml index f835394731..0220d0a6fa 100644 --- a/core/src/main/res/values-fr-rFR/strings.xml +++ b/core/src/main/res/values-fr-rFR/strings.xml @@ -101,6 +101,9 @@ semaines m j + + Mot de passe incorrect + Mots de passe différents Valeurs des débits de basal non alignées sur des heures: %1$s Valeur de basal remplacée par la valeur minimale autorisée : %1$s diff --git a/core/src/main/res/values-ga-rIE/strings.xml b/core/src/main/res/values-ga-rIE/strings.xml index 6cacb70673..8b1661cbb5 100644 --- a/core/src/main/res/values-ga-rIE/strings.xml +++ b/core/src/main/res/values-ga-rIE/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-hr-rHR/strings.xml b/core/src/main/res/values-hr-rHR/strings.xml index 6cacb70673..8b1661cbb5 100644 --- a/core/src/main/res/values-hr-rHR/strings.xml +++ b/core/src/main/res/values-hr-rHR/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-it-rIT/strings.xml b/core/src/main/res/values-it-rIT/strings.xml index 84791f1ea3..8554f2f330 100644 --- a/core/src/main/res/values-it-rIT/strings.xml +++ b/core/src/main/res/values-it-rIT/strings.xml @@ -101,6 +101,9 @@ settimane m d + + Password errata + Le password non coincidono Valori basali non allineati alle ore: %1$s Valore basale sostituito dal minimo valore supportato: %1$s diff --git a/core/src/main/res/values-iw-rIL/strings.xml b/core/src/main/res/values-iw-rIL/strings.xml index 6cacb70673..8b1661cbb5 100644 --- a/core/src/main/res/values-iw-rIL/strings.xml +++ b/core/src/main/res/values-iw-rIL/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-ko-rKR/strings.xml b/core/src/main/res/values-ko-rKR/strings.xml index b8ceea7c1f..17c756e195 100644 --- a/core/src/main/res/values-ko-rKR/strings.xml +++ b/core/src/main/res/values-ko-rKR/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-lt-rLT/strings.xml b/core/src/main/res/values-lt-rLT/strings.xml index 74e46e0868..c8d8de4e81 100644 --- a/core/src/main/res/values-lt-rLT/strings.xml +++ b/core/src/main/res/values-lt-rLT/strings.xml @@ -8,15 +8,22 @@ Bazės profilis pompoje atnaujintas Neteisingai įvesti duomenys Laikinos bazės suleidimo klaida + Bus suleista %1$.2f vv Laukiama ryšio su pompa Jungiamasi %1$d s + Leidžiama %1$.2f vv Ryšio užmezgimas Jungiamasi Prisijungta Atsijungta Atsijungiama AndroidAPS paleista + %1$.1f vv + %1$.2f vv + %1$+.2f vv + %1$dg %1$.0f / %2$d vv + %1$.2f vv/val %1$.2f val. %1$d min. Pompa šiuo metu veikia @@ -77,6 +84,8 @@ Vietovės nustatymas neįjungtas Vietos nustatymo paslauga turi būti įjungta, kad Bluetooth aptikimas veiktų naujesniuose įrenginiuose. AAPS neseka Jūsų lokacijos, o vietos nustatymo paslauga gali būti išjungta po sėkmingo įrenginių suporavimo. + prieš %1$d min + Prieš %1$.1f val. val d. val. @@ -92,6 +101,7 @@ savaičių min. d + Bazės reikšmės nesuderintos su valandomis: %1$s Valandinė bazė pakeista mažiausia palaikoma verte: %1$s @@ -113,7 +123,10 @@ Netinkamas profilis: %1$s + %1$d min. + %1$s: ∑: %2$.2f vv Boluso: %3$.2f vv Bazės: %4$.2f vv(%5$.0f%%)]]> + %1$s: ∑: %2$.2f vv Boluso: %3$.2f vv Bazės: %4$.2f vv(%5$.0f%%) AV: %6$.0f g]]> KG testas Pranešimas @@ -153,6 +166,7 @@ Laukiama rezultato SMB + Būtina suvartoti %d g papildomų AV per %d min Statistika BPD viso diff --git a/core/src/main/res/values-nl-rNL/strings.xml b/core/src/main/res/values-nl-rNL/strings.xml index ea1668a7af..87eae6dfab 100644 --- a/core/src/main/res/values-nl-rNL/strings.xml +++ b/core/src/main/res/values-nl-rNL/strings.xml @@ -92,6 +92,7 @@ weken m d + Basaalstanden niet ingesteld in hele uren: %1$s Basale waarde vervangen door minimaal ondersteunde waarde; %1$s diff --git a/core/src/main/res/values-pl-rPL/strings.xml b/core/src/main/res/values-pl-rPL/strings.xml index 5d81b084e2..ba5e3b20e6 100644 --- a/core/src/main/res/values-pl-rPL/strings.xml +++ b/core/src/main/res/values-pl-rPL/strings.xml @@ -92,6 +92,7 @@ tygodni m d + Wartości bazy nie są ustawione w pełnych godzinach: %1$s Wartość bazy zastąpiona minimalną obsługiwaną wartością: %1$s diff --git a/core/src/main/res/values-pt-rBR/strings.xml b/core/src/main/res/values-pt-rBR/strings.xml index 19f6ad354a..d93703b523 100644 --- a/core/src/main/res/values-pt-rBR/strings.xml +++ b/core/src/main/res/values-pt-rBR/strings.xml @@ -90,6 +90,7 @@ dias semanas m + Valores das basais não definidos por horas: %1$s Valor da basal alterado para o valor mínimo suportado: %1$s diff --git a/core/src/main/res/values-pt-rPT/strings.xml b/core/src/main/res/values-pt-rPT/strings.xml index cd723f43ae..51e28dbbb6 100644 --- a/core/src/main/res/values-pt-rPT/strings.xml +++ b/core/src/main/res/values-pt-rPT/strings.xml @@ -92,6 +92,7 @@ semanas m d + Valores das basais não definidos por horas: %1$s Valor da basal alterado para o valor mínimo suportado: %1$s diff --git a/core/src/main/res/values-ro-rRO/strings.xml b/core/src/main/res/values-ro-rRO/strings.xml index 97227a6235..be8f993d94 100644 --- a/core/src/main/res/values-ro-rRO/strings.xml +++ b/core/src/main/res/values-ro-rRO/strings.xml @@ -92,6 +92,7 @@ săptămâni min z + Valori bazale nesincronizate cu ora: %1$s Valoarea bazalei a fost înlocuită cu valoarea minimă posibilă: %1$s diff --git a/core/src/main/res/values-ru-rRU/strings.xml b/core/src/main/res/values-ru-rRU/strings.xml index 54791a31c7..9a9efa0898 100644 --- a/core/src/main/res/values-ru-rRU/strings.xml +++ b/core/src/main/res/values-ru-rRU/strings.xml @@ -101,6 +101,7 @@ нед мин дн + Базальные значения не выровнены по часам: %1$s Значение базала заменено минимальной поддерживаемой величиной: %1$s diff --git a/core/src/main/res/values-sk-rSK/strings.xml b/core/src/main/res/values-sk-rSK/strings.xml index 1aacfad6ec..d9c002729a 100644 --- a/core/src/main/res/values-sk-rSK/strings.xml +++ b/core/src/main/res/values-sk-rSK/strings.xml @@ -101,6 +101,9 @@ týždňov m d + + Nesprávne heslo + Heslá sa nezhodujú Bazálne hodnoty nie sú zarovnané na celé hodiny: %1$s Hodnota bazálu nahradená minimálnou možnou: %1$s diff --git a/core/src/main/res/values-sl-rSI/strings.xml b/core/src/main/res/values-sl-rSI/strings.xml index 6cacb70673..8b1661cbb5 100644 --- a/core/src/main/res/values-sl-rSI/strings.xml +++ b/core/src/main/res/values-sl-rSI/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-sv-rSE/strings.xml b/core/src/main/res/values-sv-rSE/strings.xml index ae274cd2fd..3916ba74e8 100644 --- a/core/src/main/res/values-sv-rSE/strings.xml +++ b/core/src/main/res/values-sv-rSE/strings.xml @@ -8,15 +8,22 @@ Basalprofilen uppdaterad i pumpen Fel på inmatning Fel vid justering av temp basal + Kommer att leverera %1$.2f enheter Väntar på pump Ansluter (%1$d s) + Levererar %1$.2f enheter Anslutningen verifieras Ansluter Ansluten Frånkopplad Kopplar från AndroidAPS startad + %1$.1f U + %1$.2f U + %1$+.2f U + %1$dg %1$.0f / %2$d U + %1$.2f U/h %1$.2f h %1$d min Pump upptagen @@ -77,6 +84,8 @@ Platsdata är inte aktiverat För att Bluetooth ska fungera med nyare enheter, måste platsdata vara aktiverat. AAPS sparar inte din plats och det kan stängas av efter att enheten har parkopplats. + %1$dm sedan + %1$.1f tim sedan h dagar timmar @@ -92,6 +101,9 @@ veckor m d + + Fel lösenord + Lösenorden stämmer inte överens Profilens basaler är inte satta på hel timme: %1$s Basalvärdet ersatt med det lägsta tillåtna: %1$s @@ -113,7 +125,10 @@ Ogiltig profil: %1$s + %1$d min + %1$s: ∑: %2$.2fU Bol: %3$.2fU Bas: %4$.2fU(%5$.0f%%)]]> + %1$s: ∑: %2$.2fU Bol: %3$.2fU Bas: %4$.2fU(%5$.0f%%) KH: %6$.0fg]]> BG-kontroll Meddelande @@ -153,6 +168,7 @@ Väntar på resultat SMB + %dg KH behövs inom %d minuter Statistik Kumulativ TDD diff --git a/core/src/main/res/values-tr-rTR/strings.xml b/core/src/main/res/values-tr-rTR/strings.xml index 6cacb70673..8b1661cbb5 100644 --- a/core/src/main/res/values-tr-rTR/strings.xml +++ b/core/src/main/res/values-tr-rTR/strings.xml @@ -5,6 +5,7 @@ + diff --git a/core/src/main/res/values-zh-rCN/strings.xml b/core/src/main/res/values-zh-rCN/strings.xml index 3a1944bc64..38424a2b46 100644 --- a/core/src/main/res/values-zh-rCN/strings.xml +++ b/core/src/main/res/values-zh-rCN/strings.xml @@ -5,6 +5,7 @@ + diff --git a/dana/src/main/res/values-bg-rBG/strings.xml b/dana/src/main/res/values-bg-rBG/strings.xml index 72d2e51a94..89429ecb0f 100644 --- a/dana/src/main/res/values-bg-rBG/strings.xml +++ b/dana/src/main/res/values-bg-rBG/strings.xml @@ -54,7 +54,6 @@ Обновява базални стойности Настройва временен базал Изчаква синхронизация на времето (%1$d сек) - Грешна парола Грешна парола за помпата! Аларми Базален по часове diff --git a/dana/src/main/res/values-cs-rCZ/strings.xml b/dana/src/main/res/values-cs-rCZ/strings.xml index 695e20aefe..7b59410fa4 100644 --- a/dana/src/main/res/values-cs-rCZ/strings.xml +++ b/dana/src/main/res/values-cs-rCZ/strings.xml @@ -54,7 +54,6 @@ Aktualizuji bazály Nastavuji dočasný bazál Čekání na synchronizaci času (%1$d s) - Chybné heslo Špatné heslo k pumpě! Alarmy Hodinové bazály diff --git a/dana/src/main/res/values-de-rDE/strings.xml b/dana/src/main/res/values-de-rDE/strings.xml index 56f9391d6e..0f2cef2b26 100644 --- a/dana/src/main/res/values-de-rDE/strings.xml +++ b/dana/src/main/res/values-de-rDE/strings.xml @@ -54,7 +54,6 @@ Basal-Profil wird aktualisiert TBR wird gesetzt Warte auf Zeitsynchronisierung (%1$d Sek.) - Falsches Passwort Falsches Pumpen-Passwort! Alarme Basal-Stunden diff --git a/dana/src/main/res/values-es-rES/strings.xml b/dana/src/main/res/values-es-rES/strings.xml index f2c9d14b44..5bcb1a9d39 100644 --- a/dana/src/main/res/values-es-rES/strings.xml +++ b/dana/src/main/res/values-es-rES/strings.xml @@ -54,7 +54,6 @@ Actualizando dosis basales Ajustando basal temporal Esperando para sincronización (%1$d sec) - Contraseña incorrecta ¡Contraseña de la bomba incorrecta! Alarmas Basal Horas diff --git a/dana/src/main/res/values-fr-rFR/strings.xml b/dana/src/main/res/values-fr-rFR/strings.xml index 21eec0d92f..99f12323a4 100644 --- a/dana/src/main/res/values-fr-rFR/strings.xml +++ b/dana/src/main/res/values-fr-rFR/strings.xml @@ -54,7 +54,6 @@ Mise à jour des débits basal Définir basal temp Attente de synchronisation de l\'heure (%1$d sec) - Mot de passe incorrect Mot de passe pompe incorrect ! Alarmes Heures Basal diff --git a/dana/src/main/res/values-it-rIT/strings.xml b/dana/src/main/res/values-it-rIT/strings.xml index 11329423d5..a8c579f6a9 100644 --- a/dana/src/main/res/values-it-rIT/strings.xml +++ b/dana/src/main/res/values-it-rIT/strings.xml @@ -54,7 +54,6 @@ Aggiornamento velocità basali Impostazione basale temporanea In attesa della sincronizzazione dell\'ora (%1$d sec) - Password errata Password micro errata! Allarmi Ore basali diff --git a/dana/src/main/res/values-lt-rLT/strings.xml b/dana/src/main/res/values-lt-rLT/strings.xml index bca4fcbf52..ba204dd39e 100644 --- a/dana/src/main/res/values-lt-rLT/strings.xml +++ b/dana/src/main/res/values-lt-rLT/strings.xml @@ -54,7 +54,6 @@ Bazė naujinama Laikinos bazės nustatymas Laukiama laiko sinchronizavimo (%1$d sek.) - Neteisingas slaptažodis Neteisingas pompos slaptažodis! Aliarmai Valandinė bazė diff --git a/dana/src/main/res/values-nl-rNL/strings.xml b/dana/src/main/res/values-nl-rNL/strings.xml index ac4438bf96..9e4b8f12e1 100644 --- a/dana/src/main/res/values-nl-rNL/strings.xml +++ b/dana/src/main/res/values-nl-rNL/strings.xml @@ -54,7 +54,6 @@ Bijwerken basaal profiel Instellen tijdelijk basaal Wachten op tijdsynchronisatie (%1$d sec) - Verkeerd wachtwoord Verkeerd pomp wachtwoord! Alarmen Basale uren diff --git a/dana/src/main/res/values-pl-rPL/strings.xml b/dana/src/main/res/values-pl-rPL/strings.xml index 9f84c6cd35..4b268ae95d 100644 --- a/dana/src/main/res/values-pl-rPL/strings.xml +++ b/dana/src/main/res/values-pl-rPL/strings.xml @@ -54,7 +54,6 @@ Uaktualnianie dawek bazowych Ustawianie bazy tymczasowej Oczekiwanie na synchronizację czasu (%1$d sec) - Złe hasło Błędne hasło pompy! Alarmy Godziny Bazy diff --git a/dana/src/main/res/values-pt-rBR/strings.xml b/dana/src/main/res/values-pt-rBR/strings.xml index 756ea27a45..204d3ba1a7 100644 --- a/dana/src/main/res/values-pt-rBR/strings.xml +++ b/dana/src/main/res/values-pt-rBR/strings.xml @@ -46,7 +46,6 @@ Atualizar valores das basais Definindo basal temp À espera da sincronização da hora (%1$d sec) - Senha incorrecta Senha da bomba incorrecta! Alarmes Horas de Basal diff --git a/dana/src/main/res/values-pt-rPT/strings.xml b/dana/src/main/res/values-pt-rPT/strings.xml index 2a9b392910..58af75e295 100644 --- a/dana/src/main/res/values-pt-rPT/strings.xml +++ b/dana/src/main/res/values-pt-rPT/strings.xml @@ -54,7 +54,6 @@ A actualizar taxas das basais Definindo basal temp À espera da sincronização da hora (%1$d sec) - Senha incorrecta Senha da bomba incorrecta! Alarmes Horas de Basal diff --git a/dana/src/main/res/values-ro-rRO/strings.xml b/dana/src/main/res/values-ro-rRO/strings.xml index c75c37a78f..589940f04e 100644 --- a/dana/src/main/res/values-ro-rRO/strings.xml +++ b/dana/src/main/res/values-ro-rRO/strings.xml @@ -54,7 +54,6 @@ Se actualizează ratele bazale Se setează bazala temporară Se așteaptă o sincronizare a timpului (%1$d s) - Parolă greșită Parola pompei greșită! Alarme Ore bazale diff --git a/dana/src/main/res/values-ru-rRU/strings.xml b/dana/src/main/res/values-ru-rRU/strings.xml index b62cc03edd..df0577758a 100644 --- a/dana/src/main/res/values-ru-rRU/strings.xml +++ b/dana/src/main/res/values-ru-rRU/strings.xml @@ -54,7 +54,6 @@ обновление значений базала установка врем базала Ожидание синхронизации времени (%1$d сек) - неверный пароль неверный пароль помпы оповещения об опасности почасовые базалы diff --git a/dana/src/main/res/values-sk-rSK/strings.xml b/dana/src/main/res/values-sk-rSK/strings.xml index 9e6e2cfd8e..d4464b9fdf 100644 --- a/dana/src/main/res/values-sk-rSK/strings.xml +++ b/dana/src/main/res/values-sk-rSK/strings.xml @@ -54,7 +54,6 @@ Aktualizujem bazály Nastavujem dočasný bazál Čakanie na synchronizáciu času (%1$d s) - Nesprávne heslo Nesprávne heslo do pumpy! Alarmy Hodinové bazály diff --git a/dana/src/main/res/values-sv-rSE/strings.xml b/dana/src/main/res/values-sv-rSE/strings.xml index 94bc25e158..e360cafe02 100644 --- a/dana/src/main/res/values-sv-rSE/strings.xml +++ b/dana/src/main/res/values-sv-rSE/strings.xml @@ -54,7 +54,6 @@ Uppdaterar basaldoser Ställer in temp basal Väntar på tidssynkronisering (%1$d sek) - Fel lösenord Fel lösenord för pump Larm Basaltimmar diff --git a/medtronic/src/main/res/values-es-rES/strings.xml b/medtronic/src/main/res/values-es-rES/strings.xml index f438320ae9..1dd41aea2f 100644 --- a/medtronic/src/main/res/values-es-rES/strings.xml +++ b/medtronic/src/main/res/values-es-rES/strings.xml @@ -25,6 +25,7 @@ NiMH (vista extendida) Bolos/Depuración de Tratamientos + Errores Nº serie no establecido. Número de serie no válido. Tipo de infusora no establecido. @@ -47,6 +48,7 @@ + Historial de la infusora Medtronic Has cancelado el bolo después de que ya estaba enviado a la infusora. Debido a que la infusora Medtronic no soporta comando cancelar, tendrás que cancelarlo manualmente. Pon la infusora en modo suspender y luego reinicia (si todavía quieres cancelar). La aplicación recogerá los cambios en la próxima actualización (en menos de 5 minutos). No se pudo leer la basal temporal actual. @@ -69,8 +71,14 @@ Establecer la basal temporal Fijar Bolo Infusora no alcanzable + Alerta + Ahora + hace + Se necesita actualizar reloj de la bomba + Activado + Desactivado Hora del infusor actualizada diff --git a/rileylink/src/main/res/values-af-rZA/strings.xml b/rileylink/src/main/res/values-af-rZA/strings.xml index e6112f8f89..36bc469ff1 100644 --- a/rileylink/src/main/res/values-af-rZA/strings.xml +++ b/rileylink/src/main/res/values-af-rZA/strings.xml @@ -44,10 +44,4 @@ Medtronic Pomp Omnipod - US & Canada (916 MHz) - Wêreldwyd (868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-bg-rBG/strings.xml b/rileylink/src/main/res/values-bg-rBG/strings.xml index fd1523dc6e..2816ad714d 100644 --- a/rileylink/src/main/res/values-bg-rBG/strings.xml +++ b/rileylink/src/main/res/values-bg-rBG/strings.xml @@ -38,6 +38,7 @@ Настройка на RileyLink и помпа Проблем при връзка с помпата Свързан + RileyLink готов Устройството не е RileyLink RileyLink недостъпен @@ -49,11 +50,4 @@ Medtronic помпа Omnipod - Omnipod (433.91 MHz) - САЩ & Канада (916 Mhz) - Останалата част от света (868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-cs-rCZ/strings.xml b/rileylink/src/main/res/values-cs-rCZ/strings.xml index c783684d10..2264eea655 100644 --- a/rileylink/src/main/res/values-cs-rCZ/strings.xml +++ b/rileylink/src/main/res/values-cs-rCZ/strings.xml @@ -38,6 +38,7 @@ Spojování RileyLinku a pumpy Problém připojení k pumpě Připojeno + RileyLink připraven Zařízení není RileyLink RileyLink nedostupný @@ -49,9 +50,6 @@ Pumpa Medtronic Omipod - Omnipod (433,91 MHz) - US & Canada (916 MHz) - Celosvětové (868 Mhz) %1$d den %1$d dnů @@ -64,8 +62,4 @@ %1$d hodin %1$d hodin - - - - diff --git a/rileylink/src/main/res/values-de-rDE/strings.xml b/rileylink/src/main/res/values-de-rDE/strings.xml index d5d5b4f9b3..5a951812e1 100644 --- a/rileylink/src/main/res/values-de-rDE/strings.xml +++ b/rileylink/src/main/res/values-de-rDE/strings.xml @@ -38,6 +38,7 @@ RileyLink und Pumpe einstellen Problem beim Verbinden mit Pumpe Verbunden + RileyLink bereit Gerät ist kein RileyLink RileyLink nicht erreichbar @@ -49,9 +50,6 @@ Medtronic Pumpe Omnipod - Omnipod (433.91 MHz) - US & Kanada (916 MHz) - Weltweit (868 Mhz) %1$d Tag %1$d Tage @@ -60,8 +58,4 @@ %1$d Stunde %1$d Stunden - - - - diff --git a/rileylink/src/main/res/values-el-rGR/strings.xml b/rileylink/src/main/res/values-el-rGR/strings.xml index e21fe991ef..ff4b205bc7 100644 --- a/rileylink/src/main/res/values-el-rGR/strings.xml +++ b/rileylink/src/main/res/values-el-rGR/strings.xml @@ -45,10 +45,4 @@ Αντλία Medtronic Omnipod - US & Canada (916MHz) - Παγκοσμίως (868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-es-rES/strings.xml b/rileylink/src/main/res/values-es-rES/strings.xml index 7828f8e36e..2e24d693fe 100644 --- a/rileylink/src/main/res/values-es-rES/strings.xml +++ b/rileylink/src/main/res/values-es-rES/strings.xml @@ -6,9 +6,11 @@ Seleccionado Escaneo de RileyLink Habilitar + No Buscando Búsqueda Finalizada Error de escaneo: %1$d + Nunca Configuración Historico @@ -35,20 +37,25 @@ Error de RileyLink Configurando RileyLink y la bomba Problema al conectar con la infusora + Conectado + RileyLink listo El dispositivo no es un RileyLink RileyLink no accesible Bluetooth está desactivado No hay adaptador Bluetooth Error al configurar + Bomba no alcanzable Infusora no alcanzable Infusora Medtronic Omnipod - US & Canadá (916 MHz) - A nivel mundial (868 Mhz) - - - - + + %1$d día + %1$d días + + + %1$d hora + %1$d horas + diff --git a/rileylink/src/main/res/values-fr-rFR/strings.xml b/rileylink/src/main/res/values-fr-rFR/strings.xml index 590a06408e..82f02d9ba4 100644 --- a/rileylink/src/main/res/values-fr-rFR/strings.xml +++ b/rileylink/src/main/res/values-fr-rFR/strings.xml @@ -38,6 +38,7 @@ Association du RileyLink et de la Pompe Problème communication avec la pompe Connecté + RileyLink prêt L\'appareil n\'est pas RileyLink RileyLink non accessible @@ -49,9 +50,6 @@ Pompe Medtronic Omnipod - Omnipod (433.91 MHz) - US & Canada (916 MHz) - Mondial (868 Mhz) %1$d jour %1$d jours @@ -60,8 +58,4 @@ %1$d heure %1$d heures - - - - diff --git a/rileylink/src/main/res/values-ga-rIE/strings.xml b/rileylink/src/main/res/values-ga-rIE/strings.xml index cd28fb925a..eb781f84f2 100644 --- a/rileylink/src/main/res/values-ga-rIE/strings.xml +++ b/rileylink/src/main/res/values-ga-rIE/strings.xml @@ -5,8 +5,4 @@ - - - - diff --git a/rileylink/src/main/res/values-hr-rHR/strings.xml b/rileylink/src/main/res/values-hr-rHR/strings.xml index cd28fb925a..eb781f84f2 100644 --- a/rileylink/src/main/res/values-hr-rHR/strings.xml +++ b/rileylink/src/main/res/values-hr-rHR/strings.xml @@ -5,8 +5,4 @@ - - - - diff --git a/rileylink/src/main/res/values-it-rIT/strings.xml b/rileylink/src/main/res/values-it-rIT/strings.xml index db034c4f67..16bf32ea47 100644 --- a/rileylink/src/main/res/values-it-rIT/strings.xml +++ b/rileylink/src/main/res/values-it-rIT/strings.xml @@ -38,6 +38,7 @@ Sintonizzazione RileyLink e micro Problema di connessione al micro Connesso + RileyLink pronto Il dispositivo non è RileyLink RileyLink irraggiungibile @@ -49,9 +50,6 @@ Micro Medtronic Omnipod - Omnipod (433.91 MHz) - US & Canada (916 MHz) - Globale (868 Mhz) %1$d giorno %1$d giorni @@ -60,8 +58,4 @@ %1$d ora %1$d ore - - - - diff --git a/rileylink/src/main/res/values-iw-rIL/strings.xml b/rileylink/src/main/res/values-iw-rIL/strings.xml index cd28fb925a..eb781f84f2 100644 --- a/rileylink/src/main/res/values-iw-rIL/strings.xml +++ b/rileylink/src/main/res/values-iw-rIL/strings.xml @@ -5,8 +5,4 @@ - - - - diff --git a/rileylink/src/main/res/values-ko-rKR/strings.xml b/rileylink/src/main/res/values-ko-rKR/strings.xml index 386a7f4c15..12676e73d0 100644 --- a/rileylink/src/main/res/values-ko-rKR/strings.xml +++ b/rileylink/src/main/res/values-ko-rKR/strings.xml @@ -45,10 +45,4 @@ 메드트로닉 펌프 옴니포드 - 미국 & 캐나다(916 MHz) - 타국가(868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-lt-rLT/strings.xml b/rileylink/src/main/res/values-lt-rLT/strings.xml index 4da7997172..a0fa831831 100644 --- a/rileylink/src/main/res/values-lt-rLT/strings.xml +++ b/rileylink/src/main/res/values-lt-rLT/strings.xml @@ -49,9 +49,6 @@ Pompa Medtronic Omnipod - Omnipod (433.91 MHz) - US & Kanada (916 MHz) - Pasaulinis (868 Mhz) %1$d d. %1$d d. @@ -64,8 +61,4 @@ %1$d val. %1$d val. - - - - diff --git a/rileylink/src/main/res/values-nl-rNL/strings.xml b/rileylink/src/main/res/values-nl-rNL/strings.xml index 5bed2a08e8..270c3b7d12 100644 --- a/rileylink/src/main/res/values-nl-rNL/strings.xml +++ b/rileylink/src/main/res/values-nl-rNL/strings.xml @@ -45,10 +45,4 @@ Medtronic Pomp Omnipod - VS & Canada (916 MHz) - Wereldwijd (868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-pl-rPL/strings.xml b/rileylink/src/main/res/values-pl-rPL/strings.xml index f3425b5b3e..ce592e20a6 100644 --- a/rileylink/src/main/res/values-pl-rPL/strings.xml +++ b/rileylink/src/main/res/values-pl-rPL/strings.xml @@ -45,10 +45,4 @@ Pompa Medtronic Omnipod - US & Kanada (916 MHz) - Reszta świata (868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-pt-rBR/strings.xml b/rileylink/src/main/res/values-pt-rBR/strings.xml index af6835dcb4..20196bc5ea 100644 --- a/rileylink/src/main/res/values-pt-rBR/strings.xml +++ b/rileylink/src/main/res/values-pt-rBR/strings.xml @@ -46,10 +46,4 @@ Bomba Medtronic Omnipod - EUA & Canadá (916 MHz) - Em todo o Mundo (868 Mhz) - - - - diff --git a/rileylink/src/main/res/values-pt-rPT/strings.xml b/rileylink/src/main/res/values-pt-rPT/strings.xml index 45e3cf8e45..1e15811b02 100644 --- a/rileylink/src/main/res/values-pt-rPT/strings.xml +++ b/rileylink/src/main/res/values-pt-rPT/strings.xml @@ -49,9 +49,6 @@ Bomba Medtronic Omnipod - Omnipod (433.91 MHz) - EUA & Canadá (916 MHz) - Em todo o Mundo (868 Mhz) %1$d dia %1$d dias @@ -60,8 +57,4 @@ %1$d hora %1$d horas - - - - diff --git a/rileylink/src/main/res/values-ro-rRO/strings.xml b/rileylink/src/main/res/values-ro-rRO/strings.xml index a5d5d51f31..71f0fabd5f 100644 --- a/rileylink/src/main/res/values-ro-rRO/strings.xml +++ b/rileylink/src/main/res/values-ro-rRO/strings.xml @@ -49,9 +49,6 @@ Pompă Medtronic Omnipod - Omnipod (433.91 MHz) - US & Canada (916 MHz) - Globală (868 Mhz) %1$d zi %1$d zile @@ -62,8 +59,4 @@ %1$d ore %1$d ore - - - - diff --git a/rileylink/src/main/res/values-ru-rRU/strings.xml b/rileylink/src/main/res/values-ru-rRU/strings.xml index 946769e149..7733df7038 100644 --- a/rileylink/src/main/res/values-ru-rRU/strings.xml +++ b/rileylink/src/main/res/values-ru-rRU/strings.xml @@ -49,9 +49,6 @@ Помпа Medtronic Omnipod - Omnipod (433.91 МГц) - US & Canada (916 MHz) - Глобальн (868 Мгц) %1$d день %1$d дня @@ -64,8 +61,4 @@ %1$d ч %1$d ч - - - - diff --git a/rileylink/src/main/res/values-sk-rSK/strings.xml b/rileylink/src/main/res/values-sk-rSK/strings.xml index 2ba7d2863f..ef8ea57cd1 100644 --- a/rileylink/src/main/res/values-sk-rSK/strings.xml +++ b/rileylink/src/main/res/values-sk-rSK/strings.xml @@ -38,6 +38,7 @@ Ladenie RileyLinku a pumpy Problém s pripojením k pumpe Pripojené + RileyLink pripravený Zariadenie nie je RileyLink RileyLink nedostupný @@ -49,9 +50,6 @@ Pumpa Medtronic Omnipod - Omnipod (433,91 MHz) - US & Canada (916 MHz) - Celosvetovo (868 MHz) %1$d deň %1$d dní @@ -64,8 +62,4 @@ %1$d hodín %1$d hodín - - - - diff --git a/rileylink/src/main/res/values-sl-rSI/strings.xml b/rileylink/src/main/res/values-sl-rSI/strings.xml index cd28fb925a..eb781f84f2 100644 --- a/rileylink/src/main/res/values-sl-rSI/strings.xml +++ b/rileylink/src/main/res/values-sl-rSI/strings.xml @@ -5,8 +5,4 @@ - - - - diff --git a/rileylink/src/main/res/values-sv-rSE/strings.xml b/rileylink/src/main/res/values-sv-rSE/strings.xml index 91fb4c53c3..9499ab5db5 100644 --- a/rileylink/src/main/res/values-sv-rSE/strings.xml +++ b/rileylink/src/main/res/values-sv-rSE/strings.xml @@ -38,6 +38,7 @@ Justerar Riley Link mot pump Problem att ansluta till pumpen Ansluten + Riley Link redo Enheten är inte en Riley Link Riley Link kan inte nås @@ -49,9 +50,6 @@ Medtronicpump Omnipod - Omnipod (433.91 MHz) - USA & Kanada (916 MHz) - Resten av världen (868 MHz) %1$d dag %1$d dagar @@ -60,8 +58,4 @@ %1$d tim %1$d tim - - - - diff --git a/rileylink/src/main/res/values-tr-rTR/strings.xml b/rileylink/src/main/res/values-tr-rTR/strings.xml index cd28fb925a..eb781f84f2 100644 --- a/rileylink/src/main/res/values-tr-rTR/strings.xml +++ b/rileylink/src/main/res/values-tr-rTR/strings.xml @@ -5,8 +5,4 @@ - - - - diff --git a/rileylink/src/main/res/values-zh-rCN/strings.xml b/rileylink/src/main/res/values-zh-rCN/strings.xml index 05fcb2f739..737c236a0c 100644 --- a/rileylink/src/main/res/values-zh-rCN/strings.xml +++ b/rileylink/src/main/res/values-zh-rCN/strings.xml @@ -45,10 +45,4 @@ 美敦力泵 Omnipod - 美国 & 加拿大 (916MHz) - 全球 (868 Mhz) - - - - From f2d89ac42876fd14f65620edcb86e71133e4ebf0 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 24 Aug 2020 21:54:53 +0200 Subject: [PATCH 14/24] lint recommendations --- .../general/tidepool/messages/OpenDatasetRequestMessage.kt | 6 +++--- .../androidaps/plugins/insulin/ActivityGraph.java | 4 ++-- .../plugins/sensitivity/SensitivityAAPSPlugin.java | 2 +- .../sensitivity/SensitivityWeightedAveragePlugin.java | 2 +- .../java/info/nightscout/androidaps/db/TemporaryBasal.java | 2 +- .../graphExtensions/PointsWithLabelGraphSeries.java | 2 +- .../info/nightscout/androidaps/watchfaces/BIGChart.java | 4 ++-- .../nightscout/androidaps/watchfaces/CircleWatchface.java | 6 +++--- .../java/info/nightscout/androidaps/watchfaces/NOChart.java | 2 +- 9 files changed, 15 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/general/tidepool/messages/OpenDatasetRequestMessage.kt b/app/src/main/java/info/nightscout/androidaps/plugins/general/tidepool/messages/OpenDatasetRequestMessage.kt index c0b0d3a92b..bc6e00f59a 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/general/tidepool/messages/OpenDatasetRequestMessage.kt +++ b/app/src/main/java/info/nightscout/androidaps/plugins/general/tidepool/messages/OpenDatasetRequestMessage.kt @@ -14,7 +14,7 @@ class OpenDatasetRequestMessage (val serialNumber : String): BaseMessage() { @Expose var deviceId: String = TidepoolUploader.PUMP_TYPE + ":" + serialNumber @Expose - var time = DateUtil.toISOAsUTC(DateUtil.now()) + var time: String = DateUtil.toISOAsUTC(DateUtil.now()) @Expose var timezoneOffset = (DateUtil.getTimeZoneOffsetMs() / T.mins(1).msecs()).toInt() @Expose @@ -23,7 +23,7 @@ class OpenDatasetRequestMessage (val serialNumber : String): BaseMessage() { @Expose var client = ClientInfo() @Expose - var computerTime = DateUtil.toISONoZone(DateUtil.now()) + var computerTime: String = DateUtil.toISONoZone(DateUtil.now()) @Expose var dataSetType = "continuous" @Expose @@ -37,7 +37,7 @@ class OpenDatasetRequestMessage (val serialNumber : String): BaseMessage() { @Expose var timeProcessing = "none" @Expose - var timezone = TimeZone.getDefault().id + var timezone: String = TimeZone.getDefault().id @Expose var version = BuildConfig.VERSION_NAME diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/insulin/ActivityGraph.java b/app/src/main/java/info/nightscout/androidaps/plugins/insulin/ActivityGraph.java index cb8dabdde5..ee682272a1 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/insulin/ActivityGraph.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/insulin/ActivityGraph.java @@ -49,8 +49,8 @@ public class ActivityGraph extends GraphView { for (long time = 0; time <= hours * 60 * 60 * 1000; time += 5 * 60 * 1000L) { Iob iob = t.iobCalc(time, dia); - activityArray.add(new DataPoint(time / 60 / 1000, iob.activityContrib)); - iobArray.add(new DataPoint(time / 60 / 1000, iob.iobContrib)); + activityArray.add(new DataPoint(time / 60.0 / 1000, iob.activityContrib)); + iobArray.add(new DataPoint(time / 60.0 / 1000, iob.iobContrib)); } DataPoint[] activityDataPoints = new DataPoint[activityArray.size()]; diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityAAPSPlugin.java b/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityAAPSPlugin.java index 9f81d9306e..7e1ff541dd 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityAAPSPlugin.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityAAPSPlugin.java @@ -155,7 +155,7 @@ public class SensitivityAAPSPlugin extends AbstractSensitivityPlugin { Arrays.sort(deviations); double percentile = IobCobCalculatorPlugin.percentile(deviations, 0.50); - double basalOff = percentile * (60 / 5) / sens; + double basalOff = percentile * (60.0 / 5.0) / sens; double ratio = 1 + (basalOff / profile.getMaxDailyBasal()); if (percentile < 0) { // sensitive diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityWeightedAveragePlugin.java b/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityWeightedAveragePlugin.java index 27b1820735..d38489ea3b 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityWeightedAveragePlugin.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/sensitivity/SensitivityWeightedAveragePlugin.java @@ -159,7 +159,7 @@ public class SensitivityWeightedAveragePlugin extends AbstractSensitivityPlugin for (int i = 0; i < data.size(); i++) { long reversedWeigth = data.keyAt(i); double value = data.valueAt(i); - double weight = (hightestWeight - reversedWeigth) / 2; + double weight = (hightestWeight - reversedWeigth) / 2.0; weights += weight; weightedsum += weight * value; } diff --git a/core/src/main/java/info/nightscout/androidaps/db/TemporaryBasal.java b/core/src/main/java/info/nightscout/androidaps/db/TemporaryBasal.java index 660ec0ad0a..012016ee03 100644 --- a/core/src/main/java/info/nightscout/androidaps/db/TemporaryBasal.java +++ b/core/src/main/java/info/nightscout/androidaps/db/TemporaryBasal.java @@ -262,7 +262,7 @@ public class TemporaryBasal implements Interval, DbObjectBase { double dia = profile.getDia(); double dia_ago = time - dia * 60 * 60 * 1000; int aboutFiveMinIntervals = (int) Math.ceil(realDuration / 5d); - double tempBolusSpacing = realDuration / aboutFiveMinIntervals; + double tempBolusSpacing = (double) (realDuration / aboutFiveMinIntervals); for (long j = 0L; j < aboutFiveMinIntervals; j++) { // find middle of the interval diff --git a/core/src/main/java/info/nightscout/androidaps/plugins/general/overview/graphExtensions/PointsWithLabelGraphSeries.java b/core/src/main/java/info/nightscout/androidaps/plugins/general/overview/graphExtensions/PointsWithLabelGraphSeries.java index 8058a6eef6..edf003e859 100644 --- a/core/src/main/java/info/nightscout/androidaps/plugins/general/overview/graphExtensions/PointsWithLabelGraphSeries.java +++ b/core/src/main/java/info/nightscout/androidaps/plugins/general/overview/graphExtensions/PointsWithLabelGraphSeries.java @@ -264,7 +264,7 @@ public class PointsWithLabelGraphSeries e Rect bounds = new Rect(); mPaint.getTextBounds(value.getLabel(), 0, value.getLabel().length(), bounds); mPaint.setStyle(Paint.Style.STROKE); - float px = endX + bounds.height() / 2; + float px = endX + bounds.height() / 2.0f; float py = (float) (graphHeight * ratY + bounds.width() + 10); canvas.save(); canvas.rotate(-90, px, py); diff --git a/wear/src/main/java/info/nightscout/androidaps/watchfaces/BIGChart.java b/wear/src/main/java/info/nightscout/androidaps/watchfaces/BIGChart.java index 1717fbf662..7f46ba2fdf 100644 --- a/wear/src/main/java/info/nightscout/androidaps/watchfaces/BIGChart.java +++ b/wear/src/main/java/info/nightscout/androidaps/watchfaces/BIGChart.java @@ -98,8 +98,8 @@ public class BIGChart extends WatchFace implements SharedPreferences.OnSharedPre private String cobString = ""; private TextView statusView; - private long chartTapTime = 0l; - private long sgvTapTime = 0l; + private long chartTapTime = 0L; + private long sgvTapTime = 0L; @Override public void onCreate() { diff --git a/wear/src/main/java/info/nightscout/androidaps/watchfaces/CircleWatchface.java b/wear/src/main/java/info/nightscout/androidaps/watchfaces/CircleWatchface.java index fffb0a555e..4813942e1f 100644 --- a/wear/src/main/java/info/nightscout/androidaps/watchfaces/CircleWatchface.java +++ b/wear/src/main/java/info/nightscout/androidaps/watchfaces/CircleWatchface.java @@ -216,7 +216,7 @@ public class CircleWatchface extends WatchFace implements SharedPreferences.OnSh public String getMinutes() { String minutes = "--\'"; if (getDatetime() != 0) { - minutes = ((int) Math.floor((System.currentTimeMillis() - getDatetime()) / 60000)) + "\'"; + minutes = ((int) Math.floor((System.currentTimeMillis() - getDatetime()) / 60000.0)) + "\'"; } return minutes; } @@ -669,7 +669,7 @@ public class CircleWatchface extends WatchFace implements SharedPreferences.OnSh } float offsetMultiplier = (((displaySize.x / 2f) - PADDING) / 12f); - float offset = (float) Math.max(1, Math.ceil((System.currentTimeMillis() - entry.timestamp) / (1000 * 60 * 5))); + float offset = (float) Math.max(1, Math.ceil((System.currentTimeMillis() - entry.timestamp) / (1000 * 60 * 5.0))); size = bgToAngle((float) entry.sgv); addArch(canvas, offset * offsetMultiplier + 10, color, (float) size); addArch(canvas, (float) size, offset * offsetMultiplier + 10, getBackgroundColor(), (float) (360 - size)); @@ -695,7 +695,7 @@ public class CircleWatchface extends WatchFace implements SharedPreferences.OnSh barColor = darken(getLowColor(), .5); } float offsetMultiplier = (((displaySize.x / 2f) - PADDING) / 12f); - float offset = (float) Math.max(1, Math.ceil((System.currentTimeMillis() - entry.timestamp) / (1000 * 60 * 5))); + float offset = (float) Math.max(1, Math.ceil((System.currentTimeMillis() - entry.timestamp) / (1000 * 60 * 5.0))); size = bgToAngle((float) entry.sgv); addArch(canvas, offset * offsetMultiplier + 11, barColor, (float) size - 2); // Dark Color Bar addArch(canvas, (float) size - 2, offset * offsetMultiplier + 11, indicatorColor, 2f); // Indicator at end of bar diff --git a/wear/src/main/java/info/nightscout/androidaps/watchfaces/NOChart.java b/wear/src/main/java/info/nightscout/androidaps/watchfaces/NOChart.java index f799b0cf6e..0686c91bd9 100644 --- a/wear/src/main/java/info/nightscout/androidaps/watchfaces/NOChart.java +++ b/wear/src/main/java/info/nightscout/androidaps/watchfaces/NOChart.java @@ -78,7 +78,7 @@ public class NOChart extends WatchFace implements SharedPreferences.OnSharedPref private String sgvString = "--"; private String externalStatusString = "no status"; private TextView statusView; - private long sgvTapTime = 0l; + private long sgvTapTime = 0L; @Override public void onCreate() { From 8619e4156eafaf5275f217bf4b2c1000a63ee03c Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Wed, 26 Aug 2020 15:42:28 +0200 Subject: [PATCH 15/24] korean rs fix --- .../androidaps/danars/services/BLEComm.kt | 64 ++++++++++--------- 1 file changed, 35 insertions(+), 29 deletions(-) diff --git a/danars/src/main/java/info/nightscout/androidaps/danars/services/BLEComm.kt b/danars/src/main/java/info/nightscout/androidaps/danars/services/BLEComm.kt index cc24cf5c22..be6a4fde0a 100644 --- a/danars/src/main/java/info/nightscout/androidaps/danars/services/BLEComm.kt +++ b/danars/src/main/java/info/nightscout/androidaps/danars/services/BLEComm.kt @@ -51,6 +51,7 @@ class BLEComm @Inject internal constructor( ) { companion object { + private const val WRITE_DELAY_MILLIS: Long = 50 private const val UART_READ_UUID = "0000fff1-0000-1000-8000-00805f9b34fb" private const val UART_WRITE_UUID = "0000fff2-0000-1000-8000-00805f9b34fb" @@ -375,22 +376,22 @@ class BLEComm @Inject internal constructor( if (decryptedBuffer[0] == BleEncryption.DANAR_PACKET__TYPE_ENCRYPTION_RESPONSE.toByte()) { when (decryptedBuffer[1]) { // 1st packet exchange - BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__PUMP_CHECK.toByte() -> + BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__PUMP_CHECK.toByte() -> processConnectResponse(decryptedBuffer) - BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__TIME_INFORMATION.toByte() -> + BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__TIME_INFORMATION.toByte() -> processEncryptionResponse(decryptedBuffer) - BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__CHECK_PASSKEY.toByte() -> + BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__CHECK_PASSKEY.toByte() -> processPasskeyCheck(decryptedBuffer) - BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__PASSKEY_REQUEST.toByte() -> + BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__PASSKEY_REQUEST.toByte() -> processPairingRequest(decryptedBuffer) - BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__PASSKEY_RETURN.toByte() -> + BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__PASSKEY_RETURN.toByte() -> processPairingRequest2(decryptedBuffer) - BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__GET_PUMP_CHECK.toByte() -> { + BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__GET_PUMP_CHECK.toByte() -> { // not easy mode, request time info if (decryptedBuffer[2] == 0x05.toByte()) sendTimeInfo() // easy mode @@ -453,32 +454,19 @@ class BLEComm @Inject internal constructor( // v3 2nd layer encryption v3Encryption = true danaPump.v3RSPump = true - val model = decryptedBuffer[5] - // val protocol = decryptedBuffer[7] - if (model == 0x05.toByte()) { + danaPump.hwModel = decryptedBuffer[5].toInt() + danaPump.protocol = decryptedBuffer[7].toInt() + // grab randomSyncKey + sp.putString(resourceHelper.gs(R.string.key_danars_v3_randomsynckey) + danaRSPlugin.mDeviceName, String.format("%02x", decryptedBuffer[decryptedBuffer.size - 1])) + + if (danaPump.hwModel == 0x05) { aapsLogger.debug(LTag.PUMPBTCOMM, "<<<<< " + "ENCRYPTION__PUMP_CHECK V3 (OK)" + " " + DanaRS_Packet.toHexString(decryptedBuffer)) // Dana RS Pump - val randomPairingKey = sp.getString(resourceHelper.gs(R.string.key_danars_v3_randompairingkey) + danaRSPlugin.mDeviceName, "") - val pairingKey = sp.getString(resourceHelper.gs(R.string.key_danars_v3_pairingkey) + danaRSPlugin.mDeviceName, "") - if (randomPairingKey.isNotEmpty() && pairingKey.isNotEmpty()) { - val randomSyncKey = String.format("%02x", decryptedBuffer[decryptedBuffer.size - 1]) - sp.putString(resourceHelper.gs(R.string.key_danars_v3_randomsynckey) + danaRSPlugin.mDeviceName, randomSyncKey) - val tPairingKey = Base64.decode(pairingKey, Base64.DEFAULT) - val tRandomPairingKey = Base64.decode(randomPairingKey, Base64.DEFAULT) - var tRandomSyncKey: Byte = 0 - if (randomSyncKey.isNotEmpty()) { - tRandomSyncKey = randomSyncKey.toInt(16).toByte() - } - bleEncryption.setPairingKeys(tPairingKey, tRandomPairingKey, tRandomSyncKey) - sendV3PairingInformation(0) - } else { - sendV3PairingInformation(1) - } - } else if (model == 0x06.toByte()) { + sendV3PairingInformation() + } else if (danaPump.hwModel == 0x06) { aapsLogger.debug(LTag.PUMPBTCOMM, "<<<<< " + "ENCRYPTION__PUMP_CHECK V3 EASY (OK)" + " " + DanaRS_Packet.toHexString(decryptedBuffer)) // Dana RS Easy - val bytes: ByteArray = bleEncryption.getEncryptedPacket(BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__GET_EASYMENU_CHECK, null, null) - writeCharacteristicNoResponse(uartWriteBTGattChar, bytes) + sendEasyMenuCheck() } // response PUMP : error status } else if (decryptedBuffer.size == 6 && decryptedBuffer[2] == 'P'.toByte() && decryptedBuffer[3] == 'U'.toByte() && decryptedBuffer[4] == 'M'.toByte() && decryptedBuffer[5] == 'P'.toByte()) { @@ -523,6 +511,24 @@ class BLEComm @Inject internal constructor( // 2nd packet v3 // 0x00 Start encryption, 0x01 Request pairing + private fun sendV3PairingInformation() { + val randomPairingKey = sp.getString(resourceHelper.gs(R.string.key_danars_v3_randompairingkey) + danaRSPlugin.mDeviceName, "") + val pairingKey = sp.getString(resourceHelper.gs(R.string.key_danars_v3_pairingkey) + danaRSPlugin.mDeviceName, "") + if (randomPairingKey.isNotEmpty() && pairingKey.isNotEmpty()) { + val tPairingKey = Base64.decode(pairingKey, Base64.DEFAULT) + val tRandomPairingKey = Base64.decode(randomPairingKey, Base64.DEFAULT) + var tRandomSyncKey: Byte = 0 + val randomSyncKey = sp.getString(resourceHelper.gs(R.string.key_danars_v3_randomsynckey) + danaRSPlugin.mDeviceName, "") + if (randomSyncKey.isNotEmpty()) { + tRandomSyncKey = randomSyncKey.toInt(16).toByte() + } + bleEncryption.setPairingKeys(tPairingKey, tRandomPairingKey, tRandomSyncKey) + sendV3PairingInformation(0) + } else { + sendV3PairingInformation(1) + } + } + private fun sendV3PairingInformation(requestNewPairing: Int) { val params = byteArrayOf(requestNewPairing.toByte()) val bytes: ByteArray = bleEncryption.getEncryptedPacket(BleEncryption.DANAR_PACKET__OPCODE_ENCRYPTION__TIME_INFORMATION, params, null) @@ -635,7 +641,7 @@ class BLEComm @Inject internal constructor( isUnitUD = decryptedBuffer[3] == 0x01.toByte() // request time information - if (v3Encryption) sendV3PairingInformation(1) + if (v3Encryption) sendV3PairingInformation() else sendTimeInfo() } From d7817792cab8a86bf12bceef8561a7bf5cce67ea Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Wed, 26 Aug 2020 18:12:03 +0200 Subject: [PATCH 16/24] show correct constraint in loop plugin --- .../androidaps/plugins/aps/loop/LoopPlugin.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/info/nightscout/androidaps/plugins/aps/loop/LoopPlugin.java b/app/src/main/java/info/nightscout/androidaps/plugins/aps/loop/LoopPlugin.java index ba01db465c..0040dbc6fc 100644 --- a/app/src/main/java/info/nightscout/androidaps/plugins/aps/loop/LoopPlugin.java +++ b/app/src/main/java/info/nightscout/androidaps/plugins/aps/loop/LoopPlugin.java @@ -392,7 +392,7 @@ public class LoopPlugin extends PluginBase implements LoopInterface { } // Prepare for pumps using % basals - if (pump.getPumpDescription().tempBasalStyle == PumpDescription.PERCENT) { + if (pump.getPumpDescription().tempBasalStyle == PumpDescription.PERCENT && allowPercentage()) { result.usePercent = true; } result.percent = (int) (result.rate / profile.getBasal() * 100); @@ -650,7 +650,6 @@ public class LoopPlugin extends PluginBase implements LoopInterface { */ private void applyTBRRequest(APSResult request, Profile profile, Callback callback) { - boolean allowPercentage = virtualPumpPlugin.isEnabled(PluginType.PUMP); if (!request.tempBasalRequested) { if (callback != null) { @@ -681,7 +680,7 @@ public class LoopPlugin extends PluginBase implements LoopInterface { long now = System.currentTimeMillis(); TemporaryBasal activeTemp = treatmentsPlugin.getTempBasalFromHistory(now); - if (request.usePercent && allowPercentage) { + if (request.usePercent && allowPercentage()) { if (request.percent == 100 && request.duration == 0) { if (activeTemp != null) { getAapsLogger().debug(LTag.APS, "applyAPSRequest: cancelTempBasal()"); @@ -784,6 +783,10 @@ public class LoopPlugin extends PluginBase implements LoopInterface { commandQueue.bolus(detailedBolusInfo, callback); } + private boolean allowPercentage() { + return virtualPumpPlugin.isEnabled(PluginType.PUMP); + } + public void disconnectPump(int durationInMinutes, Profile profile) { PumpInterface pump = activePlugin.getActivePump(); From f9853e2e8fa07dfb5e3496f62a904dc37225e3e6 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Wed, 26 Aug 2020 18:14:14 +0200 Subject: [PATCH 17/24] New Crowdin updates (#2925) * New translations strings.xml (Spanish) * New translations strings.xml (Spanish) * New translations strings.xml (Czech) * New translations strings.xml (German) * New translations strings.xml (Slovak) * New translations strings.xml (Portuguese) * New translations strings.xml (Portuguese) * New translations strings.xml (Portuguese) * New translations strings.xml (Portuguese) * New translations strings.xml (Italian) * New translations strings.xml (Lithuanian) * New translations strings.xml (Lithuanian) * New translations strings.xml (Swedish) * New translations strings.xml (Swedish) --- app/src/main/res/values-es-rES/strings.xml | 3 +++ app/src/main/res/values-pt-rPT/strings.xml | 12 ++++++++++++ app/src/main/res/values-sv-rSE/strings.xml | 2 +- core/src/main/res/values-cs-rCZ/strings.xml | 1 + core/src/main/res/values-de-rDE/strings.xml | 1 + core/src/main/res/values-es-rES/strings.xml | 1 + core/src/main/res/values-it-rIT/strings.xml | 1 + core/src/main/res/values-lt-rLT/strings.xml | 3 +++ core/src/main/res/values-pt-rPT/strings.xml | 16 ++++++++++++++++ core/src/main/res/values-sk-rSK/strings.xml | 1 + core/src/main/res/values-sv-rSE/strings.xml | 1 + rileylink/src/main/res/values-lt-rLT/strings.xml | 1 + rileylink/src/main/res/values-pt-rPT/strings.xml | 1 + 13 files changed, 43 insertions(+), 1 deletion(-) diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index 2c8af4892d..c5a874037a 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -262,7 +262,9 @@ Bomba reconectada Comando remoto no permitido El bolo remoto no está disponible. Inténtalo de nuevo más tarde. + Para iniciar una basal de %1$.2fU/h durante %2$d min, responder con el código %3$s Para cambiar el perfil a %1$s %2$d%% responder con el código %3$s + Para iniciar un bolo extendido de %1$.2fU durante %2$d minutos, responder con el código %3$s Para introducir %1$dg en %2$s responder con código %3$s Para iniciar una basal de %1$d%% durante %2$d min, responder con el código %3$s Para cancelar lazo por %1$d minutos responde con código %2$s @@ -1054,6 +1056,7 @@ Enviar SMS a todos los números Mandar mensaje SMS COB vs IOB + Restricción de bolo aplicada: %1$.2f U a %2$.2f U ! Se ha detectado una absorción lenta de hidratos de carbono: %2$d%% de tiempo. Compruebe de nuevo su calculo. Los COB se pueden sobrestimar, por lo que ¡se podría administrar más insulina de la cuenta!]]> Administrar esta parte del resultado del asistente de bolos [%] El asistente de bolos realiza el cálculo, pero solo se entrega esta parte de la insulina calculada. Útil con el algoritmo SMB. diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index b4b4d77296..b3a3dde7cb 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -156,6 +156,7 @@ BasalTemp Bólus Prolongado Versão Nightscout: + A faltar %1$d g Preferências exportadas Exportar configurações para Importar configurações de @@ -234,6 +235,10 @@ Número mínimo de minutos que deve decorrer entre um bólus remoto e o próximo Quantos minutos deve decorrer, pelo menos, entre um bólus e o próximo Para sua segurança, para editar esta preferência você precisa adicionar pelo menos 2 números de telefone. + Bólus %1$.2f U administrador com sucesso + A ser administrado %1$.2f U + Bólus %1$.2f U administrador com sucesso + Bólus de Refeição %1$.2f U administrado com sucesso Alvo %1$s para %2$d minutos Alvo %1$s para %2$d minutos definido com sucesso Alvo Temp cancelado com êxito @@ -257,7 +262,9 @@ Bomba ligada novamente O comando remoto não é permitido O bólus remoto não está disponível. Tente novamente mais tarde. + Para iniciar basal %1$.2f U/h por %2$d min responda com o código %3$s Para mudar o perfil para %1$s %2$d%% responda com o código %3$s + Para iniciar bólus prolongado %1$.2f U por %2$d min responda com o código %3$s Para inserir %1$dg em %2$s responda com código %3$s Para começar a basal %1$d%% U/h durante %2$d min responda com o código %3$s Para suspender o loop por %1$d minutos resposta com código %2$s @@ -266,6 +273,7 @@ Para desactivar o loop responda com o código %1$s Basal temporária %1$.2fU/h para %2$d min iniciada com êxito Bólus prolongado %1$.2fU/h para %2$d min iniciado com êxito + Hidratos %1$d g inseridos com sucesso Introdução de %1$dg de hidratos falhou Basal temporária %1$d%% U/h durante%2$d min iniciada com êxito Início basal temp falhou @@ -846,6 +854,7 @@ Os códigos exibidos neste dispositivo e na sua bomba correspondem? Emparelhamento Insight Accu-Chek Insight + %1$.2f U / %2$.2f U administrado %1$s: %2$s Tubo mudado Hora da bomba actualizada @@ -903,6 +912,7 @@ Prolongado: %1$.2f / %2$.2f U por %3$d min Multionda: %1$.2f / %2$.2f U por %3$d min TDD: %1$.2f + Reser.: %1$.2f U Bat.: %1$d%% Duração máxima da recuperação [s] Duração mínima da recuperação [s] @@ -1045,6 +1055,8 @@ Enviar SMS: %1$s Enviar SMS para todos os números Enviar SMS com texto + COB vs IOB + Restrição de bólus aplicada: %1$.2f U a %2$.2f U !!!!! Absorção lenta de hidratos detectada: %2$d%% do tempo. Verifique o seu cálculo. COB pode estar sobreestimado, assim mais insulina pode ser dada !!!]]> Administrar esta parte do resultado do assistente de bólus [%] Assistente de bólus executa o cálculo, mas apenas esta parte da insulina calculada é administada. Útil com o algoritmo SMB. diff --git a/app/src/main/res/values-sv-rSE/strings.xml b/app/src/main/res/values-sv-rSE/strings.xml index 7f225e9d90..a3f85c31c6 100644 --- a/app/src/main/res/values-sv-rSE/strings.xml +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -61,7 +61,7 @@ Eversense-appen. IOB fr basal: BG TT - KH + Kolhydrater Korrektion Bolus IOB Utför nu diff --git a/core/src/main/res/values-cs-rCZ/strings.xml b/core/src/main/res/values-cs-rCZ/strings.xml index 627b1131c1..5c50a40e10 100644 --- a/core/src/main/res/values-cs-rCZ/strings.xml +++ b/core/src/main/res/values-cs-rCZ/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑: %2$.2f U Bol: %3$.2f U Baz: %4$.2f U(%5$.0f%%) Sach.: %6$.0f g]]> Kontrola glykémie + Ruční glykémie nebo kalibrace Oznámení Poznámka Otázka diff --git a/core/src/main/res/values-de-rDE/strings.xml b/core/src/main/res/values-de-rDE/strings.xml index ee4307a648..ad417695c0 100644 --- a/core/src/main/res/values-de-rDE/strings.xml +++ b/core/src/main/res/values-de-rDE/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑: %2$.2f IE Bol: %3$.2f U Bas: %4$.2f IE(%5$.0f%%) KH: %6$.0f g]]> BZ-Test + Manuelle BZ oder Kalibrierung Ankündigung Notiz Frage diff --git a/core/src/main/res/values-es-rES/strings.xml b/core/src/main/res/values-es-rES/strings.xml index ae7fb664ca..c151d08d3c 100644 --- a/core/src/main/res/values-es-rES/strings.xml +++ b/core/src/main/res/values-es-rES/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑: %2$.2fU Bol: %3$.2fU Bas: %4$.2fU(%5$.0f%%) Carbs: %6$.0fg]]> Medir glucosa + Calibración o BG Manual Aviso Nota Pregunta diff --git a/core/src/main/res/values-it-rIT/strings.xml b/core/src/main/res/values-it-rIT/strings.xml index 8554f2f330..e96c363982 100644 --- a/core/src/main/res/values-it-rIT/strings.xml +++ b/core/src/main/res/values-it-rIT/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑: %2$.2f U Bol: %3$.2f U Bas: %4$.2f U(%5$.0f%%) CHO: %6$.0f g]]> Controllo BG + BG manuale o Calibrazione Avviso Nota Domanda diff --git a/core/src/main/res/values-lt-rLT/strings.xml b/core/src/main/res/values-lt-rLT/strings.xml index c8d8de4e81..d10a20ae0e 100644 --- a/core/src/main/res/values-lt-rLT/strings.xml +++ b/core/src/main/res/values-lt-rLT/strings.xml @@ -102,6 +102,8 @@ min. d + Neteisingas slaptažodis + Slaptažodžiai nesutampa Bazės reikšmės nesuderintos su valandomis: %1$s Valandinė bazė pakeista mažiausia palaikoma verte: %1$s @@ -129,6 +131,7 @@ %1$s: ∑: %2$.2f vv Boluso: %3$.2f vv Bazės: %4$.2f vv(%5$.0f%%) AV: %6$.0f g]]> KG testas + KG iš kraujo arba kalibracija Pranešimas Pastaba Klausimas diff --git a/core/src/main/res/values-pt-rPT/strings.xml b/core/src/main/res/values-pt-rPT/strings.xml index 51e28dbbb6..d126bb9804 100644 --- a/core/src/main/res/values-pt-rPT/strings.xml +++ b/core/src/main/res/values-pt-rPT/strings.xml @@ -8,15 +8,22 @@ Perfil Basal actualizado na bomba Entrada Inválida Erro na administração da Basal Temp + A ser administrado %1$.2f U À espera da bomba A ligar durante %1$d s + A administrar %1$.2f U Cumprimento A ligar Ligado Desligado A desligar AndroidAPS iniciado + %1$.1f U + %1$.2f U + %1$+.2f U + %1$d g %1$.0f / %2$d U + %1$.2f U/h %1$.2f h %1$d mins A bomba está ocupada @@ -77,6 +84,8 @@ Localização Não Está Activa Para a Pesquisa Bluetooth funcionar em dispositivos mais recentes, a localização deve ser activada. AAPS não acompanha a sua localização e pode ser desactivada após o emparelhamento bem-sucedido. + %1$d m atrás + %1$.1f h atrás h dias horas @@ -93,6 +102,8 @@ m d + Palavra-passe incorreta + Palavras-passe não correspondem Valores das basais não definidos por horas: %1$s Valor da basal alterado para o valor mínimo suportado: %1$s @@ -114,9 +125,13 @@ Perfil inválido: %1$s + %1$d min + %1$s: ∑: %2$.2f U Ból: %3$.2f U Bas: %4$.2f U(%5$.0f%%)]]> + %1$s: ∑: %2$.2f U Ból: %3$.2f U Bas: %4$.2f U(%5$.0f%%) Hidratos: %6$.0f g]]> Verificar Glic + Glicemia Manual or Calibração Anúncio Nota Questão @@ -154,6 +169,7 @@ À espera de resultado SMB + %d g Hidratos Adicionais Necessários Dentro de %d Minutos Estatísticas Dose diária acumulativa diff --git a/core/src/main/res/values-sk-rSK/strings.xml b/core/src/main/res/values-sk-rSK/strings.xml index d9c002729a..715982233f 100644 --- a/core/src/main/res/values-sk-rSK/strings.xml +++ b/core/src/main/res/values-sk-rSK/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑: %2$.2f JI Bol: %3$.2f JI Baz: %4$.2f JI(%5$.0f%%) Sach.: %6$.0f g]]> Kontrola glykémie + Ručné meranie, alebo kalibrácia Oznámenie Poznámka Otázka diff --git a/core/src/main/res/values-sv-rSE/strings.xml b/core/src/main/res/values-sv-rSE/strings.xml index 3916ba74e8..45877484d3 100644 --- a/core/src/main/res/values-sv-rSE/strings.xml +++ b/core/src/main/res/values-sv-rSE/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑: %2$.2fU Bol: %3$.2fU Bas: %4$.2fU(%5$.0f%%) KH: %6$.0fg]]> BG-kontroll + Manuellt BG eller kalibrering Meddelande Anteckning Fråga diff --git a/rileylink/src/main/res/values-lt-rLT/strings.xml b/rileylink/src/main/res/values-lt-rLT/strings.xml index a0fa831831..517a199dae 100644 --- a/rileylink/src/main/res/values-lt-rLT/strings.xml +++ b/rileylink/src/main/res/values-lt-rLT/strings.xml @@ -38,6 +38,7 @@ RileyLink ir Pompos suderinimas Sujungimo su pompa problema Prisijungta + RileyLink paruoštas Įrenginys nėra RileyLink RileyLink nepasiekiama diff --git a/rileylink/src/main/res/values-pt-rPT/strings.xml b/rileylink/src/main/res/values-pt-rPT/strings.xml index 1e15811b02..9976e95d1e 100644 --- a/rileylink/src/main/res/values-pt-rPT/strings.xml +++ b/rileylink/src/main/res/values-pt-rPT/strings.xml @@ -38,6 +38,7 @@ A ajustar RileyLink e a Bomba Problema ao ligar à Bomba Ligado + RileyLink pronto Dispositivo não é RileyLink RileyLink inacessível From 134b79dd8acea21737485a46ad8e9bfe22e3064c Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Thu, 27 Aug 2020 10:38:53 +0200 Subject: [PATCH 18/24] show tir range --- .../info/nightscout/androidaps/utils/stats/TirCalculator.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/info/nightscout/androidaps/utils/stats/TirCalculator.kt b/app/src/main/java/info/nightscout/androidaps/utils/stats/TirCalculator.kt index bbda132d80..2d65ddbdf2 100644 --- a/app/src/main/java/info/nightscout/androidaps/utils/stats/TirCalculator.kt +++ b/app/src/main/java/info/nightscout/androidaps/utils/stats/TirCalculator.kt @@ -76,7 +76,7 @@ class TirCalculator @Inject constructor( val tit30 = calculate(30, lowTitMgdl, highTitMgdl) val averageTit30 = averageTIR(tit30) return HtmlHelper.fromHtml( - "
" + resourceHelper.gs(R.string.tir) + ":
" + + "
" + resourceHelper.gs(R.string.tir) + " (" + Profile.toCurrentUnitsString(profileFunction, lowTirMgdl) + "-" + Profile.toCurrentUnitsString(profileFunction, highTirMgdl) + "):
" + toText(resourceHelper, tir7) + "
" + resourceHelper.gs(R.string.average) + " (" + Profile.toCurrentUnitsString(profileFunction, lowTirMgdl) + "-" + Profile.toCurrentUnitsString(profileFunction, highTirMgdl) + "):
" + averageTir7.toText(resourceHelper, tir7.size()) + "
" + From e5b6cf7231ddf9b79da0b881e60fd35a9c5ebf00 Mon Sep 17 00:00:00 2001 From: Bart Sopers Date: Sat, 29 Aug 2020 05:37:26 +0200 Subject: [PATCH 19/24] Add option to gradually increase alarm volume --- app/src/main/res/values/strings.xml | 1 + app/src/main/res/xml/pref_alerts.xml | 5 ++ .../androidaps/services/AlarmSoundService.kt | 67 +++++++++++++++++-- core/src/main/res/values/strings.xml | 2 +- 4 files changed, 70 insertions(+), 5 deletions(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index d3bd9b86bf..17343701cf 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -657,6 +657,7 @@ Missed BG readings raise_urgent_alarms_as_android_notification Use system notifications for alerts and notifications + Gradually increase the volume for alerts and notifications enable_pump_unreachable_alert enable_missed_bg_readings enable_carbs_required_alert_local diff --git a/app/src/main/res/xml/pref_alerts.xml b/app/src/main/res/xml/pref_alerts.xml index a7783f7954..ebb71e5611 100644 --- a/app/src/main/res/xml/pref_alerts.xml +++ b/app/src/main/res/xml/pref_alerts.xml @@ -47,6 +47,11 @@ android:key="@string/key_raise_notifications_as_android_notifications" android:title="@string/raise_notifications_as_android_notifications" /> + + diff --git a/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt b/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt index f84e6af6e2..8f5eb74190 100644 --- a/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt +++ b/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt @@ -4,6 +4,7 @@ import android.content.Context import android.content.Intent import android.media.AudioManager import android.media.MediaPlayer +import android.os.Handler import android.os.IBinder import dagger.android.DaggerService import info.nightscout.androidaps.core.R @@ -11,16 +12,38 @@ import info.nightscout.androidaps.interfaces.NotificationHolderInterface import info.nightscout.androidaps.logging.AAPSLogger import info.nightscout.androidaps.logging.LTag import info.nightscout.androidaps.utils.resources.ResourceHelper +import info.nightscout.androidaps.utils.sharedPreferences.SP import javax.inject.Inject +import kotlin.math.ln +import kotlin.math.pow class AlarmSoundService : DaggerService() { @Inject lateinit var aapsLogger: AAPSLogger @Inject lateinit var resourceHelper: ResourceHelper @Inject lateinit var notificationHolder: NotificationHolderInterface + @Inject lateinit var sp: SP private var player: MediaPlayer? = null private var resourceId = R.raw.error + companion object { + private const val VOLUME_INCREASE_STEPS = 40; // Total number of steps to increase volume with + private const val VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS = 3_000L; // Number of milliseconds that the notification should initially be silent + private const val VOLUME_INCREASE_BASE_DELAY_MILLIS = 15_000; // Base delay between volume increments + private const val VOLUME_INCREASE_MIN_DELAY_MILLIS = 2_000L; // Minimum delay between volume increments + + /* + * Delay until the next volumen increment will be the lowest value of VOLUME_INCREASE_MIN_DELAY_MILLIS and + * VOLUME_INCREASE_BASE_DELAY_MILLIS - (currentVolumeLevel - 1) ^ VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT * 1000 + * + */ + private const val VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT = 2.0; + + } + + private val handler = Handler() + private var currentVolumeLevel = 0 + override fun onBind(intent: Intent): IBinder? = null override fun onCreate() { @@ -41,10 +64,16 @@ class AlarmSoundService : DaggerService() { val afd = resourceHelper.openRawResourceFd(resourceId) ?: return START_STICKY player?.setDataSource(afd.fileDescriptor, afd.startOffset, afd.length) afd.close() - player?.isLooping = true // Set looping - val manager = getSystemService(Context.AUDIO_SERVICE) as AudioManager - if (!manager.isMusicActive) { - player?.setVolume(100f, 100f) + player?.isLooping = true + val audioManager = getAudioManager(); + if (!audioManager.isMusicActive) { + if (sp.getBoolean(R.string.key_gradually_increase_notification_volume, false)) { + currentVolumeLevel = 0; + player?.setVolume(0f, 0f) + handler.postDelayed(volumeUpdater, VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS) + } else { + player?.setVolume(1f, 1f) + } } player?.prepare() player?.start() @@ -55,8 +84,38 @@ class AlarmSoundService : DaggerService() { } override fun onDestroy() { + handler.removeCallbacks(volumeUpdater) player?.stop() player?.release() aapsLogger.debug(LTag.CORE, "onDestroy") } + + private fun getAudioManager(): AudioManager { + return getSystemService(Context.AUDIO_SERVICE) as AudioManager + } + + // TODO replace with VolumeShaper when min API level >= 26 + private val volumeUpdater = object : Runnable { + override fun run() { + if (player?.isPlaying == true) { + currentVolumeLevel++; + + val volumePercentage = 100.0.coerceAtMost(currentVolumeLevel / VOLUME_INCREASE_STEPS.toDouble() * 100) + val volume = 1 - (ln(1.0.coerceAtLeast(100.0 - volumePercentage)) / ln(100.0)) + + aapsLogger.debug(LTag.CORE, "Setting notification volume to {} ({} %)", volume, volumePercentage) + + val floatVolume = volume.toFloat() + player?.setVolume(floatVolume, floatVolume) + + if (currentVolumeLevel < VOLUME_INCREASE_STEPS) { + // Increase volume faster as time goes by + val delay = VOLUME_INCREASE_MIN_DELAY_MILLIS.coerceAtLeast(VOLUME_INCREASE_BASE_DELAY_MILLIS - + ((currentVolumeLevel - 1).toDouble().pow(VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT) * 1000).toLong()) + aapsLogger.debug(LTag.CORE, "Next notification volume increment in {}ms", delay) + handler.postDelayed(this, delay); + } + } + } + } } \ No newline at end of file diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index 9ed19651f5..7d8c9b865b 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -22,6 +22,7 @@ ns_uploadlocalprofile bt_watchdog bt_watchdog_last + gradually_increase_notification_volume Pairing @@ -281,5 +282,4 @@ - \ No newline at end of file From 3115f32e316feeb55f9a36fb652b21bd8114f318 Mon Sep 17 00:00:00 2001 From: Bart Sopers Date: Sat, 29 Aug 2020 05:52:36 +0200 Subject: [PATCH 20/24] Small improvements in option to gradually increase alarm volume --- .../androidaps/services/AlarmSoundService.kt | 31 +++++++++---------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt b/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt index 8f5eb74190..f907c12ad2 100644 --- a/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt +++ b/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt @@ -41,7 +41,7 @@ class AlarmSoundService : DaggerService() { } - private val handler = Handler() + private val increaseVolumeHandler = Handler() private var currentVolumeLevel = 0 override fun onBind(intent: Intent): IBinder? = null @@ -70,7 +70,7 @@ class AlarmSoundService : DaggerService() { if (sp.getBoolean(R.string.key_gradually_increase_notification_volume, false)) { currentVolumeLevel = 0; player?.setVolume(0f, 0f) - handler.postDelayed(volumeUpdater, VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS) + increaseVolumeHandler.postDelayed(volumeUpdater, VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS) } else { player?.setVolume(1f, 1f) } @@ -84,7 +84,7 @@ class AlarmSoundService : DaggerService() { } override fun onDestroy() { - handler.removeCallbacks(volumeUpdater) + increaseVolumeHandler.removeCallbacks(volumeUpdater) player?.stop() player?.release() aapsLogger.debug(LTag.CORE, "onDestroy") @@ -97,24 +97,21 @@ class AlarmSoundService : DaggerService() { // TODO replace with VolumeShaper when min API level >= 26 private val volumeUpdater = object : Runnable { override fun run() { - if (player?.isPlaying == true) { - currentVolumeLevel++; + currentVolumeLevel++; - val volumePercentage = 100.0.coerceAtMost(currentVolumeLevel / VOLUME_INCREASE_STEPS.toDouble() * 100) - val volume = 1 - (ln(1.0.coerceAtLeast(100.0 - volumePercentage)) / ln(100.0)) + val volumePercentage = 100.0.coerceAtMost(currentVolumeLevel / VOLUME_INCREASE_STEPS.toDouble() * 100) + val volume = (1 - (ln(1.0.coerceAtLeast(100.0 - volumePercentage)) / ln(100.0))).toFloat() - aapsLogger.debug(LTag.CORE, "Setting notification volume to {} ({} %)", volume, volumePercentage) + aapsLogger.debug(LTag.CORE, "Setting notification volume to {} ({} %)", volume, volumePercentage) - val floatVolume = volume.toFloat() - player?.setVolume(floatVolume, floatVolume) + player?.setVolume(volume, volume) - if (currentVolumeLevel < VOLUME_INCREASE_STEPS) { - // Increase volume faster as time goes by - val delay = VOLUME_INCREASE_MIN_DELAY_MILLIS.coerceAtLeast(VOLUME_INCREASE_BASE_DELAY_MILLIS - - ((currentVolumeLevel - 1).toDouble().pow(VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT) * 1000).toLong()) - aapsLogger.debug(LTag.CORE, "Next notification volume increment in {}ms", delay) - handler.postDelayed(this, delay); - } + if (currentVolumeLevel < VOLUME_INCREASE_STEPS) { + // Increase volume faster as time goes by + val delay = VOLUME_INCREASE_MIN_DELAY_MILLIS.coerceAtLeast(VOLUME_INCREASE_BASE_DELAY_MILLIS - + ((currentVolumeLevel - 1).toDouble().pow(VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT) * 1000).toLong()) + aapsLogger.debug(LTag.CORE, "Next notification volume increment in {}ms", delay) + increaseVolumeHandler.postDelayed(this, delay); } } } From 05ed3cb83a27d42fab0f963a9310d1c787f85508 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20M=C3=BCthing?= Date: Sat, 29 Aug 2020 09:53:56 +0200 Subject: [PATCH 21/24] Remove stray semicolons at end of line --- .../androidaps/services/AlarmSoundService.kt | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt b/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt index f907c12ad2..6da80cf330 100644 --- a/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt +++ b/core/src/main/java/info/nightscout/androidaps/services/AlarmSoundService.kt @@ -27,17 +27,17 @@ class AlarmSoundService : DaggerService() { private var resourceId = R.raw.error companion object { - private const val VOLUME_INCREASE_STEPS = 40; // Total number of steps to increase volume with - private const val VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS = 3_000L; // Number of milliseconds that the notification should initially be silent - private const val VOLUME_INCREASE_BASE_DELAY_MILLIS = 15_000; // Base delay between volume increments - private const val VOLUME_INCREASE_MIN_DELAY_MILLIS = 2_000L; // Minimum delay between volume increments + private const val VOLUME_INCREASE_STEPS = 40 // Total number of steps to increase volume with + private const val VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS = 3_000L // Number of milliseconds that the notification should initially be silent + private const val VOLUME_INCREASE_BASE_DELAY_MILLIS = 15_000 // Base delay between volume increments + private const val VOLUME_INCREASE_MIN_DELAY_MILLIS = 2_000L // Minimum delay between volume increments /* * Delay until the next volumen increment will be the lowest value of VOLUME_INCREASE_MIN_DELAY_MILLIS and * VOLUME_INCREASE_BASE_DELAY_MILLIS - (currentVolumeLevel - 1) ^ VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT * 1000 * */ - private const val VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT = 2.0; + private const val VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT = 2.0 } @@ -65,10 +65,10 @@ class AlarmSoundService : DaggerService() { player?.setDataSource(afd.fileDescriptor, afd.startOffset, afd.length) afd.close() player?.isLooping = true - val audioManager = getAudioManager(); + val audioManager = getAudioManager() if (!audioManager.isMusicActive) { if (sp.getBoolean(R.string.key_gradually_increase_notification_volume, false)) { - currentVolumeLevel = 0; + currentVolumeLevel = 0 player?.setVolume(0f, 0f) increaseVolumeHandler.postDelayed(volumeUpdater, VOLUME_INCREASE_INITIAL_SILENT_TIME_MILLIS) } else { @@ -111,8 +111,8 @@ class AlarmSoundService : DaggerService() { val delay = VOLUME_INCREASE_MIN_DELAY_MILLIS.coerceAtLeast(VOLUME_INCREASE_BASE_DELAY_MILLIS - ((currentVolumeLevel - 1).toDouble().pow(VOLUME_INCREASE_DELAY_DECREMENT_EXPONENT) * 1000).toLong()) aapsLogger.debug(LTag.CORE, "Next notification volume increment in {}ms", delay) - increaseVolumeHandler.postDelayed(this, delay); + increaseVolumeHandler.postDelayed(this, delay) } } } -} \ No newline at end of file +} From 9972601b8d9943508cf69f4e92449bddbf287d01 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 31 Aug 2020 07:59:02 +0200 Subject: [PATCH 22/24] New Crowdin updates (#2931) * New translations strings.xml (Swedish) * New translations strings.xml (Russian) * New translations strings.xml (Russian) * New translations strings.xml (French) --- app/src/main/res/values-sv-rSE/strings.xml | 4 ++-- core/src/main/res/values-fr-rFR/strings.xml | 1 + core/src/main/res/values-ru-rRU/strings.xml | 3 +++ rileylink/src/main/res/values-ru-rRU/strings.xml | 1 + 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/values-sv-rSE/strings.xml b/app/src/main/res/values-sv-rSE/strings.xml index a3f85c31c6..6b84159dea 100644 --- a/app/src/main/res/values-sv-rSE/strings.xml +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -149,7 +149,7 @@ Eversense-appen. Procent Absolut Anteckning - Tid för händelse + När Profil Loggat av Glukostyp @@ -843,7 +843,7 @@ Eversense-appen. Fel på NSClient. Överväg att starta om NSClient och Nightscout-webbplatsen. AS Version %1$s tillgänglig - Tidsförskjutning + KH-tid Föredraget APS-läge Total Kalkyl diff --git a/core/src/main/res/values-fr-rFR/strings.xml b/core/src/main/res/values-fr-rFR/strings.xml index 0220d0a6fa..e03ee413c5 100644 --- a/core/src/main/res/values-fr-rFR/strings.xml +++ b/core/src/main/res/values-fr-rFR/strings.xml @@ -131,6 +131,7 @@ %1$s: ∑ : %2$.2f U Bol : %3$.2f U Bas : %4$.2f U (%5$.0f%%) Gluc : %6$.0f g]]> Contrôle Glycémie + Gly manuelle/Calib. Notification Remarque Question diff --git a/core/src/main/res/values-ru-rRU/strings.xml b/core/src/main/res/values-ru-rRU/strings.xml index 9a9efa0898..c33374d2ad 100644 --- a/core/src/main/res/values-ru-rRU/strings.xml +++ b/core/src/main/res/values-ru-rRU/strings.xml @@ -102,6 +102,8 @@ мин дн + Неверный пароль + Пароли не совпадают Базальные значения не выровнены по часам: %1$s Значение базала заменено минимальной поддерживаемой величиной: %1$s @@ -129,6 +131,7 @@ %1$s∑: %2$.2fед Бол: %3$.2fед Баз: %4$.2fед(%5$.0f%%) Угл: %6$.0fг]]> Проверка ГК + Ввести значение ГК или калибровку Оовещение Примечание Вопрос diff --git a/rileylink/src/main/res/values-ru-rRU/strings.xml b/rileylink/src/main/res/values-ru-rRU/strings.xml index 7733df7038..4e823167e8 100644 --- a/rileylink/src/main/res/values-ru-rRU/strings.xml +++ b/rileylink/src/main/res/values-ru-rRU/strings.xml @@ -38,6 +38,7 @@ Настройка RileyLink и помпы Проблема подключения к помпе Соединение установлено + RileyLink готов Устройство не является RileyLink RileyLink недоступен From a55781451b57bdb51f2370ddcfbf2779146f6d03 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 31 Aug 2020 20:18:03 +0200 Subject: [PATCH 23/24] New Crowdin updates (#2941) * New translations strings.xml (Slovak) * New translations strings.xml (Portuguese) * New translations strings.xml (Czech) * New translations strings.xml (German) --- app/src/main/res/values-cs-rCZ/strings.xml | 1 + app/src/main/res/values-de-rDE/strings.xml | 1 + app/src/main/res/values-pt-rPT/strings.xml | 1 + app/src/main/res/values-sk-rSK/strings.xml | 1 + 4 files changed, 4 insertions(+) diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml index 44abc13ddf..2e0c6745a4 100644 --- a/app/src/main/res/values-cs-rCZ/strings.xml +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -559,6 +559,7 @@ Pumpa nedostupná Chybějící glykémie Používat systémové notifikace pro výstrahy a oznámení + Postupně zvyšovat hlasitost výstrah a oznámení Místní výstrahy Výstraha při nedostupných glykémiích Výstraha při nedostupné pumpě diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml index b804e1284c..957f3574c0 100644 --- a/app/src/main/res/values-de-rDE/strings.xml +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -559,6 +559,7 @@ Pumpe ist nicht erreichbar BZ-Werte fehlen Benutze Systemmeldungen für Alarme und Meldungen + Passe die Lautstärke für Alarme und Hinweise etwas an. Lokale Alarme Alarm, wenn keine Glukose-Daten empfangen werden Alarm, wenn die Pumpe nicht erreichbar ist diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index b3a3dde7cb..99ddc71a2d 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -559,6 +559,7 @@ Bomba inacessível Leituras Glic. perdidas Usar as notificações do sistema para alertas e notificações + Aumentar gradualmente o volume de alertas e notificações Alertas local Alerta caso nenhuma glicemia seja recebida Alerta caso não seja possivel alcançar a bomba diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index ff4c243225..a10a53eb76 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -559,6 +559,7 @@ Pumpa nedostupná Chýbajúce hodnoty glykémie Používať systémové notifikácie pre výstrahy a oznámenia + Postupne zvyšovať hlasitosť upozornení a oznámení Lokálne výstrahy Výstraha pri nedostupných hodnotách glykémie Výstraha pri nedostupnej pumpe From 984134ce589fea7bae54e6c734d212451f43cb02 Mon Sep 17 00:00:00 2001 From: Milos Kozak Date: Mon, 31 Aug 2020 20:57:32 +0200 Subject: [PATCH 24/24] 2.7.0-rc5 --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index c633d46524..083f2f3b0c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -126,7 +126,7 @@ android { targetSdkVersion 28 multiDexEnabled true versionCode 1500 - version "2.6.7-dev" + version "2.7.0-rc5" buildConfigField "String", "VERSION", '"' + version + '"' buildConfigField "String", "BUILDVERSION", '"' + generateGitBuild() + '-' + generateDate() + '"' buildConfigField "String", "REMOTE", '"' + generateGitRemote() + '"'