Added url handler for user

This commit is contained in:
Fergal Moran
2012-10-12 21:51:01 +01:00
parent b4012ee07d
commit bbbe97b017
4 changed files with 20 additions and 3 deletions

View File

@@ -24,11 +24,14 @@ class MixResource(BackboneCompatibleResource):
return super(MixResource, self).obj_create(bundle, request, user=request.user.get_profile(), local_file=file_name, uid=uid)
def obj_get_list(self, request=None, **kwargs):
sort = 'latest'
if 'sort' in request.GET and request.GET['sort']:
if 'user' in request.GET and request.GET['user']:
user = request.GET['user']
return Mix.get_for_username(user)
elif 'sort' in request.GET and request.GET['sort']:
sort = request.GET['sort']
return Mix.get_listing(sort, request.user)
return Mix.get_listing(sort, request.user)
return Mix.get_listing('latest', request.user)
def dehydrate_mix_image(self, bundle):
return bundle.obj.get_image_url()

View File

@@ -84,6 +84,11 @@ class Mix(_BaseModel):
return rfc822.formatdate(rfc822.mktime_tz(rfc822.parsedate_tz(self.upload_date.strftime("%a, %d %b %Y %H:%M:%S"))))
@classmethod
def get_for_username(cls, user):
queryset = Mix.objects.filter(user__profile_slug__exact=user)
return queryset
@classmethod
def get_listing(cls, listing_type, user=None):
queryset = None

View File

@@ -28,6 +28,7 @@ class UserProfile(_BaseModel):
avatar_type = models.CharField(max_length=15, default='social')
avatar_image = models.ImageField(blank=True, upload_to=avatar_name)
display_name = models.CharField(blank=True, max_length=35)
profile_slug = models.CharField(blank=True, max_length=35)
activity_sharing = models.IntegerField(default=0)
activity_sharing_networks = models.IntegerField(default=0)
def save(self, size=(260, 180)):

View File

@@ -14,6 +14,14 @@
value="<%= item.display_name %>">
</div>
</div>
<div class="clearfix control-group" id="div_profile_slug">
<label class="control-label" for="profile_slug">Profile Slug</label>
<div class="controls">
<input type="text" maxlength="75" name="email" class="textinput textInput" id="profile_slug"
value="<%= item.profile_slug %>">
</div>
</div>
<div class="clearfix control-group" id="div_email">
<label class="control-label" for="email">E-mail address</label>