]> git.sommitrealweird.co.uk Git - sommitrealweird.git/blobdiff - sommitrealweird/bpcms/models.py
title fix for blog
[sommitrealweird.git] / sommitrealweird / bpcms / models.py
index ad88e4ab14d2de1654db30c83b1540035f7fd73e..6df678162223fa770634c60f74f45684139e5032 100644 (file)
@@ -1,6 +1,7 @@
 from django.db import models
-from bpcms.content_val import is_allowed_name
 from django.conf import settings
+from django.contrib import admin
+from django.core.cache import cache
 
 FORMAT_CHOICES = (
         ('rst', 'reStructuredText'),
@@ -8,11 +9,11 @@ FORMAT_CHOICES = (
     )
 
 class Document(models.Model):
-    title = models.CharField(maxlength=150)
+    title = models.CharField(max_length=150)
     islive = models.BooleanField()
     folder = models.ForeignKey('Folder', null=True, blank=True)
-    format = models.CharField(maxlength=10, choices=FORMAT_CHOICES)
-    slug = models.SlugField(prepopulate_from=("title",), validator_list=[is_allowed_name,])
+    format = models.CharField(max_length=10, choices=FORMAT_CHOICES)
+    slug = models.SlugField()
     content = models.TextField()
 
     def __str__(self):
@@ -47,21 +48,18 @@ class Document(models.Model):
 
         return "%s%s%s/" %(settings.BPCMS_ROOT, folderstring, self.slug)
 
-    class Admin:
-        pass
-
 class Folder(models.Model):
-    title = models.CharField(maxlength=150)
-    slug = models.SlugField(prepopulate_from=("title",), validator_list=[is_allowed_name,])
+    title = models.CharField(max_length=150)
+    slug = models.SlugField()
     parent = models.ForeignKey('self', null=True, blank=True)
 
     def __str__(self):
         return self.__unicode__()
 
     def __unicode__(self):
-        return u'%s' %(self.title)
+        return u'%s - %s' %(self.get_path(), self.title)
 
-    def get_basic_url(self):
+    def get_path(self):
         folders = []
         curfolder = self
         while curfolder != None:
@@ -73,7 +71,15 @@ class Folder(models.Model):
         if folderstring != u'':
             folderstring = "%s/" %(folderstring,)
 
-        return "%s%s" %(settings.BPCMS_ROOT, folderstring)
+        return folderstring
+    
+    def save(self, force_insert=False, force_update=False):
+        super(Folder, self).save(force_insert, force_update)
+        if self.parent == None:
+            cache.delete('bpcms_mainmenu')
+        else:
+            cache.delete('bpcms_submenu_%s' %(self.get_path()))
+        
 
-    class Admin:
-        pass
+    def get_basic_url(self):
+        return "%s%s" %(settings.BPCMS_ROOT, self.get_path())