コード例 #1
0
ファイル: api.py プロジェクト: s-mawjee/Baobab
    def post(self):
        args = self.req_parser.parse_args()
        event_id = args['event_id']
        user_id = g.current_user['id']

        event = db.session.query(Event).get(event_id)
        if not event:
            return EVENT_NOT_FOUND

        current_user = user_repository.get_by_id(user_id)
        if not current_user.is_event_admin(event_id):
            return FORBIDDEN

        users = user_repository.get_all_without_responses()
        for user in users:
            title = user.user_title
            firstname = user.firstname
            lastname = user.lastname
            event_name = event.name
            deadline = event.get_application_form().deadline.strftime('%A %-d %B %Y')
            
            subject = 'FINAL REMINDER: We do not have your application to attend {}'.format(event_name)
            body = NOT_STARTED_EMAIL_BODY.format(title=title, firstname=firstname, lastname=lastname, event=event_name, deadline=deadline)
            
            send_mail(recipient=user.email, subject=subject, body_text=body)
        
        return {'not_started_responses': len(users)}, 201
コード例 #2
0
ファイル: api.py プロジェクト: outhanchazima/Baobab
    def post(self):
        args = self.req_parser.parse_args()
        event_id = args['event_id']
        user_id = g.current_user['id']

        event = db.session.query(Event).get(event_id)
        if not event:
            return EVENT_NOT_FOUND

        current_user = user_repository.get_by_id(user_id)
        if not current_user.is_event_admin(event_id):
            return FORBIDDEN

        users = user_repository.get_all_without_responses()
        for user in users:
            event_name = event.get_name('en')
            organisation_name = event.organisation.name
            system_name = event.organisation.system_name
            deadline = event.application_close.strftime('%A %-d %B %Y')

            email_user('application-not-started',
                       template_parameters=dict(
                           event=event_name,
                           organisation_name=organisation_name,
                           system_name=system_name,
                           deadline=deadline),
                       event=event,
                       user=user)

        return {'not_started_responses': len(users)}, 201