Example #1
0
    def save(self, commit=True):
        email = self.cleaned_data["email"]
        if user_exists(email):
            # A 'User Seed' existing for this email address. 
            user = get_user(email)
            user.set_password(self.cleaned_data["password1"])
            seed_group = Group.objects.get(name=SEED_GROUP)
            user.groups.remove(seed_group)
        else:
            user = super(NewUserForm, self).save(commit=False)
        
        user.first_name = self.cleaned_data["first_name"]
        user.last_name = self.cleaned_data["last_name"]
               
        if commit:
            user.save()

        mailingLists = []

        if self.cleaned_data["subscribe_announce"]:
            mailingLists.append("Announcements_General")
            mailingLists.append("Signed_Up_on_Sefaria")

        if self.cleaned_data["subscribe_educator"]:
            mailingLists.append("Announcements_Edu")

        if mailingLists:
            try:
                subscribe_to_list(mailingLists, user.email, first_name=user.first_name, last_name=user.last_name)
            except:
                pass

        return user
Example #2
0
    def save(self, commit=True):
        email = self.cleaned_data["email"]
        if user_exists(email):
            # A 'User Seed' existing for this email address.
            user = get_user(email)
            user.set_password(self.cleaned_data["password1"])
            seed_group = Group.objects.get(name=SEED_GROUP)
            user.groups.remove(seed_group)
        else:
            user = super(SefariaNewUserForm, self).save(commit=False)

        user.first_name = self.cleaned_data["first_name"]
        user.last_name = self.cleaned_data["last_name"]

        if commit:
            user.save()

        mailingLists = []
        language = get_language()

        list_name = "Announcements_General_Hebrew" if language == "he" else "Announcements_General"
        mailingLists.append(list_name)

        if self.cleaned_data["subscribe_educator"]:
            list_name = "Announcements_Edu_Hebrew" if language == "he" else "Announcements_Edu"
            mailingLists.append(list_name)

        if mailingLists:
            mailingLists.append("Signed_Up_on_Sefaria")
            try:
                subscribe_to_list(mailingLists, user.email, first_name=user.first_name, last_name=user.last_name)
            except:
                pass

        return user
Example #3
0
def subscribe(request, email):
    """
    API for subscribg is mailing lists, in `lists` url param.
    Currently active lists are:
    "Announcements_General", "Announcements_General_Hebrew", "Announcements_Edu", "Announcements_Edu_Hebrew"
    """
    lists = request.GET.get("lists", "")
    lists = lists.split("|")
    if len(lists) == 0:
        return jsonResponse({"error": "Please specifiy a list."})
    if subscribe_to_list(lists + ["Newsletter_Sign_Up"], email, direct_sign_up=True):
        return jsonResponse({"status": "ok"})
    else:
        return jsonResponse({"error": _("Sorry, there was an error.")})
Example #4
0
def subscribe_educators(request, email):
    if subscribe_to_list(["Announcements_General", "Announcements_Edu"], email, direct_sign_up=True):
        return jsonResponse({"status": "ok"})
    else:
        return jsonResponse({"error": "Sorry, there was an error."})
Example #5
0
def subscribe_educators(request, email):
    if subscribe_to_list(["Announcements_General", "Announcements_Edu"], email, direct_sign_up=True):
        return jsonResponse({"status": "ok"})
    else:
        return jsonResponse({"error": "Sorry, there was an error."})