Example #1
0
def find_friend(request):
    member_login = get_member_login_object(request)
    autocomplete_data = get_autocomplete_data(request)
    is_import_fb_friend = False
    invite_friends = None
    suggest_friends = None
    facebook_friends = get_facebook_friends(member_login)
    new_buzzes = get_new_buzzes(request)
    new_mail = get_new_mail(request)
    new_notify = len(new_buzzes) + len(new_mail)
    if facebook_friends != None:
        is_import_fb_friend = True
        invite_friends = facebook_friends[1]
        suggest_friends = facebook_friends[0]
    return render_to_response('friend_template/page/main_page.html', {
        "member_login": member_login,
        "autocomplete_data": autocomplete_data,
        'is_import_fb_friend': is_import_fb_friend,
        'invite_friends': invite_friends,
        'suggest_friends': suggest_friends,
        'new_notify': new_notify,
        'new_buzzes': new_buzzes,
        'new_mail': new_mail
    },
                              context_instance=RequestContext(request))
Example #2
0
def get_user_activity_request(request,activity_id):
	activity = Activity.objects.get(pk=activity_id)
	member_login = get_member_login_object(request)
	activity_user_request = ActivityRequest.objects.filter(activity=activity,member_join=member_login,member_create=activity.member_create)
	if len(activity_user_request) != 0:
		return activity_user_request[0]
	return None	
Example #3
0
def find_friend(request):
	member_login = get_member_login_object(request)
	autocomplete_data = get_autocomplete_data(request)
	is_import_fb_friend = False
	invite_friends = None
	suggest_friends = None
	facebook_friends = get_facebook_friends(member_login)
	new_buzzes = get_new_buzzes(request)
	new_mail = get_new_mail(request)
	new_notify = len(new_buzzes) + len(new_mail)
	if facebook_friends != None:
		is_import_fb_friend = True
		invite_friends = facebook_friends[1]
		suggest_friends = facebook_friends[0]
	return render_to_response('friend_template/page/main_page.html',
							{
								"member_login": member_login,
								"autocomplete_data": autocomplete_data,
								'is_import_fb_friend': is_import_fb_friend,
								'invite_friends': invite_friends,
								'suggest_friends': suggest_friends,
								'new_notify': new_notify,
								'new_buzzes': new_buzzes,
								'new_mail': new_mail
							},
							context_instance=RequestContext(request)
							)
Example #4
0
def show_notification(request):
    now = datetime.datetime.now()
    autocomplete_data = get_autocomplete_data(request)
    member_login = get_member_login_object(request)
    current_page = 1
    if 'page' in request.GET:
        current_page = int(request.GET['page'])
    all_notifies = Notify.objects.filter(
        notify_to=member_login).order_by("-date")
    last_page = int(len(all_notifies) / 10) + 1
    notifies = all_notifies[(current_page - 1) * 10:current_page * 10]
    for notify in notifies:
        elapse_time = now - notify.date
        notify.elapse_time = get_elapse_time(int(elapse_time.total_seconds()))
        if notify.status == 'new': notify.status = 'old'
        notify.save()
    new_buzzes = get_new_buzzes(request)
    new_mail = get_new_mail(request)
    new_notify = len(new_buzzes) + len(new_mail)
    return render_to_response("notify_template/page/main_page.html", {
        "autocomplete_data": autocomplete_data,
        "member_login": member_login,
        'current_page': current_page,
        'last_page': last_page,
        "notifies": notifies,
        "new_buzzes": new_buzzes,
        'new_mail': new_mail,
        'new_notify': new_notify
    },
                              context_instance=RequestContext(request))
Example #5
0
def add_message(request, username, message):
    now = datetime.datetime.now()
    member_chat = Member.objects.get(user=User.objects.get(username=username))
    member_login = get_member_login_object(request)
    new_message = Message.objects.create(
        member_send=member_login, member_receive=member_chat, content=message, date=now, status="new"
    )
    new_message.save()
    new_buzz_type = len(Notify.objects.filter(notify_to=member_chat, status="new"))
    new_mail_type = len(Message.objects.filter(member_receive=member_chat, status="new"))
    buzz = simplejson.dumps(
        {
            "new_notify": new_buzz_type + new_mail_type,
            "new_buzz_type": new_buzz_type,
            "new_mail_type": new_mail_type,
            "username": member_chat.user.username,
            "member_send_username": member_login.user.username,
            "member_send_name": member_login.user.first_name + " " + member_login.user.last_name,
            "member_send_avatar": member_login.avatar.url,
            "msg_content": new_message.content_html,
            "date": new_message.elapse_time,
        }
    )
    conn.send(buzz, destination="/update")
    return simplejson.dumps({"message": "Success"})
Example #6
0
def decline_friend_request(request, notify_id, username):
    member_add_request = Member.objects.get(user=User.objects.get(
        username=username))
    member_receive_request = get_member_login_object(request)
    fr = FriendshipRequest.objects.filter(from_user=member_add_request.user,
                                          to_user=member_receive_request.user,
                                          accepted=False)
    if len(fr) != 0:
        fr[0].decline()
        n = Notify.objects.get(pk=notify_id)
        new_content = ("<div class='notify-main-content'>" + "<a href='/" +
                       member_add_request.user.username + "' >" +
                       member_add_request.user.first_name + " " +
                       member_add_request.user.last_name + "</a>" +
                       " want to be friend with you" + "</div>" +
                       "<div class='notify-decline-friend-request'>" +
                       " You have declined this request " + "</div>")
        n.content = new_content
        n.notify_type = 'add_friend_response_decline'
        n.save()
        return simplejson.dumps({
            'notify_id': str(notify_id),
            'new_content': new_content,
            'username': username,
            'firstname': member_add_request.user.first_name,
            'lastname': member_add_request.user.last_name,
            'reload': 'False'
        })
    else:
        return simplejson.dumps({'reload': 'True'})
Example #7
0
def member_message(request,username):
	member_chat = get_object_or_404(Member,user=get_object_or_404(User,username=username))
	member_login = get_member_login_object(request)
	messages = get_specific_conversation(request,member_chat)
	if member_chat == member_login or messages == 'redirect': 
		return HttpResponseRedirect('/messages/')

	autocomplete_data = get_autocomplete_data(request)
	friends = member_login.get_friends()
	friends_autocomplete_data = get_friends_autocomplete_data(request,message=True)
	new_buzzes = get_new_buzzes(request)
	new_mail = get_new_mail(request)
	new_notify = len(new_buzzes) + len(new_mail)
	return render_to_response('message_template/page/member_message_page.html',
						{
							'autocomplete_data': autocomplete_data,
							'member_login': member_login,
							'member_chat': member_chat,
							'friends': friends,
							'friends_autocomplete_data': friends_autocomplete_data,
							'new_buzzes': new_buzzes,
							'new_mail': new_mail,
							'new_notify': new_notify,
							'messages': messages
						},
						context_instance=RequestContext(request)
					)
