diff --git a/accounts/forms.py b/accounts/forms.py index 5db2cb54..f2d665fb 100644 --- a/accounts/forms.py +++ b/accounts/forms.py @@ -32,6 +32,10 @@ class UserInstanceForm(ModelForm): class Meta: model = UserInstance fields = "__all__" + # the rights beyond power and console, as the VM's Users tab names them + labels = {"is_change": _("Change settings"), "is_delete": _("Delete the VM"), + "is_vnc": _("Change console settings")} + help_texts = {"is_vnc": _("Only together with Change settings")} class UniqueEmailMixin: diff --git a/accounts/tests/test_account_page.py b/accounts/tests/test_account_page.py index a94306c3..66e52513 100644 --- a/accounts/tests/test_account_page.py +++ b/accounts/tests/test_account_page.py @@ -71,3 +71,12 @@ class AccountPageTests(TestCase): url = reverse("accounts:account_ssh_key_delete", args=[self.alice.pk, self.key.pk]) self.assertEqual(self.client.post(url).status_code, 403) self.assertTrue(UserSSHKey.objects.exists()) + + def test_the_owner_form_names_the_rights_as_the_vm_page_does(self): + compute = Compute.objects.create(name="ap-host2", hostname="localhost", login="", password="", details="", type=4) + vm = Instance.objects.create(compute=compute, name="ap-vm2", uuid="00000000-0000-0000-0000-000000000002") + owner = UserInstance.objects.create(user=self.alice, instance=vm) + response = self.client.get(reverse("accounts:user_instance_update", args=[owner.pk])) + for label in ("Change settings", "Delete the VM", "Change console settings"): + self.assertContains(response, label) + self.assertNotContains(response, "Is vnc") diff --git a/templates/common/confirm_delete.html b/templates/common/confirm_delete.html index 60a43907..3656cecf 100644 --- a/templates/common/confirm_delete.html +++ b/templates/common/confirm_delete.html @@ -1,29 +1,31 @@ {% extends "base.html" %} -{% load django_bootstrap5 %} {% load bootstrap_icons %} {% load i18n %} {% block title %}{% trans "Delete" %} {{ object }}{% endblock %} -{% block page_heading %}{% trans "Delete" %} {{ object }}{% endblock page_heading %} +{% block page_header %} +