def preconfigured_merchant(request): if request.method == 'GET': form_user = UserForm() form_user_extension = UserExtensionForm() context = {'form_user' : form_user, 'form_user_extension' : form_user_extension } return render_to_response('preconfigured_merchant_form.html', context_instance=RequestContext(request, context)) else: user= User() user.is_active = False form_user = UserForm(request.POST,request.FILES, instance=user) if form_user.is_valid(): form_user.save() user_extension = UserExtension.create_from_user(user) user_extension.is_merchant = True form_user_extension = UserExtensionForm(request.POST,request.FILES,instance=user_extension) if form_user_extension.is_valid(): form_user_extension.save() utils.send_email_for_preconfigured_merchant(user_extension) context = { 'message' : 'Settings saved successfuly', 'return_url' : '/admin/', 'return_title' : 'Back to admin home' } return render_to_response('admin_form_saved.html',context_instance=RequestContext(request, context )) else: form_user_extension = UserExtensionForm() context = {'form_user' : form_user, 'form_user_extension' : form_user_extension } return render_to_response('preconfigured_merchant_form.html', context_instance=RequestContext(request, context))
def get_user_extension_from_request(user,request): qry = UserExtension.objects.filter(user=user)[:1] ext = None if len(qry) > 0: ext = qry[0] if not ext: ext = UserExtension.create_from_user(user) referrer = get_referrer_from_request(request) if referrer: ext.referred_by = referrer ext.referred_by_id = referrer.id if request.session.get('is_merchant'): ext.is_merchant = True return ext
def send_validation_mail_to_user(user_id, email=None, **kwargs): if 'user' in kwargs: user = kwargs['user'] else: user = User.objects.get(id=user_id) if user is None: return False try: user_ext = UserExtension.objects.get(user=user) except UserExtension.DoesNotExist: user_ext = UserExtension.create_from_user(user) validation_code = ''.join([random.choice('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789') for i in xrange(20)]) user_ext.validation_code = validation_code user_ext.save() if email is None: email = user.email context = {'validation_link': settings.HTTP_BASE_URL + reverse('socialauth.views.validate') + '?id=%s&code=%s' % (user_id, validation_code)} return send_email_with_template(settings.EMAIL_HOST_USER,[email],'Welcome to Let\'s Bench', 'email_validation.html', context)
def comment_merchant(request,username): if request.method == 'GET': form = MerchantMessageForm() return render_to_response('merchants/comment.html',context_instance=RequestContext(request, {'form':form})) else: merchant = UserExtension.get_merchant(name=username) if merchant: msg = UserMessage(to=merchant) if request.user_extension: msg.sender = request.user_extension else: msg.sender_session = request.session.session_key message = request.POST.get('message') form = MerchantMessageForm(request.POST,instance=msg) if form.is_valid(): form.save() return HttpResponse('ok sent') else: return render_to_response('merchants/comment.html',context_instance=RequestContext(request, {'form':form})) else: return HttpResponse('no such merchant')
def merchant_profile(request, username): merchant = UserExtension.get_merchant(user=User.objects.get(username=username),is_deleted=False) template_name = 'merchants/merchant_profile.html' return render_to_response(template_name, {'merchant': merchant}, context_instance=RequestContext(request))