Exemple #1
0
def disable_billing(request, username):
    user = get_object_or_404(User, username=username)
    if user == request.user or request.user.is_staff:
        usaepay.disableAutoBilling(username)
        email.announce_billing_disable(user)
    return HttpResponseRedirect(
        reverse('members.views.user',
                kwargs={'username': request.user.username}))
Exemple #2
0
    def save(self):
        if not self.is_valid():
            raise Exception('The form must be valid in order to save')
        membership_id = self.cleaned_data['membership_id']

        adding = False
        membership = None
        if membership_id:
            # Editing
            membership = Membership.objects.get(id=membership_id)
        else:
            # Adding
            adding = True
            membership = Membership()

        # Is this right?  Do I really need a DB call so I have the object?
        membership.member = Member.objects.get(id=self.cleaned_data['member'])

        # Any change triggers disabling of the automatic billing
        username = membership.member.user.username
        usaepay.disableAutoBilling(username)
        logger.debug("Automatic Billing Disabled for '%s'" % username)

        # We need to look at their last membership but we'll wait until after the save
        last_membership = membership.member.last_membership()

        # Save this membership
        membership.membership_plan = self.cleaned_data['membership_plan']
        membership.start_date = self.cleaned_data['start_date']
        membership.end_date = self.cleaned_data['end_date']
        membership.monthly_rate = self.cleaned_data['monthly_rate']
        membership.dropin_allowance = self.cleaned_data['dropin_allowance']
        membership.daily_rate = self.cleaned_data['daily_rate']
        membership.has_desk = self.cleaned_data['has_desk']
        membership.has_key = self.cleaned_data['has_key']
        membership.has_mail = self.cleaned_data['has_mail']
        membership.guest_of = self.cleaned_data['guest_of']
        membership.save()

        # Save the note if we were given one
        note = self.cleaned_data['note']
        if note:
            MemberNote.objects.create(member=membership.member,
                                      created_by=self.created_by,
                                      note=note)

        if adding:
            email.send_new_membership(membership.member.user)

        return membership
Exemple #3
0
    def save(self):
        if not self.is_valid():
            raise Exception('The form must be valid in order to save')
        membership_id = self.cleaned_data['membership_id']

        adding = False
        membership = None
        if membership_id:
            # Editing
            membership = Membership.objects.get(id=membership_id)
        else:
            # Adding
            adding = True
            membership = Membership()

        # Is this right?  Do I really need a DB call so I have the object?
        membership.member = Member.objects.get(id=self.cleaned_data['member'])

        # Any change triggers disabling of the automatic billing
        username = membership.member.user.username
        usaepay.disableAutoBilling(username)
        logger.debug("Automatic Billing Disabled for '%s'" % username)

        # We need to look at their last membership but we'll wait until after the save
        last_membership = membership.member.last_membership()

        # Save this membership
        membership.membership_plan = self.cleaned_data['membership_plan']
        membership.start_date = self.cleaned_data['start_date']
        membership.end_date = self.cleaned_data['end_date']
        membership.monthly_rate = self.cleaned_data['monthly_rate']
        membership.dropin_allowance = self.cleaned_data['dropin_allowance']
        membership.daily_rate = self.cleaned_data['daily_rate']
        membership.has_desk = self.cleaned_data['has_desk']
        membership.has_key = self.cleaned_data['has_key']
        membership.has_mail = self.cleaned_data['has_mail']
        membership.guest_of = self.cleaned_data['guest_of']
        membership.save()

        # Save the note if we were given one
        note = self.cleaned_data['note']
        if note:
            MemberNote.objects.create(member=membership.member, created_by=self.created_by, note=note)

        if adding:
            email.send_new_membership(membership.member.user)

        return membership
Exemple #4
0
def new_billing(request):
	error = None
	username = None
	if request.method != 'POST' or 'username' not in request.POST or 'auth' not in request.POST:
		error = "Invalid form fields!"
	else:
		username = request.POST.get('username')
		if not usaepay.authorize(username, request.POST.get('auth')):
			error = "Invalid authorization code!"
		else:
			member = Member.objects.get(user__username=username)
			if not member:
				error = "Could not find '%s'" % (username)
			else:
				member.valid_billing = True;
				member.save()
				if not usaepay.disableAutoBilling(username):
					error = "Could not disable auto-billing"
	return render_to_response('members/new_billing.html', {'username':username, 'error':error}, context_instance=RequestContext(request))
Exemple #5
0
def new_billing(request):
    error = None
    username = None
    if request.method != 'POST' or 'username' not in request.POST or 'auth' not in request.POST:
        error = "Invalid form fields!"
    else:
        username = request.POST.get('username')
        if not usaepay.authorize(username, request.POST.get('auth')):
            error = "Invalid authorization code!"
        else:
            member = Member.objects.get(user__username=username)
            if not member:
                error = "Could not find '%s'" % (username)
            else:
                member.valid_billing = True
                member.save()
                if not usaepay.disableAutoBilling(username):
                    error = "Could not disable auto-billing"
    return render_to_response('members/new_billing.html', {'username': username, 'error': error}, context_instance=RequestContext(request))
Exemple #6
0
    def save(self):
        if not self.is_valid():
            raise Exception('The form must be valid in order to save')
        membership_id = self.cleaned_data['membership_id']

        adding = False
        membership = None
        if membership_id:
            # Editing
            membership = Membership.objects.get(id=membership_id)
        else:
            # Adding
            adding = True
            membership = Membership()

        # Is this right?  Do I really need a DB call so I have the object?
        membership.member = Member.objects.get(id=self.cleaned_data['member'])

        # Any change triggers disabling of the automatic billing
        username = membership.member.user.username
        usaepay.disableAutoBilling(username)
        logger.debug("Automatic Billing Disabled for '%s'" % username)

        # We need to look at their last membership but we'll wait until after the save
        last_membership = membership.member.last_membership()

        # Save this membership
        membership.membership_plan = self.cleaned_data['membership_plan']
        membership.start_date = self.cleaned_data['start_date']
        membership.end_date = self.cleaned_data['end_date']
        membership.monthly_rate = self.cleaned_data['monthly_rate']
        membership.dropin_allowance = self.cleaned_data['dropin_allowance']
        membership.daily_rate = self.cleaned_data['daily_rate']
        membership.has_desk = self.cleaned_data['has_desk']
        membership.has_key = self.cleaned_data['has_key']
        membership.has_mail = self.cleaned_data['has_mail']
        membership.guest_of = self.cleaned_data['guest_of']
        membership.save()

        # Save the note if we were given one
        note = self.cleaned_data['note']
        if note:
            MemberNote.objects.create(member=membership.member,
                                      created_by=self.created_by,
                                      note=note)

        # If this is a new membership and they have an old membership that is at least 5 days old
        # Then remove all the onboarding tasks and the exit tasks so they have a clean slate
        if adding and last_membership and last_membership.end_date:
            if last_membership.end_date < timezone.now().date() - timedelta(5):
                for completed_task in Onboard_Task_Completed.objects.filter(
                        member=membership.member):
                    completed_task.delete()
                for completed_task in ExitTaskCompleted.objects.filter(
                        member=membership.member):
                    completed_task.delete()

        if adding:
            email.send_new_membership(membership.member.user)

        return membership
Exemple #7
0
def disable_billing(request, username):
    user = get_object_or_404(User, username=username)
    email.announce_billing_disable(user)
    if user == request.user or request.user.is_staff:
        usaepay.disableAutoBilling(username)
    return HttpResponseRedirect(reverse('members.views.user', kwargs={'username': request.user.username}))