def type_add(request, response_format="html"): "ContactType add" if not request.user.get_profile().is_admin("maker.identities"): return user_denied( request, message="You don't have administrator access to the Infrastructure module", response_format=response_format, ) if request.POST: if not "cancel" in request.POST: contact_type = ContactType() form = ContactTypeForm(request.user.get_profile(), request.POST, instance=contact_type) if form.is_valid(): contact_type = form.save(request) contact_type.set_user_from_request(request) return HttpResponseRedirect(reverse("identities_type_view", args=[contact_type.id])) else: return HttpResponseRedirect(reverse("identities_settings_view")) else: form = ContactTypeForm(request.user.get_profile()) context = _get_default_context(request) context.update({"form": form}) return render_to_response( "identities/contact_type_add", context, context_instance=RequestContext(request), response_format=response_format, )
def type_edit(request, type_id, response_format="html"): "ContactType edit" contact_type = get_object_or_404(ContactType, pk=type_id) if not request.user.get_profile().has_permission(contact_type, mode="w"): return user_denied( request, message="You don't have access to this Contact Type", response_format=response_format ) identities = Object.filter_by_request(request, Contact.objects.filter(contact_type=contact_type).order_by("name")) if request.POST: if not "cancel" in request.POST: form = ContactTypeForm(request.user.get_profile(), request.POST, instance=contact_type) if form.is_valid(): contact_type = form.save(request) return HttpResponseRedirect(reverse("identities_type_view", args=[contact_type.id])) else: return HttpResponseRedirect(reverse("identities_type_view", args=[contact_type.id])) else: form = ContactTypeForm(request.user.get_profile(), instance=contact_type) context = _get_default_context(request) context.update({"identities": identities, "form": form, "type": contact_type}) return render_to_response( "identities/contact_type_edit", context, context_instance=RequestContext(request), response_format=response_format, )