Slugify uniquely and move scss imports

master
Nick Sergeant 2012-02-11 10:23:09 -05:00
parent 4e97aaa1ad
commit 0e8dc4dad7
6 changed files with 46 additions and 7576 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,5 @@
@import 'bootstrap', 'themes';
@import 'bootstrap.css';
@import 'themes.css';
// Fonts
$Helvetica: 'Helvetica Neue', Helvetica, Arial, 'Liberation Sans', FreeSans, sans-serif;

View File

@ -10,6 +10,8 @@ from pygments import highlight
from pygments.lexers import get_lexer_by_name
from pygments.formatters import HtmlFormatter
from snipts.utils import slugify_uniquely
import md5
@ -42,7 +44,7 @@ class Snipt(models.Model):
self.key = md5.new(self.slug).hexdigest()
if not self.slug:
self.slug = slugify(self.title)[:50]
self.slug = slugify_uniquely(self.title)
self.stylized = highlight(self.code,
get_lexer_by_name(self.lexer, encoding='UTF-8'),
@ -55,7 +57,7 @@ class Snipt(models.Model):
return self.title
def get_absolute_url(self):
return "/%s/%s/" % (self.user.username, self.slug)
return '/%s/%s/' % (self.user.username, self.slug)
def get_full_absolute_url(self):
if settings.DEBUG:
@ -65,7 +67,7 @@ class Snipt(models.Model):
root = 'https://snipt.net'
else:
root = 'http://snipt.net'
return "%s/%s/%s/" % (root, self.user.username, self.slug)
return '%s/%s/%s/' % (root, self.user.username, self.slug)
def get_embed_url(self):
return 'http%s://%s/embed/%s/' % ('s' if settings.USE_HTTPS else '',

12
snipt/snipts/utils.py Normal file
View File

@ -0,0 +1,12 @@
from django.template.defaultfilters import slugify
def slugify_uniquely(value, model, slugfield="slug"):
suffix = 0
potential = base = slugify(value)[:255]
while True:
if suffix:
potential = "-".join([base, str(suffix)])
if not model.objects.filter(**{slugfield: potential}).count():
return potential
suffix += 1