Example #8
0
def show_photo(request,photo_type,object_id,photo_id):
    all_photo = Photo.objects.filter(photo_type=photo_type,object_id=object_id)
    current_photo = get_object_or_404(Photo,pk=photo_id)
    member_login= get_member_login_object(request)
    autocomplete_data = get_autocomplete_data(request)
    new_buzzes = get_new_buzzes(request)
    new_mail = get_new_mail(request)
    new_notify = len(new_buzzes) + len(new_mail)
    return render_to_response('photo_template/page/main_page.html',
                                {
                                    'autocomplete_data': autocomplete_data,
                                    'member_login': member_login,
                                    'current_photo': current_photo,
                                    'all_photo': all_photo,
                                    'new_buzzes': new_buzzes,
                                    'new_mail': new_mail,
                                    'new_notify': new_notify
                                },
                                context_instance = RequestContext(request)
                            )

# def multi_show_uploaded(request, key):
#     """Simple file view helper.
#     Used to show uploaded file directly"""
#     image = get_object_or_404(Photo, key_data=key)
#     url = settings.MEDIA_URL+image.image.name
#     return render_to_response('photo_template/one_image.html', {"multi_single_url":url,})
Example #9
0
def get_all_conversation(request):
    member_login = get_member_login_object(request)
    list_member_chat, list_last_chat_message, list_last_chat_date, result = [], [], [], []
    new_messages = Message.objects.filter(
        (Q(member_receive=member_login) | Q(member_send=member_login)), Q(status="new")
    )
    for new_message in new_messages:
        new_message.status = "old"
        new_message.save()
    messages = Message.objects.filter(Q(member_receive=member_login) | Q(member_send=member_login)).order_by("-date")
    for message in messages:
        if message.member_send != member_login and message.member_send not in list_member_chat:
            list_member_chat.append(message.member_send)
            list_last_chat_message.append(set_fixed_string(message.content, 60))
            list_last_chat_date.append(message.elapse_time)
        if message.member_receive != member_login and message.member_receive not in list_member_chat:
            list_member_chat.append(message.member_receive)
            list_last_chat_message.append("<i class='icon-share-alt'></i>" + set_fixed_string(message.content, 60))
            list_last_chat_date.append(message.elapse_time)
    for i in range(0, len(list_member_chat)):
        if check_user_block(member_login.user, list_member_chat[i].user) == False:
            data = {
                "member": list_member_chat[i],
                "last_chat": list_last_chat_message[i],
                "date": list_last_chat_date[i],
            }
            result.append(data)
    return result
Example #10
0
def main_page(request):
	autocomplete_data = get_autocomplete_data(request)
	location_categories = LocationCategory.objects.all()
	member_login = get_member_login_object(request)
	new_buzzes = get_new_buzzes(request)
	new_mail = get_new_mail(request)
	new_notify = len(new_buzzes) + len(new_mail)
	locations = Location.objects.all()
	today_activities = get_today_activity()
	trending_activities = get_trending_activity()
	hot_activities = get_hot_activity()
	return render_to_response(
			"main_template/page/index.html",
			{
				"member_login": member_login,
				'new_notify': new_notify,
				'new_buzzes': new_buzzes,
				'new_mail': new_mail,
				"locations": locations,
				"autocomplete_data": autocomplete_data,
				"location_categories": location_categories,
				"today_activities": today_activities,
				'trending_activities': trending_activities,
				'hot_activities': hot_activities,
			},
			context_instance=RequestContext(request)
		)
Example #11
0
def follow_location(request, location_id):
    member_login = get_member_login_object(request)
    location = Location.objects.get(pk=location_id)
    location.follow_by.add(member_login)
    friend_activity_content = get_stream_content(
        'follow_location', 'friends_content', {
            'member_login': member_login,
            'location': location
        })
    user_activity_content = get_stream_content(
        'follow_location', 'user_content', {
            'member_login': member_login,
            'location': location
        })
    list_friends_username = Friendship.objects.friends_of(
        member_login.user).values_list('username', flat=True)
    user_streams.add_stream_item(member_login.user, friend_activity_content,
                                 user_activity_content)
    buzz = simplejson.dumps({
        'new_friend_activity':
        friend_activity_content,
        'list_friends_username':
        list(list_friends_username)
    })
    conn.send(buzz, destination='/update')
    return simplejson.dumps({
        'username':
        member_login.user.username,
        'name':
        member_login.user.first_name + " " + member_login.user.last_name,
        'avatar':
        member_login.avatar.url
    })
Example #12
0
def member_message(request, username):
    member_chat = get_object_or_404(Member,
                                    user=get_object_or_404(User,
                                                           username=username))
    member_login = get_member_login_object(request)
    messages = get_specific_conversation(request, member_chat)
    if member_chat == member_login or messages == 'redirect':
        return HttpResponseRedirect('/messages/')

    autocomplete_data = get_autocomplete_data(request)
    friends = member_login.get_friends()
    friends_autocomplete_data = get_friends_autocomplete_data(request,
                                                              message=True)
    new_buzzes = get_new_buzzes(request)
    new_mail = get_new_mail(request)
    new_notify = len(new_buzzes) + len(new_mail)
    return render_to_response(
        'message_template/page/member_message_page.html', {
            'autocomplete_data': autocomplete_data,
            'member_login': member_login,
            'member_chat': member_chat,
            'friends': friends,
            'friends_autocomplete_data': friends_autocomplete_data,
            'new_buzzes': new_buzzes,
            'new_mail': new_mail,
            'new_notify': new_notify,
            'messages': messages
        },
        context_instance=RequestContext(request))
Example #13
0
def password_reset_from_key(request, uidb36, key, **kwargs):
    member_login = get_member_login_object(request)
    if member_login:
        return HttpResponseRedirect("/")
    form_class = kwargs.get("form_class", ResetPasswordKeyForm)
    #template_name = kwargs.get("template_name", "account/password_reset_from_key.html")
    template_name = 'auth_template/page/password_reset_from_key.html'    
    token_generator = kwargs.get("token_generator", default_token_generator)
    
    # pull out user
    try:
        uid_int = base36_to_int(uidb36)
    except ValueError:
        raise Http404
    
    user = get_object_or_404(User, id=uid_int)
    
    if token_generator.check_token(user, key):
        if request.method == "POST":
            password_reset_key_form = form_class(request.POST, user=user, temp_key=key)
            if password_reset_key_form.is_valid():
                password_reset_key_form.save()
                messages.add_message(request, messages.SUCCESS,
                    ugettext(u"Password successfully changed.")
                )
                password_reset_key_form = None
        else:
            password_reset_key_form = form_class()
        ctx = { "form": password_reset_key_form, }
    else:
        ctx = { "token_fail": True, }
    
    return render_to_response(template_name, RequestContext(request, ctx))
