def read(self, request, user_id, fetch_all, apikey=None, apisignature=None): """ Returns all Ideas by a user if user_id is given, else it returns all Ideas """ base = Idea.objects if user_id: query="/user/"+user_id+"/"+fetch_all+"/ideas/" if not key_check(apikey, apisignature,query): return {'error':'authentication required'} else: user = User.objects.get(id=user_id) if fetch_all == "0": all_ideas = helpers.process_ideas(user, base.filter(user = user_id).annotate(votes=Count('vote_on'))) else: all_ideas = helpers.process_ideas(user, base.exclude(private = True).annotate(votes=Count('vote_on'))) return all_ideas
def splash(request,show=''): is_splash = "splash" client_sub_domain = CLIENT_SUB_DOMAIN if not request.user.is_authenticated(): form = AuthenticationForm() registerForm = UserCreationForm() if request.method=="POST": register(request) return HttpResponseRedirect("/") else: recent_ideas = Idea.objects.exclude(private=True).order_by('?')[:6] return render_to_response("main/splash.html", locals(), context_instance=RequestContext(request)) # # else there is a user and we can just show the general page # else: user = request.user #if user.has_perm(app.idea.can_add): # post_idea = True #else: # post_idea = False if request.method == 'POST': #If something has been submitted if 'vote' in request.POST: voteForm = VoteForm(request.POST) if voteForm.is_valid(): helpers.vote(voteForm,request.user) if 'submit_email' in request.POST: emailForm = EmailForm(request.POST) if emailForm.is_valid(): clean = emailForm.cleaned_data exists = User.objects.filter(email=clean['email']) if len(exists) > 0: messages.error(request, ( "That e-mail address is " "already in use, have you signed up before " "using a different username?")) return HttpResponseRedirect("/") user.email = clean['email'] helpers.send_verify_email(clean['email'],user,request) user.save() if 'submit_idea' in request.POST: idea = helpers.add_idea(request) if 'submit_idea_elaborate' in request.POST: idea = helpers.add_idea(request) if idea: return HttpResponseRedirect(reverse('edit-idea', args=[idea.id])) voteUpForm = VoteForm({'vote':'+'}) voteDownForm = VoteForm({'vote':'-'}) ideaForm = IdeaForm() searchForm = SearchForm() emailForm = EmailForm({'email':user.email}) all_ideas = Idea.objects.exclude(private=True).annotate(votes=Count('vote_on')) if show == 'started': all_ideas = Idea.objects.filter(started=True).exclude(private=True).annotate(votes=Count('vote_on')) elif show == 'not-started': all_ideas = Idea.objects.exclude(started=True).exclude(private=True).annotate(votes=Count('vote_on')) if show == 'top': all_ideas = all_ideas.order_by('-votes') else: all_ideas = all_ideas.order_by('-date') all_ideas = helpers.process_ideas(user, all_ideas) return render_to_response("main/home.html",locals(), context_instance=RequestContext(request))