def element(request, type, id): """ Controller to get element page :param request: HTTP request :param type: element type :param id: element id :return: """ if type == 'scrb' or type == 'pr': transact = DBService.get_transact(id) if not transact: return default_404(request) as_partial = bool(request.GET.get('as_partial', False)) return render_to_response('transact_element_partial.html' if as_partial else 'element_base.html', {'transact': transact, 'type': type}, context_instance=RequestContext(request)) elif type == 'profile': try: profile = User.objects.get(email=id) except ObjectDoesNotExist as e: return default_404(request) return render_to_response('profile.html', {'profile': profile}, context_instance=RequestContext(request)) return HttpResponse(status=200)
def create_new_user(request, template): """ Create new user controller :param request: HTTP request :param template: html template :return: """ if request.POST: new_user_form = NewUserForm(request.POST) transact_id = request.POST.get('transactId') transact = DBService.get_transact(transact_id) if new_user_form.errors: return JsonResponse({'data': new_user_form.errors}, status=400) result = ProfileService.create_profile(new_user_form.data) if result.is_success: if transact: transact.confirm() message = MailMessage(settings.INFO_EMAIL, 'Данные вашего профиля', 'mail_tmpl_profile_created.html', { 'username': new_user_form.data['userName'], 'password': new_user_form.data['userPassword'] }, new_user_form.data['userEmail']) message.send() return HttpResponse(status=201) logger.error(Code.PCRERR, data=result.data) return HttpResponse(status=500, content=result.data) else: params = {} transact_id = request.GET.get('transact_id') transact = DBService.get_transact(transact_id) if transact: params['transact_id'] = transact.transact_id params['username'] = transact.username params['email'] = transact.email return render_to_response(template, params, context_instance=RequestContext(request))
def transact_action(request, action): """ Controller to execute transact action :param request: HTTP request :return: JsonResponse instance """ transact_id = request.POST.get('transactId') transact = DBService.get_transact(transact_id) if not transact: return HttpResponse(status=500) result = transact.__getattribute__(action)(request=request) if result: return JsonResponse({'transactId': transact.transact_id}) return HttpResponse(status=500)