Esempio n. 1
0
 def get_context_data(self, **kwargs):
     context = super().get_context_data()
     context["mdm"] = True
     mbu = context["object"]
     context["dep_profile_list"] = (DEPProfile.objects.select_related("virtual_server")
                                                      .filter(enrollment_secret__meta_business_unit=mbu)
                                                      .order_by("name", "pk"))
     context["ota_enrollment_list"] = (OTAEnrollment.objects.filter(enrollment_secret__meta_business_unit=mbu)
                                                            .order_by("name", "pk"))
     context["kext_policy_list"] = (KernelExtensionPolicy.objects.filter(meta_business_unit=mbu,
                                                                         trashed_at__isnull=True)
                                                                 .order_by("pk"))
     context["enrollment_package_list"] = (MDMEnrollmentPackage.objects.filter(meta_business_unit=mbu,
                                                                               trashed_at__isnull=True)
                                                                       .order_by("builder", "pk"))
     existing_enrollment_package_builders = [ep.builder for ep in context["enrollment_package_list"]]
     create_enrollment_package_url = reverse("mdm:create_enrollment_package", args=(mbu.pk,))
     context["create_enrollment_package_links"] = [("{}?builder={}".format(create_enrollment_package_url, k),
                                                    v.name)
                                                   for k, v in get_standalone_package_builders().items()
                                                   if k not in existing_enrollment_package_builders]
     context["configuration_profile_list"] = (ConfigurationProfile.objects.filter(meta_business_unit=mbu,
                                                                                  trashed_at__isnull=True)
                                                                          .order_by("payload_description", "pk"))
     return context
Esempio n. 2
0
 def dispatch(self, request, *args, **kwargs):
     standalone_builders = get_standalone_package_builders()
     self.meta_business_unit = get_object_or_404(MetaBusinessUnit,
                                                 pk=kwargs["pk"])
     try:
         self.builder_key = request.GET["builder"]
         self.builder = standalone_builders[self.builder_key]
     except KeyError:
         raise Http404
     try:
         # test if an active mep exists. protect ourselves if there is a bug and many exist!
         mep = MDMEnrollmentPackage.objects.filter(
             meta_business_unit=self.meta_business_unit,
             builder=self.builder_key,
             trashed_at__isnull=True)[0]
     except IndexError:
         pass
     else:
         # prevent the creation of a second enrollment package with the same builder
         # if an active enrollment package exists
         messages.error(
             request,
             "An active enrollment package for this business unit and this service already exists."
         )
         return HttpResponseRedirect(mep.get_absolute_url())
     return super().dispatch(request, *args, **kwargs)
Esempio n. 3
0
 def dispatch(self, request, *args, **kwargs):
     self.simplemdm_instance = get_object_or_404(SimpleMDMInstance, pk=kwargs["pk"])
     standalone_builders = get_standalone_package_builders()
     try:
         self.builder_key = request.GET["builder"]
         self.builder = standalone_builders[self.builder_key]
     except KeyError:
         raise Http404
     return super().dispatch(request, *args, **kwargs)
Esempio n. 4
0
 def get_context_data(self, **kwargs):
     ctx = super().get_context_data(**kwargs)
     ctx["setup"] = True
     ctx["title"] = "{} SimpleMDM instance".format(self.object.account_name)
     ctx["apps"] = list(self.object.simplemdmapp_set.all())
     ctx["app_number"] = len(ctx["apps"])
     create_simplemdm_app_path = reverse("simplemdm:create_simplemdm_app", args=(self.object.id,))
     ctx["create_app_links"] = [("{}?builder={}".format(create_simplemdm_app_path, k),
                                v.name) for k, v in get_standalone_package_builders().items()]
     return ctx
Esempio n. 5
0
 def get_builder_class(self):
     return get_standalone_package_builders()[self.builder]
Esempio n. 6
0
 def get_builder_class(self):
     from zentral.utils.osx_package import get_standalone_package_builders
     return get_standalone_package_builders()[self.builder]