Example #14
0
def show_notification(request):
	now = datetime.datetime.now()
	autocomplete_data =  get_autocomplete_data(request)
	member_login = get_member_login_object(request)
	current_page = 1
	if 'page' in request.GET:
		current_page = int(request.GET['page'])
	all_notifies = Notify.objects.filter(notify_to=member_login).order_by("-date")
	last_page = int(len(all_notifies) / 10) + 1
	notifies = all_notifies[(current_page-1)*10:current_page*10] 
	for notify in notifies:
		elapse_time = now - notify.date
		notify.elapse_time = get_elapse_time(int(elapse_time.total_seconds())) 
		if notify.status == 'new': notify.status = 'old'
		notify.save()
	new_buzzes = get_new_buzzes(request)
	new_mail = get_new_mail(request)
	new_notify = len(new_buzzes) + len(new_mail)
	return render_to_response(
			"notify_template/page/main_page.html",
			{
				"autocomplete_data": autocomplete_data,
				"member_login": member_login,
				'current_page': current_page,
				'last_page': last_page,
				"notifies": notifies,
				"new_buzzes": new_buzzes,
				'new_mail': new_mail,
				'new_notify': new_notify
			},
			context_instance=RequestContext(request)
		)
Example #15
0
def join_activity_request(request,activity_id):
	member_login = get_member_login_object(request)
	activity = Activity.objects.get(pk=activity_id)
	activity_request = ActivityRequest.objects.filter(activity=activity,member_join=member_login,member_create=activity.member_create)
	if len(activity_request) != 0:
		activity_request[0].request_status = 'Waiting'
		activity_request[0].save()
	else:	
		new_request = ActivityRequest.objects.create(activity=activity,member_join=member_login,member_create=activity.member_create,request_status='Waiting',date=datetime.datetime.now())
		new_request.save()
	notify_type= 'join_activity_request'
	content = ("<a href='/" + member_login.user.username + "' >" + 
					member_login.user.first_name + " " + member_login.user.last_name + 
				"</a>" + 
				" want to join your activity " + 
				"<a href='/activity/" + str(activity.pk) + "' >" + 
					activity.name + 
				"</a>")
	new_notify = Notify.objects.create(notify_type=notify_type,notify_to=activity.member_create,notify_from=member_login,status='new',date=datetime.datetime.now(),content=content)
	new_notify.save()
	new_buzz_type = len(Notify.objects.filter(notify_to=activity.member_create,status='new'))
	new_mail_type = len(Message.objects.filter(member_receive=activity.member_create,status='new'))
	buzz = simplejson.dumps({'new_notify': new_buzz_type + new_mail_type, 'new_buzz_type': new_buzz_type, 'new_mail_type': new_mail_type, 'username': activity.member_create.user.username})
	conn.send(buzz,destination='/update')
	return simplejson.dumps({})
Example #16
0
def login(request, **kwargs):
    member_login = get_member_login_object(request)
    if member_login:
        return HttpResponseRedirect('/')
    form_class = kwargs.pop("form_class", LoginForm)
    #template_name = kwargs.pop("template_name", "account/login.html")
    template_name = 'auth_template/page/login.html'
    success_url = kwargs.pop("success_url", None)
    url_required = kwargs.pop("url_required", False)
    extra_context = kwargs.pop("extra_context", {})
    redirect_field_name = kwargs.pop("redirect_field_name", "next")
    
    if extra_context is None:
        extra_context = {}
    if success_url is None:
        success_url = get_default_redirect(request, redirect_field_name)
    
    if request.method == "POST" and not url_required:
        form = form_class(request.POST)
        if form.is_valid():
            return form.login(request, redirect_url=success_url)
    else:
        form = form_class()
    
    ctx = {
        "form": form,
        "signup_url": passthrough_login_redirect_url(request,reverse("account_signup")),
        #"site": Site.objects.get_current(),
        "url_required": url_required,
        "redirect_field_name": redirect_field_name,
        "redirect_field_value": request.REQUEST.get(redirect_field_name),
    }
    ctx.update(extra_context)
    return render_to_response(template_name, RequestContext(request, ctx))
Example #17
0
def get_all_conversation(request):
    member_login = get_member_login_object(request)
    list_member_chat, list_last_chat_message, list_last_chat_date, result = [], [], [], []
    new_messages = Message.objects.filter(
        (Q(member_receive=member_login) | Q(member_send=member_login)),
        Q(status='new'))
    for new_message in new_messages:
        new_message.status = 'old'
        new_message.save()
    messages = Message.objects.filter(
        Q(member_receive=member_login)
        | Q(member_send=member_login)).order_by('-date')
    for message in messages:
        if message.member_send != member_login and message.member_send not in list_member_chat:
            list_member_chat.append(message.member_send)
            list_last_chat_message.append(set_fixed_string(
                message.content, 60))
            list_last_chat_date.append(message.elapse_time)
        if message.member_receive != member_login and message.member_receive not in list_member_chat:
            list_member_chat.append(message.member_receive)
            list_last_chat_message.append(
                "<i class='icon-share-alt'></i>" +
                set_fixed_string(message.content, 60))
            list_last_chat_date.append(message.elapse_time)
    for i in range(0, len(list_member_chat)):
        if check_user_block(member_login.user,
                            list_member_chat[i].user) == False:
            data = {
                'member': list_member_chat[i],
                'last_chat': list_last_chat_message[i],
                'date': list_last_chat_date[i]
            }
            result.append(data)
    return result
Example #18
0
def safety(request):
    autocomplete_data = get_autocomplete_data(request)
    member_login = get_member_login_object(request)
    return render_to_response("info_template/page/safety.html", {
        "member_login": member_login,
        'autocomplete_data': autocomplete_data,
    },
                              context_instance=RequestContext(request))
Example #19
0
def get_activity_unjoinable(request,activity_id):
	activity = Activity.objects.get(pk=activity_id)
	member_login = get_member_login_object(request)
	if len(activity.member_join.all()) == activity.limit:
		return "There is no more available spot for this activity "
	if activity.activity_type == 'blind_date':
		if member_login.gender == activity.member_create.gender:
			return "You are not qualified to join this activity. You and the host need to have different sex in the blind date activity"
	return None
Example #20
0
def get_activity_unjoinable(request, activity_id):
    activity = Activity.objects.get(pk=activity_id)
    member_login = get_member_login_object(request)
    if len(activity.member_join.all()) == activity.limit:
        return "There is no more available spot for this activity "
    if activity.activity_type == 'blind_date':
        if member_login.gender == activity.member_create.gender:
            return "You are not qualified to join this activity. You and the host need to have different sex in the blind date activity"
    return None
