Beispiel #1
0
def add_group_members(request, url):
	"""Display and catch AddMembersForm"""
	
	extra = 3
	initial = []
	data = {}
	info_initial = {'description': ''}

	if request.method == 'POST' and request.POST['submitType'] != '':
		formCopy = request.POST.copy()
		mod = 0
		del formCopy['form-TOTAL_FORMS'], formCopy['form-INITIAL_FORMS']
		
		if request.POST['submitType'] == 'addRowSubmit':
			del formCopy['submitType']
			extra = 1
		
		if request.POST['submitType'] == 'removeRowSubmit':
			del formCopy['submitType']
			extra = 0
			last_row_values = [formCopy[key] for key in sorted(formCopy, reverse=True)[:3] if formCopy[key].strip() != '']
			if int(request.POST['form-TOTAL_FORMS']) > 1 and len(last_row_values) == 0:
				mod = -3

		info_initial['description'] = formCopy['description']
		del formCopy['description']

		template = ['email', 'first_name', 'phone']
		form_keys = sorted(formCopy)
		for i in range(0,(len(formCopy)+mod)/3):
			values = [formCopy[key] for key in form_keys[(i*3):(i*3+3)]]
			initial.append(zip(template, values))


	FormSet = formset_factory(AddMembersForm, formset=BaseAddMembersFormSet, extra=extra)

	if request.method == 'POST' and request.POST['submitType'] == 'saveSubmit':
		form = FormSet(request.POST)
		info_form = AddMembersExtraInfoForm(request.POST)
		if form.is_valid() and info_form.is_valid():
			form.save(url, info_form.cleaned_data['description'])

			#if request.user.is_anonymous():
			request.session['fresh_site'] = True

			return json.to_json_response({'s': True})
		else:
			data['s'] = False
	else:
		form = FormSet(initial=initial)
		info_form = AddMembersExtraInfoForm(initial=info_initial)
		data['s'] = False

	data['form'] = json.clean_json(json.render_to_json('members/add_members.html', {'form': form, 'info_form': info_form}))

	
	#return render_to_response('members/add_members.html', data, context_instance=RequestContext(request))
	return json.to_json_response(data)
Beispiel #2
0
def rename_site(request, url):
	"""Rename group site"""
	data = {}
	if request.method == 'POST':
		site = get_object_or_404(GroupSite, Q(random_name=url) | Q(name=url))
		form = RenameSiteForm(request.POST, instance=site)
		if form.is_valid():
			new_site = form.save(commit=False)
			new_site.name_changed = True
			new_site.save()
			return json.to_json_response({'s': True, 'title': new_site.title})
		else:
			data = {'s': False, 'errors': form.errors.keys()}
	else:
		form = RenameSiteForm()

	data['form'] = json.clean_json(json.render_to_json('sites/renameSiteForm.html', {'form': form}))
	
	return json.to_json_response(data)
Beispiel #3
0
def load_quick_tour(request, url):
	content = json.clean_json(json.render_to_json('sites/quickTour.html', {'MEDIA_URL': settings.MEDIA_URL}))
	return json.to_json_response({'content': content})