1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-24 21:07:17 +00:00

[edit_contact]change from a page to a popup in contact_list

This commit is contained in:
llj
2012-08-02 12:01:22 +08:00
parent 22e90d06d3
commit 894b05f6d6
4 changed files with 75 additions and 72 deletions

View File

@@ -19,9 +19,16 @@ from seaserv import ccnet_rpc, ccnet_threaded_rpc
def contact_list(request):
contacts = Contact.objects.filter(user_email=request.user.username)
form = ContactAddForm({'user_email':request.user.username})
edit_init_data = {'user_email':request.user.username,
'contact_email':'',
'contact_name':'',
'note':''}
edit_form = ContactEditForm(edit_init_data)
return render_to_response('contacts/contact_list.html', {
'contacts': contacts,
'form': form,
'edit_form': edit_form,
}, context_instance=RequestContext(request))
@@ -30,10 +37,6 @@ def contact_add_post(request):
"""
Handle ajax post to add a contact.
"""
if not request.is_ajax() and not request.method == 'POST':
raise Http404
result = {}
content_type = 'application/json; charset=utf-8'
@@ -85,43 +88,26 @@ def contact_add(request):
@login_required
def contact_edit(request):
"""
Edit contact info.
Ajax post to edit contact info.
"""
if request.method == 'POST':
form = ContactEditForm(request.POST)
if form.is_valid():
user_email = form.cleaned_data['user_email']
contact_email = form.cleaned_data['contact_email']
contact_name = form.cleaned_data['contact_name']
note = form.cleaned_data['note']
try:
contact = Contact.objects.get(user_email=user_email,
contact_email=contact_email)
except Contact.DoesNotExist:
return render_error(request, '联系人不存在')
else:
contact.contact_name = contact_name
contact.note = note
contact.save()
return HttpResponseRedirect(reverse('contact_list'))
result = {}
content_type = 'application/json; charset=utf-8'
form = ContactEditForm(request.POST)
if form.is_valid():
user_email = form.cleaned_data['user_email']
contact_email = form.cleaned_data['contact_email']
contact_name = form.cleaned_data['contact_name']
note = form.cleaned_data['note']
contact = Contact.objects.get(user_email=user_email, contact_email=contact_email)
contact.contact_name = contact_name
contact.note = note
contact.save()
result['success'] = True
return HttpResponse(json.dumps(result), content_type=content_type)
else:
contact_email = request.GET.get('email', '')
c = Contact.objects.filter(user_email=request.user.username,
contact_email=contact_email)
if not c:
return render_error(request, '联系人不存在')
else:
init_data = {'user_email':request.user.username,
'contact_email':contact_email,
'contact_name':c.get().contact_name,
'note':c.get().note}
form = ContactEditForm(init_data)
return render_to_response('contacts/contact_edit.html', {
'form': form,
}, context_instance=RequestContext(request))
return HttpResponseBadRequest(json.dumps(form.errors),
content_type=content_type)
@login_required
def contact_delete(request):