Example #21
0
def photo_upload(request):
    if request.method == 'POST':
        if request.FILES == None:
            return HttpResponseBadRequest('Must have files attached!')

        #getting file data for farther manipulations
        file = request.FILES[u'files[]']
        wrapped_file = UploadedFile(file)
        filename = wrapped_file.name
        file_size = wrapped_file.file.size
        log.info ('Got file: "%s"' % str(filename))

        #writing file manually into model
        #because we don't need form of any type.
        member_login = get_member_login_object(request)
        image = Photo()
        image.filename=str(filename)
        image.image=file
        image.key_data = image.key_generate
        image.member_post = member_login
        image.photo_type = request.session['photo_type']
        image.object_id = request.session['object_id']
        image.save()
        log.info('File saving done')

        #getting thumbnail url using sorl-thumbnail
        im = get_thumbnail(image, "80x80", quality=50)
        thumb_url = im.url

        #settings imports
        try:
            file_delete_url = settings.MULTI_FILE_DELETE_URL+'/'
            file_url = settings.MULTI_IMAGE_URL+'/'+image.key_data+'/'
        except AttributeError:
            file_delete_url = 'multi_delete/'
            file_url = 'multi_image/'+image.key_data+'/'

        #generating json response array
        result = []
        result.append({"name":filename, 
                       "size":file_size, 
                       "url":file_url, 
                       "thumbnail_url":thumb_url,
                       "delete_url":file_delete_url+str(image.pk)+'/', 
                       "delete_type":"POST",})
        response_data = simplejson.dumps(result)
        
        #checking for json data type
        #big thanks to Guy Shapiro
        if "application/json" in request.META['HTTP_ACCEPT_ENCODING']:
            mimetype = 'application/json'
        else:
            mimetype = 'text/plain'
        return HttpResponse(response_data, mimetype=mimetype)
    else: #GET
        return HttpResponse('Only POST accepted')
Example #22
0
def safety(request):
	autocomplete_data = get_autocomplete_data(request)
	member_login = get_member_login_object(request)
    	return render_to_response("info_template/page/safety.html",
    				{
                		"member_login": member_login,
                		'autocomplete_data': autocomplete_data,
            		},
            		context_instance = RequestContext(request)
    			)
Example #23
0
def get_user_activity_request(request, activity_id):
    activity = Activity.objects.get(pk=activity_id)
    member_login = get_member_login_object(request)
    activity_user_request = ActivityRequest.objects.filter(
        activity=activity,
        member_join=member_login,
        member_create=activity.member_create)
    if len(activity_user_request) != 0:
        return activity_user_request[0]
    return None
Example #24
0
def report_comment(request,comment_id):
	comment = Comment.objects.get(pk=comment_id)
	report = Report.objects.filter(report_type='comment',object_id=comment.pk)
	member_login = get_member_login_object(request)
	if len(report) == 0:	
		new_report = Report.objects.create(report_type='comment',object_id=comment.pk,date=datetime.datetime.now())
		new_report.member_report.add(member_login)
		new_report.save()
	else:
		report[0].member_report.add(member_login)
	return simplejson.dumps({'comment_id': comment_id})
Example #25
0
def accept_friend_request(request,username): 
	member_add_request = Member.objects.get(user=User.objects.get(username=username))
	member_receive_request = get_member_login_object(request)
	fr = FriendshipRequest.objects.filter(from_user=member_add_request.user, to_user=member_receive_request.user)
	print fr
	# In case member A click accept while the other member B already cancel the request
	# we handle by reload the page
	if len(fr) != 0:
		fr[0].accept()
		notify_type= 'accept_friend_request'
		content = ("<div class='notify-main-content'>" + 
						"<a href='/" + member_receive_request.user.username + "' >" + 
							member_receive_request.user.first_name + " " + member_receive_request.user.last_name + 
						"</a>" + 
						" accept your friend request" + 
					"</div>") 
		new_notify = Notify.objects.create(notify_type=notify_type,notify_to=member_add_request,notify_from=member_receive_request,status='new',date=datetime.datetime.now(),content=content)
		new_notify.save()
		n = Notify.objects.get(notify_type='add_friend',notify_to=member_receive_request,notify_from=member_add_request)
		new_content = ("<div class='notify-main-content'>" + 
							"<a href='/" + member_add_request.user.username + "' >" + 
								member_add_request.user.first_name + " " + member_add_request.user.last_name + 
							"</a>" + 
							" want to be friend with you" + 
						"</div>" +
						"<div class='notify-accept-friend-request'>" + 
							"You have accepted this request " + 
						"</div>")
		n.content = new_content
		n.notify_type = 'add_friend_response_accept'
		n.save()
		new_buzz_type = len(Notify.objects.filter(notify_to=member_add_request,status='new'))
		new_mail_type = len(Message.objects.filter(member_receive=member_add_request,status='new'))
		
		# Add and update streams
		friend_activity_content1 = get_stream_content('befriend','friends_content',{'member1':member_receive_request,'member2':member_add_request})
		user_activity_content1 = get_stream_content('befriend','user_content',{'member1':member_receive_request,'member2':member_add_request})
		list_friends_username1 = Friendship.objects.friends_of(member_receive_request.user).values_list('username', flat=True)
		friend_activity_content2 = get_stream_content('befriend','friends_content',{'member1':member_add_request,'member2':member_receive_request})
		user_activity_content2 = get_stream_content('befriend','user_content',{'member1':member_add_request,'member2':member_receive_request})
		list_friends_username2 = Friendship.objects.friends_of(member_add_request.user).values_list('username', flat=True)
		user_exclude = ''
		common_friend_username = get_duplicate_object(list(list_friends_username1)+list(list_friends_username2))
		if len(common_friend_username) > 0: 
			user_exclude=str(common_friend_username)
		user_streams.add_stream_item(member_receive_request.user, friend_activity_content1, user_activity_content1)
		user_streams.add_stream_item(member_add_request.user, friend_activity_content2, user_activity_content2, user_exclude)

		buzz = simplejson.dumps({'new_notify': new_buzz_type+new_mail_type,'new_buzz_type':new_buzz_type,'new_mail_type':new_mail_type, 'username': member_add_request.user.username, 'new_friend_activity1': friend_activity_content1, 'new_friend_activity2': friend_activity_content2, 'list_friends_username1': list(list_friends_username1), 'list_friends_username2': list(list_friends_username2) })
		conn.send(buzz,destination='/update')
		return simplejson.dumps({'username':username,'firstname': member_add_request.user.first_name,'lastname': member_add_request.user.last_name,'reload': "False"})
	else:
		return simplejson.dumps({'reload': "True"})
Example #26
0
def check_activity_seeable(request,activity_id):
	activity = Activity.objects.get(pk=activity_id)
	if activity.activity_type != "invite_only": 
		return True
	else:
		#if SESSION_KEY in request.session:
		#	member_login = Member.objects.get(user=User.objects.get(pk=request.session[SESSION_KEY]))
		member_login = get_member_login_object(request)
		member_create = activity.member_create
		if member_login == member_create or member_login in activity.member_invite.all():
			return True
		return False
Example #27
0
def report_comment(request, comment_id):
    comment = Comment.objects.get(pk=comment_id)
    report = Report.objects.filter(report_type='comment', object_id=comment.pk)
    member_login = get_member_login_object(request)
    if len(report) == 0:
        new_report = Report.objects.create(report_type='comment',
                                           object_id=comment.pk,
                                           date=datetime.datetime.now())
        new_report.member_report.add(member_login)
        new_report.save()
    else:
        report[0].member_report.add(member_login)
    return simplejson.dumps({'comment_id': comment_id})
