cleanup imports and syntax warnings

This commit is contained in:
j 2011-01-01 17:14:42 +05:30
commit 2d5f924891
46 changed files with 452 additions and 517 deletions

View file

@ -5,24 +5,25 @@ from datetime import datetime
from django.contrib.auth.models import User
from django.db import models
from django.db.models import signals
from django.dispatch import dispatcher
from django.conf import settings
from ox.utils import json
class UserProfile(models.Model):
reset_token = models.TextField(blank=True, null=True, unique=True)
user = models.ForeignKey(User, unique=True)
files_updated = models.DateTimeField(default=datetime.now)
newsletter = models.BooleanField(default=True)
def user_post_save(sender, instance, **kwargs):
profile, new = UserProfile.objects.get_or_create(user=instance)
models.signals.post_save.connect(user_post_save, sender=User)
class Preference(models.Model):
user = models.ForeignKey(User, related_name='preferences')
created = models.DateTimeField(auto_now_add=True)
@ -33,18 +34,20 @@ class Preference(models.Model):
def __unicode__(self):
return u"%s/%s=%s" % (self.user, self.key, self.value)
def get_user_json(user):
json = {}
result = {}
for key in ('username', ):
json[key] = getattr(user, key)
json['group'] = 'user'
result[key] = getattr(user, key)
result['group'] = 'user'
if user.is_staff:
json['group'] = 'admin'
result['group'] = 'admin'
elif user.has_perm('0x.vip'): #FIXME: permissions
json['group'] = 'vip'
json['preferences'] = get_preferences(user)
json['ui'] = get_ui(user)
return json
result['group'] = 'vip'
result['preferences'] = get_preferences(user)
result['ui'] = get_ui(user)
return result
def get_ui(user):
with open(os.path.join(settings.PROJECT_ROOT, 'templates', 'site.json')) as f:
@ -70,6 +73,7 @@ def get_ui(user):
}
'''
def get_preferences(user):
prefs = {}
for p in Preference.objects.filter(user=user):
@ -77,6 +81,7 @@ def get_preferences(user):
prefs['email'] = user.email
return prefs
def get_preference(user, key, value=None):
if key in ('email', ):
value = getattr(user, key)
@ -86,6 +91,7 @@ def get_preference(user, key, value=None):
value = json.loads(q[0].value)
return value
def set_preference(user, key, value):
if key in ('email', ):
setattr(user, key, value)

View file

@ -7,8 +7,7 @@ random.seed()
from django import forms
from django.contrib.auth.models import User
from django.contrib.auth import authenticate, login, logout
from django.shortcuts import render_to_response, get_object_or_404, get_list_or_404, redirect
from django.template import RequestContext, loader, Context
from django.template import RequestContext, loader
from django.utils import simplejson as json
from django.conf import settings
from django.core.mail import send_mail, BadHeaderError
@ -26,13 +25,14 @@ class LoginForm(forms.Form):
username = forms.TextInput()
password = forms.TextInput()
def api_login(request):
'''
param data {
username: 'username',
password: 'password'
}
return {
status: {'code': 200, 'text': 'ok'}
data: {
@ -81,11 +81,12 @@ def api_login(request):
return render_to_json_response(response)
actions.register(api_login, 'login')
def api_logout(request):
'''
param data {
}
return {
status: {'code': int, 'text': string}
data: {
@ -105,11 +106,13 @@ def api_logout(request):
return render_to_json_response(response)
actions.register(api_logout, 'logout')
class RegisterForm(forms.Form):
username = forms.TextInput()
password = forms.TextInput()
email = forms.TextInput()
def register(request):
'''
param data {
@ -117,7 +120,7 @@ def register(request):
password: 'password',
email: 'emailaddress'
}
return {
status: {'code': int, 'text': string}
data: {
@ -172,13 +175,14 @@ def register(request):
return render_to_json_response(response)
actions.register(register)
def resetPassword(request):
'''
param data {
token: reset token
password: new password
}
return {
status: {'code': int, 'text': string}
data: {
@ -226,13 +230,14 @@ def resetPassword(request):
return render_to_json_response(response)
actions.register(resetPassword)
def requestToken(request):
'''
param data {
username: username,
email: email
}
return {
status: {'code': int, 'text': string}
data: {
@ -291,13 +296,14 @@ def requestToken(request):
return render_to_json_response(response)
actions.register(requestToken)
def findUser(request):
'''
param data {
key: "username",
value: "foo", operator: "="
}
return {
'status': {'code': int, 'text': string}
'data': {
@ -315,18 +321,20 @@ def findUser(request):
return render_to_json_response(response)
actions.register(findUser)
class ContactForm(forms.Form):
email = forms.EmailField()
subject = forms.TextInput()
message = forms.TextInput()
def contact(request):
'''
param data {
'email': string,
'message': string
}
return {
'status': {'code': int, 'text': string}
}
@ -353,6 +361,7 @@ def contact(request):
return render_to_json_response(response)
actions.register(contact)
@login_required_json
def preferences(request):
'''
@ -391,4 +400,3 @@ def preferences(request):
models.set_preference(request.user, key, data[key])
return render_to_json_response(response)
actions.register(preferences)