Example #1
0
def handle_user_signup(sender, user, form, **kwargs):
    email_qs = user.emailaddress_set.filter(email=user.email, verified=True)
    if user.is_active and email_qs.exists():
        JoinInvitation.process_independent_joins(
            user=user,
            email=user.email
        )
Example #2
0
def invite(request):
    form = InviteForm(request.POST, user=request.user)
    if form.is_valid():
        email = form.cleaned_data["email_address"]
        JoinInvitation.invite(request.user, email)
        form = InviteForm(user=request.user)
    data = {
        "html":
        render_to_string("kaleo/_invite_form.html", {
            "form": form,
            "user": request.user
        },
                         context_instance=RequestContext(request)),
        "fragments": {
            ".kaleo-invites-remaining":
            render_to_string("kaleo/_invites_remaining.html", {
                "invites_remaining":
                request.user.invitationstat.invites_remaining()
            },
                             context_instance=RequestContext(request)),
            ".kaleo-invites-sent":
            render_to_string("kaleo/_invited.html",
                             {"invited_list": request.user.invites_sent.all()},
                             context_instance=RequestContext(request))
        }
    }
    return HttpResponse(json.dumps(data), content_type="application/json")
Example #3
0
def handle_user_signup(sender, user, form, **kwargs):
    email_qs = user.emailaddress_set.filter(email=user.email, verified=True)
    if user.is_active and email_qs.exists():
        JoinInvitation.process_independent_joins(
            user=user,
            email=user.email
        )
Example #4
0
def invite(request):
    form = InviteForm(request.POST, user=request.user)
    if form.is_valid():
        email = form.cleaned_data["email_address"]
        JoinInvitation.invite(request.user, email)
        form = InviteForm(user=request.user)
    data = {
        "html": render_to_string(
            "kaleo/_invite_form.html", {
                "form": form,
                "user": request.user
            }, context_instance=RequestContext(request)
        ),
        "fragments": {
            ".kaleo-invites-remaining": render_to_string(
                "kaleo/_invites_remaining.html", {
                    "invites_remaining": request.user.invitationstat.invites_remaining()
                }, context_instance=RequestContext(request)
            ),
            ".kaleo-invites-sent": render_to_string(
                "kaleo/_invited.html", {
                    "invited_list": request.user.invites_sent.all()
                }, context_instance=RequestContext(request)
            )
        }
    }
    return HttpResponse(json.dumps(data), content_type="application/json")
Example #5
0
 def invite_user(self, from_user, to_email, role):
     invite = JoinInvitation.invite(from_user, to_email)
     membership, _ = self.memberships.get_or_create(
         invite=invite,
         defaults={"role": role, "state": Membership.STATE_INVITED}
     )
     return membership
Example #6
0
def invite(request):
    form = InviteForm(request.POST)
    if form.is_valid():
        email = form.cleaned_data["email_address"]
        if EmailAddress.objects.filter(email=email, verified=True).exists():
            data = {"status": "ERROR", "errors": '<ul class="errorlist"><li>%s is already on this site</li></ul>' % email}
        elif JoinInvitation.objects.filter(from_user=request.user, signup_code__email=email).exists():
            data = {"status": "ERROR", "errors": '<ul class="errorlist"><li>You have already invited %s</li></ul>' % email}
        else:
            JoinInvitation.invite(request.user, email)
            data = {
                "status": "OK",
                "email": email,
                "invitations_remaining": request.user.invitationstat.invites_remaining()
            }
    else:
        data = {"status": "ERROR", "errors": str(form.errors["email_address"])}
    return http.HttpResponse(json.dumps(data), content_type="application/json")
Example #7
0
 def invite_user(self, from_user, to_email, role, message=None):
     if not JoinInvitation.objects.filter(signup_code__email=to_email).exists():
         invite = JoinInvitation.invite(from_user, to_email, message, send=False)
         membership, _ = self.memberships.get_or_create(
             invite=invite,
             defaults={"role": role, "state": Membership.STATE_INVITED}
         )
         invite.send_invite()
         signals.invited_user.send(sender=self, membership=membership)
         return membership
Example #8
0
 def test_process_independent_joins(self):
     JoinInvitation.process_independent_joins(self.to_user, "*****@*****.**")
     invite = JoinInvitation.objects.get(pk=self.invitation.pk)
     self.assertEqual(invite.status,
                      JoinInvitation.STATUS_JOINED_INDEPENDENTLY)
Example #9
0
 def test_process_independent_joins(self):
     JoinInvitation.process_independent_joins(self.to_user, "*****@*****.**")
     invite = JoinInvitation.objects.get(pk=self.invitation.pk)
     self.assertEqual(invite.status, JoinInvitation.STATUS_JOINED_INDEPENDENTLY)
Example #10
0
def handle_email_confirmed(sender, **kwargs):
    email_address = kwargs.get("email_address")
    JoinInvitation.process_independent_joins(user=email_address.user,
                                             email=email_address.email)
Example #11
0
def handle_email_confirmed(sender, **kwargs):
    email_address = kwargs.get("email_address")
    JoinInvitation.process_independent_joins(
        user=email_address.user,
        email=email_address.email
    )