Example #28
0
def check_activity_seeable(request, activity_id):
    activity = Activity.objects.get(pk=activity_id)
    if activity.activity_type != "invite_only":
        return True
    else:
        #if SESSION_KEY in request.session:
        #	member_login = Member.objects.get(user=User.objects.get(pk=request.session[SESSION_KEY]))
        member_login = get_member_login_object(request)
        member_create = activity.member_create
        if member_login == member_create or member_login in activity.member_invite.all(
        ):
            return True
        return False
Example #29
0
def edit_comment(request,comment_id,comment_content):
	member_login = get_member_login_object(request)
	now = datetime.datetime.now()
	comment = Comment.objects.get(pk=comment_id)
	comment.content = comment_content
	comment.edit_date = now
	comment.save()
	result = {}
	result['comment_id'] = comment_id
	result['member'] = {'username': member_login.user.username,'first_name':member_login.user.first_name, 'last_name': member_login.user.last_name,'avatar': member_login.avatar.url}
	result['content'] = comment.content_html
	result['date'] = comment.edit_elapse_time
	return simplejson.dumps(result)
Example #30
0
def edit_location(request, location_id):
    location = get_object_or_404(Location, pk=location_id)
    member_login = get_member_login_object(request)
    if "error" in request.GET:
        return render_to_response(
                "location_template/page/edit_error.html",
                {
                    "member_login": member_login,
                },
                context_instance=RequestContext(request)
            )
    if request.method =='POST':
        form = LocationForm(request.POST)
        if form.is_valid(): 
            try:
                location.name = request.POST['name']
                location.description = request.POST['description']
                location.category = request.POST['category']
                location.address1 = request.POST['address1']
                location.address2 = request.POST['address2']
                location.city = request.POST['city']
                location.state = request.POST['state']
                location.zip_code = request.POST['zip_code']
                if "avatar" in request.FILES:
                    location.avatar = request.FILES['avatar']
                location.save() 
            except:
                return HttpResponseRedirect("/location/" + location_id + "/edit/?error")
            return HttpResponseRedirect("/" + member_login.user.username + "?edit=location")
    else:
        default_data = {
                "name": location.name, 
                "description": location.description,
                "category": location.category,
                "address1": location.address1,
                "address2": location.address2,
                "city": location.city,
                "state": location.state,
                "zip_code": location.zip_code,
                "avatar": location.avatar,
            }
        form = LocationForm(default_data)
    return render_to_response(
                    "location_template/page/edit.html", 
                    {
                        "form": form, 
                        "member_login": member_login,
                        "location":location,
                    }, 
                    context_instance=RequestContext(request))
Example #31
0
def update_streams(request):
    if request.session['allow_upload_stream']:
        if len(
                Photo.objects.filter(
                    photo_type=request.session['photo_type'],
                    object_id=request.session['object_id'])) > int(
                        request.session['num_photo']):
            member_login = get_member_login_object(request)
            friend_activity_content, user_activity_content = '', ''
            if request.session['photo_type'] == 'activity':
                activity = Activity.objects.get(
                    pk=request.session['object_id'])
                friend_activity_content = get_stream_content(
                    'upload_activity_photo', 'friends_content', {
                        'member_login': member_login,
                        'activity': activity
                    })
                user_activity_content = get_stream_content(
                    'upload_activity_photo', 'user_content', {
                        'member_login': member_login,
                        'activity': activity
                    })
            else:
                location = Location.objects.get(
                    pk=request.session['object_id'])
                friend_activity_content = get_stream_content(
                    'upload_location_photo', 'friends_content', {
                        'member_login': member_login,
                        'location': location
                    })
                user_activity_content = get_stream_content(
                    'upload_location_photo', 'user_content', {
                        'member_login': member_login,
                        'location': location
                    })
            list_friends_username = Friendship.objects.friends_of(
                member_login.user).values_list('username', flat=True)
            user_streams.add_stream_item(member_login.user,
                                         friend_activity_content,
                                         user_activity_content)
            buzz = simplejson.dumps({
                'new_friend_activity':
                friend_activity_content,
                'list_friends_username':
                list(list_friends_username)
            })
            conn.send(buzz, destination='/update')
            request.session['allow_upload_stream'] = False
    return simplejson.dumps({})
Example #32
0
def addfritlocationnumber(request, location_id):
    locationf = Location.objects.get(pk=location_id)
    member_login = get_member_login_object(request)
    flocations = FritLocation.objects.filter(location=locationf)
    clocations = FritLocation.objects.filter(location=locationf,
                                             memberfrit=member_login)
    if len(clocations) == 0:
        current = len(flocations) + 1
        new_frit = FritLocation.objects.create(memberfrit=member_login,
                                               fritnum=current,
                                               location=locationf)
        new_frit.save()
    else:
        current = "You have already fritted !!"
    return simplejson.dumps({'current': current})
Example #33
0
def add_comment(request, location_id, comment_content):
    member_login = get_member_login_object(request)
    location = Location.objects.get(pk=location_id)
    now = datetime.datetime.now()
    new_comment = Comment.objects.create(comment_type='location',
                                         object_id=location_id,
                                         content=comment_content,
                                         member=member_login,
                                         created_date=now)
    new_comment.save()
    result = {}
    result['comment_id'] = new_comment.pk
    result['member'] = {
        'username': member_login.user.username,
        'first_name': member_login.user.first_name,
        'last_name': member_login.user.last_name,
        'avatar': member_login.avatar.url
    }
    result['content'] = new_comment.content_html
    result['date'] = new_comment.created_elapse_time

    #if request.session['allow_comment_stream']:
    friend_activity_content = get_stream_content(
        'add_location_comment', 'friends_content', {
            'member_login': member_login,
            'location': location,
            'comment': new_comment,
            'comment_content': set_fixed_string(new_comment.content, 30)
        })
    user_activity_content = get_stream_content(
        'add_location_comment', 'user_content', {
            'member_login': member_login,
            'location': location
        })
    list_friends_username = Friendship.objects.friends_of(
        member_login.user).values_list('username', flat=True)
    user_streams.add_stream_item(member_login.user, friend_activity_content,
                                 user_activity_content)
    buzz = simplejson.dumps({
        'new_friend_activity':
        friend_activity_content,
        'list_friends_username':
        list(list_friends_username)
    })
    conn.send(buzz, destination='/update')
    #request.session['allow_comment_stream'] = False

    return simplejson.dumps(result)
Example #34
0
def create_location(request):
    member_login = get_member_login_object(request)
    if "error" in request.GET:
        return render_to_response(
                "location_template/page/create_error.html",
                {
                    "member_login": member_login,
                },
                context_instance=RequestContext(request)
            )
    if request.method=='POST':
        form = LocationForm(request.POST, request.FILES)
        if form.is_valid(): 
            try:
                name = request.POST['name']
                description = request.POST['description']
                category = request.POST['category']
                address1 = request.POST['address1']
                address2 = request.POST['address2']
                city = request.POST['city']
                state = request.POST['state']
                zip_code = request.POST['zip_code']
                new_location = Location.objects.create(
                                create_by=member_login,
                                name=name,
                                description=description,
                                address1=address1,
                                address2=address2,
                                city=city,
                                state=state,
                                zip_code=zip_code
                            )
                if "avatar" in request.FILES:
                    new_location.avatar = request.FILES['avatar']
                new_location.save() 
            except:
                return HttpResponseRedirect("/location/create/?error")
            return HttpResponseRedirect("/" + member_login.user.username + "?create=location")
    else:
        form = LocationForm()
    return render_to_response(
                "location_template/page/create.html", 
                {
                    "form": form,
                    'member_login': member_login,
                }, 
                context_instance=RequestContext(request))
