summaryrefslogtreecommitdiff
path: root/stapp
diff options
context:
space:
mode:
authorjayparikh1112012-07-26 12:32:17 +0530
committerjayparikh1112012-07-26 12:32:17 +0530
commitfb25a59dd7e675fd785dcd2626e5521489ffbd7f (patch)
tree92733734122ce8a29443e281fc1f88c730193932 /stapp
parente63812344a37fb8ff510e388e78069974cef5bcf (diff)
downloadstproject-fb25a59dd7e675fd785dcd2626e5521489ffbd7f.tar.gz
stproject-fb25a59dd7e675fd785dcd2626e5521489ffbd7f.tar.bz2
stproject-fb25a59dd7e675fd785dcd2626e5521489ffbd7f.zip
random video id generation
Diffstat (limited to 'stapp')
-rw-r--r--stapp/video/models.py15
-rw-r--r--stapp/video/views.py2
2 files changed, 16 insertions, 1 deletions
diff --git a/stapp/video/models.py b/stapp/video/models.py
index 0f79ca7..b40067b 100644
--- a/stapp/video/models.py
+++ b/stapp/video/models.py
@@ -3,12 +3,24 @@ from django.db.models.signals import post_delete
from signals import delete_files
from taggit.managers import TaggableManager
+from base64 import b32encode
+from hashlib import sha1
+from random import random
import settings
import uuid
import datetime
import Image, os
+def pkgen():
+ rude = ('lol',)
+ bad_pk = True
+ while bad_pk:
+ pk = b32encode(sha1(str(random())).digest()).lower()[:6]
+ bad_pk = False
+ for rw in rude:
+ if pk.find(rw) >= 0: bad_pk = True
+ return pk
def get_file_path(instance, filename):
ext = filename.split('.')[-1]
@@ -26,12 +38,15 @@ class Video(models.Model):
filename = models.FileField(upload_to=get_file_path)
image = models.ImageField(upload_to=get_image_path)
description = models.TextField()
+ mykey = models.CharField(max_length=6, default=pkgen)
created = models.DateTimeField(auto_now_add=True)
tags = TaggableManager()
def __unicode__(self):
return self.name
+
+
#Call the delete_files signal to delete physical files on delete of record
post_delete.connect(delete_files, Video)
diff --git a/stapp/video/views.py b/stapp/video/views.py
index d517c74..54d3f54 100644
--- a/stapp/video/views.py
+++ b/stapp/video/views.py
@@ -11,7 +11,7 @@ def show(request):
#Get the latest video to display on the front page
latest_video = Video.objects.latest('created')
-
+ return HttpResponse(latest_video.mykey)
#Get last three modified modules
latest_modules = Module.objects.order_by('-modified')[0:3]
all_modules = Module.objects.order_by('modified')