diff --git a/apps/rebreak-magic/app/components/IosDeviceCard.vue b/apps/rebreak-magic/app/components/IosDeviceCard.vue index 862c15d..0d7c679 100644 --- a/apps/rebreak-magic/app/components/IosDeviceCard.vue +++ b/apps/rebreak-magic/app/components/IosDeviceCard.vue @@ -62,9 +62,8 @@ Verbinde dein iPhone mit USB, um den Schutz zu vervollständigen. - +
@@ -129,7 +128,10 @@
-
+
Lokales USB-Gerät @@ -382,17 +384,20 @@ const mismatches = computed(() => { }); const isProtectionIncomplete = computed(() => { - if (!props.isConnected || !props.iphone) return true; if (mdmState.value.loading || !mdmState.value.data) return false; const backend = mdmState.value.data; if (!backend.enrolled) return true; if (!backend.supervised) return true; if (!backend.lockProfileInstalled) return true; - if (!props.iphone.isSupervised) return true; - if (!localEnrollment.value) return true; - if (!localLock.value) return true; - if (!localApp.value) return true; + + // Local checks only matter when an iPhone is actually connected via USB. + if (props.isConnected && props.iphone) { + if (!props.iphone.isSupervised) return true; + if (!localEnrollment.value) return true; + if (!localLock.value) return true; + if (!localApp.value) return true; + } return false; }); @@ -400,27 +405,29 @@ const isProtectionIncomplete = computed(() => { const showIncompleteHint = computed(() => isProtectionIncomplete.value); const incompleteMessage = computed(() => { - if (!props.isConnected || !props.iphone) { - return "Verbinde dein iPhone per USB, damit wir den lokalen Schutz prüfen können."; - } if (!mdmState.value.data?.enrolled) { return "Das Gerät ist im Backend noch nicht MDM-enrolled."; } - if (!props.iphone.isSupervised) { - return "Das iPhone ist nicht supervised."; - } - if (!localEnrollment.value) { - return "Das Enrollment-Profil fehlt auf dem iPhone."; - } - if (!localLock.value) { - return "Das Lock-Profil fehlt auf dem iPhone."; - } - if (!localApp.value) { - return "Die ReBreak App fehlt auf dem iPhone."; + if (!mdmState.value.data?.supervised) { + return "Das Gerät ist im Backend nicht supervised."; } if (!mdmState.value.data?.lockProfileInstalled) { return "Das Lock-Profil ist im Backend noch nicht als aktiv markiert."; } + if (props.isConnected && props.iphone) { + if (!props.iphone.isSupervised) { + return "Das iPhone ist nicht supervised."; + } + if (!localEnrollment.value) { + return "Das Enrollment-Profil fehlt auf dem iPhone."; + } + if (!localLock.value) { + return "Das Lock-Profil fehlt auf dem iPhone."; + } + if (!localApp.value) { + return "Die ReBreak App fehlt auf dem iPhone."; + } + } return "Schutz ist noch unvollständig."; });