Example #35
0
def password_reset(request, **kwargs):
    member_login = get_member_login_object(request)
    if member_login:
        return HttpResponseRedirect("/")
    form_class = kwargs.pop("form_class", ResetPasswordForm)
    #template_name = kwargs.pop("template_name", "account/password_reset.html")
    template_name = 'auth_template/page/password_reset.html'

    if request.method == "POST":
        password_reset_form = form_class(request.POST)
        if password_reset_form.is_valid():
            password_reset_form.save()
            return HttpResponseRedirect(reverse(password_reset_done))
    else:
        password_reset_form = form_class()
    
    return render_to_response(template_name, RequestContext(request, { "password_reset_form": password_reset_form, }))
Example #36
0
def get_specific_conversation(request, member_chat):
    member_login = get_member_login_object(request)
    if check_user_block(member_login.user, member_chat.user):
        return 'redirect'
    new_messages = Message.objects.filter(
        (Q(member_send=member_login, member_receive=member_chat)
         | Q(member_send=member_chat, member_receive=member_login)),
        Q(status='new'))
    for new_message in new_messages:
        new_message.status = 'old'
        new_message.save()
    messages = list(
        Message.objects.filter(
            Q(member_send=member_login, member_receive=member_chat)
            | Q(member_send=member_chat, member_receive=member_login)).
        order_by('date'))
    return messages
Example #37
0
def removefritlocationnumber(request, location_id):
    locationf = Location.objects.get(pk=location_id)
    member_login = get_member_login_object(request)
    flocation = FritLocation.objects.filter(location=locationf,
                                            memberfrit=member_login)
    tmp = 0
    if len(flocation) > 0:
        for x in flocation:
            tmp = x.fritnum
            break
    mlocations = FritLocation.objects.filter(fritnum__gt=tmp)
    for x in mlocations:
        num = x.fritnum
        FritLocation.objects.filter(fritnum=num).update(fritnum=num - 1)
    FritLocation.objects.filter(location=locationf,
                                memberfrit=member_login).delete()
    current = "Unfritted successfully"
    return simplejson.dumps({'current': current})
Example #38
0
def edit_comment(request, comment_id, comment_content):
    member_login = get_member_login_object(request)
    now = datetime.datetime.now()
    comment = Comment.objects.get(pk=comment_id)
    comment.content = comment_content
    comment.edit_date = now
    comment.save()
    result = {}
    result['comment_id'] = comment_id
    result['member'] = {
        'username': member_login.user.username,
        'first_name': member_login.user.first_name,
        'last_name': member_login.user.last_name,
        'avatar': member_login.avatar.url
    }
    result['content'] = comment.content_html
    result['date'] = comment.edit_elapse_time
    return simplejson.dumps(result)
Example #39
0
def join_activity_request(request, activity_id):
    member_login = get_member_login_object(request)
    activity = Activity.objects.get(pk=activity_id)
    activity_request = ActivityRequest.objects.filter(
        activity=activity,
        member_join=member_login,
        member_create=activity.member_create)
    if len(activity_request) != 0:
        activity_request[0].request_status = 'Waiting'
        activity_request[0].save()
    else:
        new_request = ActivityRequest.objects.create(
            activity=activity,
            member_join=member_login,
            member_create=activity.member_create,
            request_status='Waiting',
            date=datetime.datetime.now())
        new_request.save()
    notify_type = 'join_activity_request'
    content = ("<a href='/" + member_login.user.username + "' >" +
               member_login.user.first_name + " " +
               member_login.user.last_name + "</a>" +
               " want to join your activity " + "<a href='/activity/" +
               str(activity.pk) + "' >" + activity.name + "</a>")
    new_notify = Notify.objects.create(notify_type=notify_type,
                                       notify_to=activity.member_create,
                                       notify_from=member_login,
                                       status='new',
                                       date=datetime.datetime.now(),
                                       content=content)
    new_notify.save()
    new_buzz_type = len(
        Notify.objects.filter(notify_to=activity.member_create, status='new'))
    new_mail_type = len(
        Message.objects.filter(member_receive=activity.member_create,
                               status='new'))
    buzz = simplejson.dumps({
        'new_notify': new_buzz_type + new_mail_type,
        'new_buzz_type': new_buzz_type,
        'new_mail_type': new_mail_type,
        'username': activity.member_create.user.username
    })
    conn.send(buzz, destination='/update')
    return simplejson.dumps({})
Example #40
0
def show_feeds(request):
    member_login = get_member_login_object(request)
    autocomplete_data = get_autocomplete_data(request)
    friends = member_login.get_friends()
    friends_activity_stream = get_friend_activity_stream(
        request, 'page_content')[:PAGE_STREAM_LIMIT]
    new_buzzes = get_new_buzzes(request)
    new_mail = get_new_mail(request)
    new_notify = len(new_buzzes) + len(new_mail)
    return render_to_response('feed_template/page/main_page.html', {
        "member_login": member_login,
        "autocomplete_data": autocomplete_data,
        'friends': friends,
        'friends_activity_stream': friends_activity_stream,
        'new_notify': new_notify,
        'new_buzzes': new_buzzes,
        'new_mail': new_mail
    },
                              context_instance=RequestContext(request))
Example #41
0
def show_feeds(request):
	member_login = get_member_login_object(request)
	autocomplete_data = get_autocomplete_data(request)
	friends = member_login.get_friends()
	friends_activity_stream = get_friend_activity_stream(request,'page_content')[:PAGE_STREAM_LIMIT]
	new_buzzes = get_new_buzzes(request)
	new_mail = get_new_mail(request)
	new_notify = len(new_buzzes) + len(new_mail)
	return render_to_response('feed_template/page/main_page.html',
							{
								"member_login": member_login,
								"autocomplete_data": autocomplete_data,
								'friends': friends,
								'friends_activity_stream':friends_activity_stream,
								'new_notify': new_notify,
								'new_buzzes': new_buzzes,
								'new_mail': new_mail
							},
							context_instance=RequestContext(request)
							)
