From dac8576a7476470b30e1edd4cdf50eb3d2985b03 Mon Sep 17 00:00:00 2001
From: Tony Mack <tmack@tux.cs.princeton.edu>
Date: Wed, 3 Sep 2014 13:19:42 -0400
Subject: [PATCH] raise validation error if slice name prefix is incorrect

---
 planetstack/core/models/slice.py | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/planetstack/core/models/slice.py b/planetstack/core/models/slice.py
index e474560..0ecc99d 100644
--- a/planetstack/core/models/slice.py
+++ b/planetstack/core/models/slice.py
@@ -11,6 +11,7 @@ from core.models import Tag
 from django.contrib.contenttypes import generic
 from core.models import Service
 from core.models import Deployment
+from django.core.exceptions import ValidationError
 
 # Create your models here.
 
@@ -38,6 +39,11 @@ class Slice(PlCoreBase):
         return "%s_%s" % (self.site.login_base, self.name)
 
     def save(self, *args, **kwds):
+        
+        site = Site.objects.get(id=self.site.id)
+        if not self.name.startswith(site.login_base):
+            raise ValidationError('slice name must begin with %s' % site.login_base)
+        
         if self.serviceClass is None:
             # We allowed None=True for serviceClass because Django evolution
             # will fail unless it is allowed. But, we we really don't want it to
-- 
2.47.0