From 9ad6f25be1e0412913c1097f0fd1f496e85bedac Mon Sep 17 00:00:00 2001
From: Frederico Sequeira <frederico.sequeira@ext.ec.europa.eu>
Date: Mon, 6 Jan 2025 09:15:38 +0000
Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=E2=9C=8F=EF=B8=8F=20=20Bug=20and?=
 =?UTF-8?q?=20typo=20fix?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 netbox_sys_plugin/forms/provider.py | 2 +-
 netbox_sys_plugin/views.py          | 8 ++++++--
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/netbox_sys_plugin/forms/provider.py b/netbox_sys_plugin/forms/provider.py
index 27bff58..3f42f87 100644
--- a/netbox_sys_plugin/forms/provider.py
+++ b/netbox_sys_plugin/forms/provider.py
@@ -87,7 +87,7 @@ class VmTypeForm(NetBoxModelForm):
     """
 
     cluster_type = DynamicModelChoiceField(
-        queryset=ClusterType.objects.all(), required=True, label="Cluster Type"
+        queryset=ClusterType.objects.all(), required=True, label="Provider Type"
     )
     virtual_machine_type_name = forms.CharField(
         max_length=200, min_length=1, required=True, label="Name"
diff --git a/netbox_sys_plugin/views.py b/netbox_sys_plugin/views.py
index 86d7834..ec5dcb7 100644
--- a/netbox_sys_plugin/views.py
+++ b/netbox_sys_plugin/views.py
@@ -1,6 +1,7 @@
 """Model views definitions"""
 
 from netbox.views import generic
+from django.core.exceptions import ValidationError
 from django.shortcuts import render, redirect
 from django.contrib import messages
 from django.urls import reverse
@@ -142,8 +143,11 @@ class CreateVmView(generic.ObjectView):
             messages.success(request, "Virtual Machine and all related the objects created successfully!")
             #return render(request, self.template_name, {'form': form})
             return redirect(reverse('virtualization:virtualmachine_list'))
-        except ValueError as e:
-            messages.error(request, f"Error: {str(e)}")
+        except (ValueError, ValidationError) as e:
+            if 'Virtual machine name must be unique per cluster.' in str(e):
+                messages.error(request, "Virtual Machine must be unique per Provider")
+            else:
+                messages.error(request, f"{str(e)}")
         return render(request, self.template_name, {'form': form})
 
 #Domain Names
-- 
GitLab