Example #42
0
def add_comment(request,activity_id,comment_content):
	member_login = get_member_login_object(request)
	activity = Activity.objects.get(pk=activity_id)
	now = datetime.datetime.now()
	new_comment = Comment.objects.create(comment_type='activity',object_id=activity_id,content=comment_content,member=member_login,created_date=now)
	new_comment.save()
	result = {}
	result['comment_id'] = new_comment.pk
	result['member'] = {'username': member_login.user.username,'first_name':member_login.user.first_name, 'last_name': member_login.user.last_name,'avatar': member_login.avatar.url}
	result['content'] = new_comment.content_html
	result['date'] = new_comment.created_elapse_time
	
	#if request.session['allow_comment_stream']:	
	friend_activity_content = get_stream_content('add_activity_comment','friends_content',{'member_login':member_login,'activity':activity, 'comment': new_comment, 'comment_content':set_fixed_string(new_comment.content,30)})
	user_activity_content = get_stream_content('add_activity_comment','user_content',{'member_login':member_login,'activity':activity})
	list_friends_username = Friendship.objects.friends_of(member_login.user).values_list('username', flat=True)
	user_streams.add_stream_item(member_login.user, friend_activity_content, user_activity_content)
	buzz = simplejson.dumps({'new_friend_activity': friend_activity_content, 'list_friends_username': list(list_friends_username) })
	conn.send(buzz,destination='/update')
	#request.session['allow_comment_stream'] = False
	return simplejson.dumps(result)
Example #43
0
def get_specific_conversation(request, member_chat):
    member_login = get_member_login_object(request)
    if check_user_block(member_login.user, member_chat.user):
        return "redirect"
    new_messages = Message.objects.filter(
        (
            Q(member_send=member_login, member_receive=member_chat)
            | Q(member_send=member_chat, member_receive=member_login)
        ),
        Q(status="new"),
    )
    for new_message in new_messages:
        new_message.status = "old"
        new_message.save()
    messages = list(
        Message.objects.filter(
            Q(member_send=member_login, member_receive=member_chat)
            | Q(member_send=member_chat, member_receive=member_login)
        ).order_by("date")
    )
    return messages
Example #44
0
def cancel_joining_activity(request, activity_id, message):
	member_login = get_member_login_object(request)
	activity = Activity.objects.get(pk=activity_id)
	activity.member_join.remove(member_login)
	activity_request = ActivityRequest.objects.get(activity=activity,member_join=member_login,member_create=activity.member_create)
	activity_request.delete()
	notify_type= 'cancel_joining_activity'
	content = ("<a href='/" + member_login.user.username + "' >" + 
					member_login.user.first_name + " " + member_login.user.last_name + 
				"</a>" + 
				" want to cancel attending your activity " + 
				"<a href='/activity/" + str(activity.pk) + "' >" + 
					activity.name + 
				"</a>." + 
				"\n The reason for this cancel is: \n" + message)
	new_notify = Notify.objects.create(notify_type=notify_type,notify_to=activity.member_create,notify_from=member_login,status='new',date=datetime.datetime.now(),content=content)
	new_notify.save()
	new_buzz_type = len(Notify.objects.filter(notify_to=activity.member_create,status='new'))
	new_mail_type = len(Message.objects.filter(member_receive=activity.member_create,status='new'))
	buzz = simplejson.dumps({'new_notify': new_mail_type + new_buzz_type, 'new_buzz_type':new_buzz_type,'new_mail_type': new_mail_type, 'username': activity.member_create.user.username})
	conn.send(buzz,destination='/update')
	return simplejson.dumps({'activity_id':activity_id})
Example #45
0
def recommend_friend(request,activity_id,friends):
	activity = Activity.objects.get(pk=activity_id)
	member_login = get_member_login_object(request)
	members = Member.objects.filter(pk__in=friends)
	#print members
	for member in members:
		if len(Notify.objects.filter(notify_type='recommend_activity',notify_to=member,notify_from=member_login,object_id=activity_id)) == 0:
			notify_type = 'recommend_activity'
			content = ("<a href='/" + member_login.user.username + "' >" + 
							member_login.user.first_name + " " + member_login.user.last_name + 
						"</a>" + 
						" recommend you this activity " + 
						"<a href='/activity/" + str(activity.pk) + "' >" + 
							activity.name + 
						"</a>.")
			new_notify = Notify.objects.create(object_id=activity_id,notify_type=notify_type,status='new',notify_to=member,notify_from=member_login,date=datetime.datetime.now(),content=content)
			new_notify.save()
			new_buzz_type = len(Notify.objects.filter(notify_to=member,status='new'))
			new_mail_type = len(Message.objects.filter(member_receive=member,status='new'))
			buzz = simplejson.dumps({'new_notify': new_mail_type+new_buzz_type,'new_buzz_type':new_buzz_type,'new_mail_type': new_mail_type, 'username': member.user.username})
			conn.send(buzz,destination='/update')
	return simplejson.dumps({})
Example #46
0
def message_main_view(request):
    autocomplete_data = get_autocomplete_data(request)

    member_login = get_member_login_object(request)
    friends = member_login.get_friends()
    friends_autocomplete_data = get_friends_autocomplete_data(request,
                                                              message=True)
    messages = get_all_conversation(request)
    new_buzzes = get_new_buzzes(request)
    new_mail = get_new_mail(request)
    new_notify = len(new_buzzes) + len(new_mail)
    return render_to_response('message_template/page/main_page.html', {
        'autocomplete_data': autocomplete_data,
        'member_login': member_login,
        'new_buzzes': new_buzzes,
        'new_mail': new_mail,
        'new_notify': new_notify,
        'friends': friends,
        'friends_autocomplete_data': friends_autocomplete_data,
        'messages': messages
    },
                              context_instance=RequestContext(request))
Example #47
0
def cancel_friend_request(request,username):
	member_add_request = get_member_login_object(request)
	member_receive_request = Member.objects.get(user=User.objects.get(username=username))
	fr = FriendshipRequest.objects.filter(from_user=member_add_request.user, to_user=member_receive_request.user, accepted=False)
	if len(fr) != 0:
		fr[0].cancel()
		n = Notify.objects.get(notify_type='add_friend',notify_to=member_receive_request,notify_from=member_add_request)
		new_content = ("<div class='notify-main-content'>" + 
							"<a href='/" + member_add_request.user.username + "' >" + 
								member_add_request.user.first_name + " " + member_add_request.user.last_name + 
							"</a>" + 
							" want to be friend with you" + 
						"</div>" + 
						"<div class='notify-request-not-active'>" +
							" This request is no longer active " + 
						"</div>")
		n.content = new_content
		n.notify_type = 'friend_request_not_active'
		n.save()
		return simplejson.dumps({'username':username,'firstname': member_receive_request.user.first_name,'lastname': member_receive_request.user.last_name, 'reload': 'False', 'gender': member_receive_request.gender})
	else:
		return simplejson.dumps({'reload':'True'})
