def account_claim_token(request): try: contact = Contact.objects.get(token=request.GET['token']) except: request.user.message_set.create(message=("Sorry %s, we can't seem to find the token %s" % (request.user.username, request.GET['token']))) return HttpResponseRedirect("/account") try: wordisms_user = WordismsUser.objects.get(user=request.user) except: # create wordisms_user if it doesn't already exist wordisms_user = WordismsUser(user=request.user) wordisms_user.save() contact.wordisms_user = wordisms_user contact.token = 0 # token has been claimed, free it contact.save() request.user.message_set.create(message='Device using "%s" was successfully linked to your account' % contact.address) return HttpResponseRedirect("/account")
def wordlist_list(request): if "wordlist_id" in request.POST: # populate or create WordismsUser try: wordisms_user = WordismsUser.objects.get(user=request.user) except WordismsUser.DoesNotExist: wordisms_user = WordismsUser(user=request.user) wordisms_user.save() try: #TODO make sure you can't subscribe to the same word list twice wordlist_id = request.POST['wordlist_id'] wordlist = Wordlist.objects.get(id=wordlist_id) subscription = Subscription(wordisms_user=wordisms_user,wordlist=wordlist) subscription.save() request.user.message_set.create(message=("Subscribed to '%s'" % wordlist.name)) return HttpResponseRedirect("/account") except Wordlist.DoesNotExist: request.user.message_set.create(message=("Internal error, could not find wordlist id %s" % wordlist_id)) return HttpResponseRedirect("/wordlist/list") return render_to_response( 'wordlist_list.html', { 'wordlists': Wordlist.objects.order_by('name') }, context_instance=RequestContext(request) )