def membership(request, membership_id): membership = get_object_or_404(Membership, pk=membership_id) if request.method == 'POST': membership_form = MembershipForm(request.POST, request.FILES) try: if membership_form.is_valid(): membership_form.save() return HttpResponseRedirect(reverse('staff.views.member.detail', args=[], kwargs={'member_id': membership.member.id})) except Exception as e: messages.add_message(request, messages.ERROR, e) else: membership_form = MembershipForm(initial={'membership_id': membership.id, 'member': membership.member.id, 'membership_plan': membership.membership_plan, 'start_date': membership.start_date, 'end_date': membership.end_date, 'monthly_rate': membership.monthly_rate, 'dropin_allowance': membership.dropin_allowance, 'daily_rate': membership.daily_rate, 'has_desk': membership.has_desk, 'has_key': membership.has_key, 'has_mail': membership.has_mail, 'guest_of': membership.guest_of}) today = timezone.localtime(timezone.now()).date() last = membership.next_billing_date() - timedelta(days=1) return render_to_response('staff/membership.html', {'member': membership.member, 'membership': membership, 'membership_plans': MembershipPlan.objects.all(), 'membership_form': membership_form, 'today': today.isoformat(), 'last': last.isoformat()}, context_instance=RequestContext(request))
def membership(request, username): user = get_object_or_404(User, username=username) start = today = timezone.localtime(timezone.now()).date() last_membership = user.profile.last_membership() if last_membership and last_membership.end_date and last_membership.end_date > today - timedelta(days=10): start = (last_membership.end_date + timedelta(days=1)) last = start + MonthDelta(1) - timedelta(days=1) if request.method == 'POST': membership_form = MembershipForm(request.POST, request.FILES) try: if membership_form.is_valid(): membership_form.created_by = request.user membership_form.save() return HttpResponseRedirect(reverse('staff_user_detail', kwargs={'username': username})) except Exception as e: messages.add_message(request, messages.ERROR, e) else: membership_form = MembershipForm(initial={'username': username, 'start_date': start}) # Send them to the update page if we don't have an end date if (last_membership and not last_membership.end_date): return HttpResponseRedirect(reverse('staff_membership', kwargs={'membership_id': last_membership.id})) plans = MembershipPlan.objects.filter(enabled=True).order_by('name') return render_to_response('staff/membership.html', {'user':user, 'membership_plans': plans, 'membership_form': membership_form, 'today': today.isoformat(), 'last': last.isoformat()}, context_instance=RequestContext(request))
def membership(request, member_id): member = get_object_or_404(Member, pk=member_id) start = today = timezone.localtime(timezone.now()).date() last_membership = member.last_membership() if last_membership and last_membership.end_date and last_membership.end_date > today - timedelta( days=10): start = (member.last_membership().end_date + timedelta(days=1)) last = start + MonthDelta(1) - timedelta(days=1) if request.method == 'POST': membership_form = MembershipForm(request.POST, request.FILES) try: if membership_form.is_valid(): membership_form.created_by = request.user membership_form.save() return HttpResponseRedirect( reverse('staff.views.member.detail', args=[], kwargs={'member_id': member.id})) except Exception as e: messages.add_message(request, messages.ERROR, e) else: membership_form = MembershipForm(initial={ 'member': member_id, 'start_date': start }) # Send them to the update page if we don't have an end date if (member.last_membership() and not member.last_membership().end_date): return HttpResponseRedirect( reverse('staff.views.core.membership', args=[], kwargs={'membership_id': member.last_membership().id})) plans = MembershipPlan.objects.filter(enabled=True).order_by('name') return render_to_response('staff/membership.html', { 'member': member, 'membership_plans': plans, 'membership_form': membership_form, 'today': today.isoformat(), 'last': last.isoformat() }, context_instance=RequestContext(request))
def membership(request, membership_id): membership = get_object_or_404(Membership, pk=membership_id) if request.method == 'POST': membership_form = MembershipForm(request.POST, request.FILES) try: if membership_form.is_valid(): membership_form.save() return HttpResponseRedirect( reverse('staff.views.member.detail', args=[], kwargs={'member_id': membership.member.id})) except Exception as e: messages.add_message(request, messages.ERROR, e) else: membership_form = MembershipForm( initial={ 'membership_id': membership.id, 'member': membership.member.id, 'membership_plan': membership.membership_plan, 'start_date': membership.start_date, 'end_date': membership.end_date, 'monthly_rate': membership.monthly_rate, 'dropin_allowance': membership.dropin_allowance, 'daily_rate': membership.daily_rate, 'has_desk': membership.has_desk, 'has_key': membership.has_key, 'has_mail': membership.has_mail, 'guest_of': membership.guest_of }) today = timezone.localtime(timezone.now()).date() last = membership.next_billing_date() - timedelta(days=1) return render_to_response('staff/membership.html', { 'member': membership.member, 'membership': membership, 'membership_plans': MembershipPlan.objects.all(), 'membership_form': membership_form, 'today': today.isoformat(), 'last': last.isoformat() }, context_instance=RequestContext(request))