Exemple #1
0
def home(request):
    #If logged in show main post feed
    if request.user.is_authenticated():
        username = request.user.username
        #Check for a post submission
        if request.POST:
            return check_for_post(request,redirect_url='home')
        
             
        context = SquibContext(request, {})
        context['write_post'] = WritePost(request)
        context['posts'] = ProfilePosts(request,username)
        return render_to_response('main.html', context)
    
    
    #Else show public home page
    else:
        form = UserForm(request.POST or None)
        login_form = LoginForm()
        if request.method == 'POST' and form.is_valid():
            initial_user = form.save()
            username = form.cleaned_data['username']
            password = form.cleaned_data['password']
            user = authenticate(username=username, password=password)
            login(request, user)
            return redirect('edit_profile')         
    
        context = RequestContext(request, {'form':form,'login_form':login_form})
        return render_to_response('home.html', context)
Exemple #2
0
def profile(request, username):
    #Get profile based on url username
    user = User.objects.get(username=username)
    user_profile = user.get_profile()
    
    #Decide if viewing your own profile or not
    logged_on_user = request.user
    if logged_on_user.username == username:
        own_profile = True
    else:
        own_profile = False
    
    if user_profile.gender == 'M':
        user_profile.gender = 'male'
    elif user_profile.gender == 'F':
        user_profile.gender = 'female'
        
    #Check for a post submission
    if request.POST:
        check_for_post(request)
        return redirect('profile', username)
    
    #Decide on view (defaults to posts view)
    view = request.GET.get('view','')
    if view == 'friends':
        friends = get_friends(request,user.id,'F','/'+username+'?view=friends')
        context = SquibContext(request, {'friends':friends,
                                         'unique_user':user, 
                                         'user_profile':user_profile,
                                         'own_profile':own_profile,})
        return render_to_response('profile_friends.html', context)
    
    #Get appropriate profiles posts
    posts = ProfilePosts(request,username)
               
    context = SquibContext(request, {'unique_user':user, 
                                       'user_profile':user_profile,
                                       'own_profile':own_profile,})
    
    if not own_profile:
        context['write_post'] = WritePost(request,user.id)
    else:
        context['write_post'] = WritePost(request)
    context['posts'] = posts
    return render_to_response('profile.html', context)