Example #48
0
def decline_friend_request(request,username):
	member_add_request = Member.objects.get(user=User.objects.get(username=username))
	member_receive_request = get_member_login_object(request)
	fr = FriendshipRequest.objects.filter(from_user=member_add_request.user, to_user=member_receive_request.user, accepted=False)
	if len(fr) != 0:
		fr[0].decline()
		n = Notify.objects.get(notify_type='add_friend',notify_to=member_receive_request,notify_from=member_add_request)
		new_content = ("<div class='notify-main-content'>" + 
							"<a href='/" + member_add_request.user.username + "' >" + 
								member_add_request.user.first_name + " " + member_add_request.user.last_name + 
							"</a>" + 
							" want to be friend with you" + 
						"</div>" + 
		 				"<div class='notify-decline-friend-request'>" +
		 					"You have declined this request" + 
		 				"</div>")
		n.content = new_content
		n.notify_type = 'add_friend_response_decline'
		n.save()
		return simplejson.dumps({'username':username,'firstname': member_add_request.user.first_name,'lastname': member_add_request.user.last_name,'reload':'False'})
	else:
		return simplejson.dumps({'reload':'True'})
Example #49
0
def recommend_friend(request, activity_id, friends):
    activity = Activity.objects.get(pk=activity_id)
    member_login = get_member_login_object(request)
    members = Member.objects.filter(pk__in=friends)
    #print members
    for member in members:
        if len(
                Notify.objects.filter(notify_type='recommend_activity',
                                      notify_to=member,
                                      notify_from=member_login,
                                      object_id=activity_id)) == 0:
            notify_type = 'recommend_activity'
            content = ("<a href='/" + member_login.user.username + "' >" +
                       member_login.user.first_name + " " +
                       member_login.user.last_name + "</a>" +
                       " recommend you this activity " +
                       "<a href='/activity/" + str(activity.pk) + "' >" +
                       activity.name + "</a>.")
            new_notify = Notify.objects.create(object_id=activity_id,
                                               notify_type=notify_type,
                                               status='new',
                                               notify_to=member,
                                               notify_from=member_login,
                                               date=datetime.datetime.now(),
                                               content=content)
            new_notify.save()
            new_buzz_type = len(
                Notify.objects.filter(notify_to=member, status='new'))
            new_mail_type = len(
                Message.objects.filter(member_receive=member, status='new'))
            buzz = simplejson.dumps({
                'new_notify': new_mail_type + new_buzz_type,
                'new_buzz_type': new_buzz_type,
                'new_mail_type': new_mail_type,
                'username': member.user.username
            })
            conn.send(buzz, destination='/update')
    return simplejson.dumps({})
Example #50
0
def add_friend(request,username):
	member_add_request = get_member_login_object(request)
	member_receive_request = Member.objects.get(user=User.objects.get(username=username))
	try:
		fr = FriendshipRequest.objects.get(from_user=member_add_request.user,to_user=member_receive_request.user,accepted=True)
		fr.accepted = False
		fr.save()
	except:
		FriendshipRequest.objects.create(from_user=member_add_request.user, to_user=member_receive_request.user, message='')
	try:
		Friendship.objects.get(user=member_add_request.user)
	except Friendship.DoesNotExist:
		Friendship.objects.create(user=member_add_request.user)
	try:
		Friendship.objects.get(user=member_receive_request.user)
	except Friendship.DoesNotExist:
		Friendship.objects.create(user=member_receive_request.user)
	if len(Notify.objects.filter(notify_type='add_friend',notify_to=member_receive_request,notify_from=member_add_request)) == 0:
		notify_type= 'add_friend'
		new_notify = Notify.objects.create(notify_type=notify_type,notify_to=member_receive_request,notify_from=member_add_request,status='new',date=datetime.datetime.now(),content='')
		content = ("<div class='notify-main-content'>" + 
						"<a href='/" + member_add_request.user.username + "/' >" + 
								member_add_request.user.first_name + " " + member_add_request.user.last_name + 
						"</a>" + 
							" want to be friend with you" + 
					"</div>" +
					"<div class='decide-btn-area'>" + 
						"<input type='hidden' id='get_username_notify" + str(new_notify.pk) + "' value='" + member_add_request.user.username + "' >" + 
						"<input type='button' class='btn btn-primary' value='Accept' onClick='handle_accept_friend_request(" + str(new_notify.pk) + ")'/>" + 
						"<input type='button' class='btn' value='Decline' onClick='handle_decline_friend_request(" + str(new_notify.pk) + ")' />" + 
					"</div>")
		new_notify.content = content
		new_notify.save()
		new_buzz_type = len(Notify.objects.filter(notify_to=member_receive_request,status='new'))
		new_mail_type = len(Message.objects.filter(member_receive=member_receive_request,status='new'))
		buzz = simplejson.dumps({'new_notify': new_mail_type+new_buzz_type,'new_buzz_type':new_buzz_type,'new_mail_type':new_mail_type, 'username': member_receive_request.user.username})
		conn.send(buzz,destination='/update')
	return simplejson.dumps({'username':username,'firstname': member_receive_request.user.first_name,'lastname': member_receive_request.user.last_name})
Example #51
0
def message_main_view(request):
	autocomplete_data = get_autocomplete_data(request)

	member_login = get_member_login_object(request)
	friends = member_login.get_friends()
	friends_autocomplete_data = get_friends_autocomplete_data(request,message=True)
	messages = get_all_conversation(request)
	new_buzzes = get_new_buzzes(request)
	new_mail = get_new_mail(request)
	new_notify = len(new_buzzes) + len(new_mail)
	return render_to_response('message_template/page/main_page.html',
						{
							'autocomplete_data': autocomplete_data,
							'member_login': member_login,
							'new_buzzes': new_buzzes,
							'new_mail': new_mail,
							'new_notify': new_notify,
							'friends': friends,
							'friends_autocomplete_data': friends_autocomplete_data,
							'messages': messages 
						},
						context_instance=RequestContext(request)
					)
Example #52
0
def cancel_joining_activity(request, activity_id, message):
    member_login = get_member_login_object(request)
    activity = Activity.objects.get(pk=activity_id)
    activity.member_join.remove(member_login)
    activity_request = ActivityRequest.objects.get(
        activity=activity,
        member_join=member_login,
        member_create=activity.member_create)
    activity_request.delete()
    notify_type = 'cancel_joining_activity'
    content = ("<a href='/" + member_login.user.username + "' >" +
               member_login.user.first_name + " " +
               member_login.user.last_name + "</a>" +
               " want to cancel attending your activity " +
               "<a href='/activity/" + str(activity.pk) + "' >" +
               activity.name + "</a>." +
               "\n The reason for this cancel is: \n" + message)
    new_notify = Notify.objects.create(notify_type=notify_type,
                                       notify_to=activity.member_create,
                                       notify_from=member_login,
                                       status='new',
                                       date=datetime.datetime.now(),
                                       content=content)
    new_notify.save()
    new_buzz_type = len(
        Notify.objects.filter(notify_to=activity.member_create, status='new'))
    new_mail_type = len(
        Message.objects.filter(member_receive=activity.member_create,
                               status='new'))
    buzz = simplejson.dumps({
        'new_notify': new_mail_type + new_buzz_type,
        'new_buzz_type': new_buzz_type,
        'new_mail_type': new_mail_type,
        'username': activity.member_create.user.username
    })
    conn.send(buzz, destination='/update')
    return simplejson.dumps({'activity_id': activity_id})