diff --git a/apps/rebreak-magic/app/components/IosDeviceCard.vue b/apps/rebreak-magic/app/components/IosDeviceCard.vue
index 4ba6329..f1d7384 100644
--- a/apps/rebreak-magic/app/components/IosDeviceCard.vue
+++ b/apps/rebreak-magic/app/components/IosDeviceCard.vue
@@ -271,7 +271,7 @@
{{ action.label }}
{{ action.label }}
@@ -325,6 +325,7 @@ const {
stopLocalProfileServer,
getInstalledProfiles,
mdmPush,
+ reportDeviceProtectionState,
} = useTauri();
const enrollmentPhase = ref<"idle" | "loading" | "waiting" | "checking" | "success" | "error">("idle");
@@ -540,6 +541,13 @@ const topBadge = computed(() => {
variant: "subtle" as const,
};
}
+ if (props.isConnected && props.iphone) {
+ return {
+ label: "Voller Schutz aktiv",
+ color: "success" as const,
+ variant: "subtle" as const,
+ };
+ }
const cfg = statusConfig[props.device.status];
return { label: cfg.label, color: cfg.color, variant: cfg.variant };
});
@@ -550,6 +558,7 @@ interface IosAction {
color: "primary" | "warning" | "success" | "error" | "neutral";
variant: "solid" | "soft" | "outline" | "ghost";
to?: string;
+ disabled?: boolean;
}
const action = computed(() => {
@@ -678,10 +687,11 @@ const action = computed(() => {
}
return {
- label: "Synchronisieren",
- icon: "i-heroicons-arrow-path",
+ label: "Voller Schutz aktiv",
+ icon: "i-heroicons-shield-check",
color: "success",
variant: "soft",
+ disabled: true,
};
});
@@ -888,7 +898,21 @@ async function checkInlineLockProfile() {
}
lockLogs.value.push("✓ Lock-Profil erkannt");
+
+ lockLogs.value.push("→ Melde Lock-Profil-Status an Backend …");
+ await reportDeviceProtectionState(
+ props.device.deviceId,
+ "ios",
+ "nefilter",
+ true,
+ "Lock-Profil via QR-Code installiert",
+ );
+ lockLogs.value.push("✓ Backend aktualisiert");
+
+ lockLogs.value.push("→ Hole aktuellen Backend-Status …");
await refreshMdmStatus();
+ lockLogs.value.push("✓ Status aktualisiert");
+
lockPhase.value = "success";
} catch (e: any) {
lockError.value = e?.message ?? "Prüfung fehlgeschlagen";