def new_password(request): sent = False if request.method == 'POST': sent = True members = MemberDao.members_by_email(request.POST.get('username')) if len(members) > 0: member = members[0] pw = password_generator() member.user.set_password(pw) member.user.save() send_mail_password_reset(member.email, pw) renderdict = {'sent': sent} return render(request, 'newpassword.html', renderdict)
def add_member(request, subscription_id): shareerror = False shares = 0 memberexists = False memberblocked = False main_member = request.user.member subscription = get_object_or_404(Subscription, id=subscription_id) if request.method == 'POST': memberform = RegisterMemberForm(request.POST) try: if Config.enable_shares(): shares = int(request.POST.get('shares')) shareerror = shares < 0 except: shareerror = True member = next( iter(MemberDao.members_by_email(request.POST.get('email')) or []), None) if member is not None: memberexists = True memberblocked = member.blocked if memberform.is_valid() or (memberexists is True and memberblocked is False): if memberexists is False: member = Member(**memberform.cleaned_data) create_member(member, subscription, main_member, shares) else: update_member(member, subscription, main_member, shares) for i in range(shares): create_share(member) return redirect('/my/subscription/detail/' + str(subscription_id) + '/') else: initial = { 'addr_street': main_member.addr_street, 'addr_zipcode': main_member.addr_zipcode, 'addr_location': main_member.addr_location, 'phone': main_member.phone, } memberform = RegisterMemberForm(initial=initial) renderdict = { 'shares': shares, 'memberexists': memberexists, 'memberblocked': memberblocked, 'shareerror': shareerror, 'memberform': memberform, 'subscription_id': subscription_id } return render(request, 'add_member.html', renderdict)
def cs_add_member(request): memberexists = False memberblocked = False co_members = request.session.get('create_co_members', []) if request.user.is_authenticated: main_member = request.user.member else: main_member = request.session.get('main_member') if main_member is None: return redirect('http://' + Config.server_url()) if request.method == 'POST': memberform = RegisterMemberForm(request.POST) member = next( iter(MemberDao.members_by_email(request.POST.get('email')) or []), None) if member is not None: memberexists = True memberblocked = member.blocked if memberform.is_valid() or (memberexists is True and memberblocked is False): if memberexists is False: member = Member(**memberform.cleaned_data) co_members.append(member) request.session['create_co_members'] = co_members initial = { 'addr_street': main_member.addr_street, 'addr_zipcode': main_member.addr_zipcode, 'addr_location': main_member.addr_location, 'phone': main_member.phone, } memberform = RegisterMemberForm(initial=initial) renderdict = { 'memberexists': memberexists, 'memberblocked': memberblocked, 'memberform': memberform, } return render(request, 'createsubscription/add_member_cs.html', renderdict)
def add_member(request, subscription_id): shareerror = False shares = 1 memberexists = False memberblocked = False if request.method == 'POST': memberform = MemberProfileForm(request.POST) try: shares = int(request.POST.get("shares")) shareerror = shares < 0 except: shareerror = True member = next( iter(MemberDao.members_by_email(request.POST.get('email')) or []), None) if member is not None: memberexists = True shares = 0 if member.subscription is not None: memberblocked = True if (memberform.is_valid() and shareerror is False) or (memberexists is True and memberblocked is False): tmp_shares = [] pw = None if memberexists is False: for num in range(0, shares): member = Member(**memberform.cleaned_data) tmp_shares.append(Share(member=member, paid_date=None)) else: for share in member.share_set.all(): tmp_shares.append(share) if request.GET.get("return"): member.subscription_id = subscription_id member.save() send_been_added_to_subscription( member.email, pw, request.user.member.get_name(), shares, hashlib.sha1(memberform.cleaned_data['email'] + str(subscription_id)).hexdigest()) if memberexists is False: for share in tmp_shares: share.save() send_share_created_mail(share) return redirect(request.GET.get("return")) else: co_members_shares = request.session.get( 'create_co_members_shares', []) co_members_shares += tmp_shares request.session['create_co_members_shares'] = co_members_shares co_members = request.session.get('create_co_members', []) co_members.append(member) request.session['create_co_members'] = co_members return redirect('/my/create/subscrition') else: if request.user.is_authenticated(): member = request.user.member else: member = request.session.get('main_member') if member is None: return redirect("http://" + Config.server_url()) initial = { "addr_street": member.addr_street, "addr_zipcode": member.addr_zipcode, "addr_location": member.addr_location, "phone": member.phone, } memberform = MemberProfileForm(initial=initial) renderdict = { 'shares': shares, 'memberexists': memberexists, 'memberblocked': memberexists, 'shareerror': shareerror, 'memberform': memberform, "member": member, "depots": DepotDao.all_depots(), "cancelUrl": request.GET.get("return") if request.GET.get("return") else '/my/create/subscrition' } return render(request, "add_member.html", renderdict)