예제 #1
0
파일: members.py 프로젝트: jamiereid/mhvdb2
def exists(email, member_id=None):
    if member_id:
        return Entity.select().where((fn.Lower(Entity.email) == email.lower()) & Entity.is_member,
                                     (Entity.id != member_id)).count() == 1
    else:
        return Entity.select().where((fn.Lower(Entity.email) == email.lower())
                                     & Entity.is_member).count() == 1
예제 #2
0
파일: routes.py 프로젝트: jamiereid/mhvdb2
def member_renewal_email():
    '''
    Finds all expired members who have been 'new style' members -
    that is they have agreement_date from 2014 onwards, and
    have not yet been sent a reminder
     - reminders_date tests will probably want to be a bit more complex
       at some stage
    Sends reminder email asking them to renew.
    '''
    members = Entity.select().where(Entity.is_member)
    do_not_email = app.config['DO_NOT_EMAIL']
    # flash('do_not_email= ' + ', '.join(do_not_email))
    emails_sent = 0
    for member in members:
        if member.active_member():
            None
        else:
            if member.name not in do_not_email:
                if member.agreement_date.year >= 2014 and not member.reminder_date:
                    mailer.send(
                        member.email,
                        "MakeHackVoid membership renewal reminder",
                        render_template("emails/renewal_reminder.txt",
                                        name=member.name,
                                        email=member.email,
                                        agreement_date=member.agreement_date))
                    # set the reminder date in database so can test when sending another email
                    member.reminder_date = date.today()
                    member.save()
                    emails_sent += 1
    flash("Sent " + str(emails_sent) + " once only emails.")
    return redirect(url_for('.index'))
예제 #3
0
파일: routes.py 프로젝트: jamiereid/mhvdb2
def member_once_only_email():
    '''
    Finds all expired members and sends once only email asking them to renew.
    Used for first run, before we setup regular emails as people expire.
    '''
    members = Entity.select().where(Entity.is_member)
    do_not_email = app.config['DO_NOT_EMAIL']
    # flash('do_not_email= ' + ', '.join(do_not_email))
    emails_sent = 0
    for member in members:
        if member.active_member():
            None
        else:
            if member.name in do_not_email:
                flash("Not emailing: " + member.name)
            else:
                if member.reminder_date:
                    flash("Not emailing: " + member.name +
                          " reminder_date set " +
                          member.reminder_date.strftime('%m/%d/%Y'))
                else:
                    # only send this email to people who have not joined under new system (2014)
                    if member.agreement_date.year < 2014:
                        mailer.send(
                            member.email,
                            "MakeHackVoid Membership Renewal - once only reminder email",
                            render_template("emails/once_only_renewal.txt",
                                            name=member.name,
                                            email=member.email))
                        # set the reminder date in database so can test when sending another email
                        member.reminder_date = date.today()
                        member.save()
                        emails_sent += 1
    flash("Sent " + str(emails_sent) + " once only emails.")
    return redirect(url_for('.index'))
예제 #4
0
파일: routes.py 프로젝트: theswitch/mhvdb2
def members():
    members = Entity.select().where(Entity.is_member)
    return render_template('admin/members.html', members=members)
예제 #5
0
파일: routes.py 프로젝트: theswitch/mhvdb2
def entities():
    entities = Entity.select().where(Entity.is_member == False)          # noqa
    return render_template('admin/entities.html', entities=entities)
예제 #6
0
파일: members.py 프로젝트: cmrn/mhvdb2
def exists(email, member_id=None):
    if member_id:
        return Entity.select().where((Entity.email == email) & Entity.is_member,
                                     (Entity.id != member_id)).count() == 1
    else:
        return Entity.select().where((Entity.email == email) & Entity.is_member).count() == 1
예제 #7
0
파일: routes.py 프로젝트: jamiereid/mhvdb2
def members():
    members = Entity.select().where(Entity.is_member)
    return render_template('admin/members.html', members=members)
예제 #8
0
파일: routes.py 프로젝트: jamiereid/mhvdb2
def entities():
    entities = Entity.select().where(Entity.is_member == False)  # noqa
    return render_template('admin/entities.html', entities=entities)