def add_friend(request): if not request.user.is_authenticated(): return redirect(gethome()) if request.method != 'POST': return redirect(gethome()) else: print "HELLO I AM AT AN AJAX CALL AT FRIENDS.VIEW.add_friend-----------------------------------------------------" print request.POST if "user2" in request.POST: user2_id = request.POST["user2"] Profile2_object = Profile.objects.filter(id=user2_id) user2 = Profile2_object[0].user user1 = request.user #user who clicked add friend ==> userFrom message = Profile2_object[0].first_name + " " + Profile2_object[0].last_name + " wants to be friends with you" if checkFriendExisted(user1,user2) == True: return redirect(gethome()) #-------------BETA-------------------------------------# user2_uuid = Profile2_object[0].id user1_uuid = Profile.objects.filter(user=user1)[0].id #-------------BETA-------------------------------------# friend_object = Friends(user1=user1,user2=user2,status = "P",user1_uuid=user1_uuid,user2_uuid=user2_uuid) friend_object.save() if(checkNotificationExisted(user1,user2,"F") == False): notification_object = Notification( user1=user1, user2=user2, message=message, read=False, notification_type="FR", target_id=friend_object.friends_id, user1_uuid=user1_uuid, user2_uuid=user2_uuid) notification_object.save() print "-------------DONE-----------------" return redirect(gethome())
def show_user(request): if request.user.is_authenticated(): if request.method == 'GET': profile_id = request.GET['profile_id'] target_profile = Profile.objects.get(id=profile_id) #---> GET TARGET PROFILE context = {"profile":target_profile,"interest":"none"} # friends_status = getStatus(request.user,profile.user) #--OLD CODE my_user = request.user my_profile = Profile.objects.get(user=my_user) user1_uuid = my_profile.id user2_uuid = target_profile.id #------------------------------FRIENDS CODE----------------------------------------# friends_object12 = Friends.manager.get_object_from(user1_uuid,user2_uuid) friends_object21 = Friends.manager.get_object_from(user2_uuid,user1_uuid) if friends_object12 is not None: if friends_object21 is not None: if friends_object12.status == "I" and friends_object21.status =="I": context.update( {"interest":"mutual","roomate_id":"none"} ) else: if friends_object12.status == "I": context.update({"interest":"pending"}) else: if friends_object21 is not None: if friends_object21.status == "I": context.update({"interest":"interested"}) #------------------------------FRIENDS CODE----------------------------------------# #------------------------------ROOMATE CODE----------------------------------------# roomate_object = Roomate.manager.get_object_from(user1_uuid,user2_uuid) print roomate_object if roomate_object is not None: roomate_status = roomate_object.status if roomate_status == 'P': #--PENDING if user1_uuid == roomate_object.user1_uuid: context.update({"interest":"roomate_waiting","roomate_id":"none"}) else: context.update({"interest":"roomate_pending","roomate_id":roomate_object.roomate_id}) elif roomate_status == 'R': #--ROOMATES context.update({"interest":"roomates"}) #------------------------------ROOMATE CODE----------------------------------------# # if friends_status == 'P': # friends_object = getFriendsObject(request.user,profile.user) # friends_id = friends_object.friends_id # notification_object = Notification.objects.get(target_id=friends_id) # user1_uuid = notification_object.user1_uuid # user2_uuid = notification_object.user2_uuid # my_uuid = Profile.objects.get(user=request.user).id # this_id = notification_object.notification_id # additional_context = {"target_id":friends_id, # "my_uuid":my_uuid, # "user1_uuid":user1_uuid, # "user2_uuid":user2_uuid, # "this_id":this_id, # "friends_object":friends_object # } # context.update(additional_context) print context return render(request,'show_user.html',context) return redirect(gethome())
def change_friend_status(request): if not request.user.is_authenticated(): return redirect(gethome()) if request.method != 'POST': print "NOT POST-----------------" return redirect(gethome()) else: print "CHANGE REQUEST ENTER AJAX CALL--------------------------" print request.POST notification_id = request.POST['this_id'] notification_object = Notification.objects.filter(notification_id=notification_id) response_type = str(request.POST['type']) if "delete_notification" == response_type: print "DELETe NOTIFICATION--------------------AJAX------------------" notification_object.delete() return redirect(gethome()) target_id = request.POST['target_id'] friend_object = Friends.objects.filter(friends_id=target_id) #-------------BETA-------------------------------------# user1_uuid = request.POST['user1_uuid'] user2_uuid = request.POST['user2_uuid'] #-------------BETA-------------------------------------# if "accept" == response_type: print "ACCEPT-------------------AJAX------------------" friend_object.update(status="F") notification_object.delete() #-------------BETA-------------------------------------# profile1 = Profile.objects.get(id=user1_uuid) profile2 = Profile.objects.get(id=user2_uuid) #-------------BETA-------------------------------------# message = str(profile2.first_name) + " " +str(profile2.last_name) +" " +"HAVE BECOME FRIENDS WITH YOU" accept_notification = Notification( user1=profile2.user, user2=profile1.user, message=message, user1_uuid=user2_uuid, user2_uuid=user1_uuid, notification_type="FA") accept_notification.save() elif "ignore" == response_type: print "IGNORE-------------------AJAX------------------" friend_object.delete() notification_object.delete() elif "block" == response_type: print "BLOCK--------------------AJAX------------------" return redirect(gethome())
def edit_profile(request): if request.user.is_authenticated(): my_profile = Profile.objects.filter(user=request.user) edit = EditForm(request.POST or None,request.FILES or None ,instance = my_profile[0]) if edit.is_valid(): #print "EDIT PROFILE--------------------------------------------" instance = edit.save(commit=False) instance.save() context = {"profile":my_profile[0],"edit":edit} return render(request,'edit_profile.html',context) else: return redirect(gethome())
def first_time_user(request): if request.user.is_authenticated(): myForm = ProfileForm(request.POST or None) if request.method == "POST" and myForm.is_valid(): first_name = myForm.data['first_name'] middle_name = myForm.data['middle_name'] last_name = myForm.data['last_name'] nationality =myForm.data['nationality'] gender = myForm.data['gender'] myProfile = Profile.objects.select_for_update().filter(user=request.user) myProfile.update(first_name=first_name,middle_name=middle_name,last_name=last_name) return redirect(gethome()) else: context = {"form":myForm} return render(request,'first_time_user.html',context) else: return render(request,'error_login.html',{})
def logout_view(request): logout(request) return redirect(gethome())