def send_group_photos(sequence): context = { 'mooc_title': settings.MOOC_TITLE, 'mooc_domain': settings.MOOC_DOMAIN, 'sequence': sequence, } urls = group_photo.make_group_photos(sequence) for group_uri, image_url in urls.items(): group = group_api.get_group(group_uri) context['image_url'] = image_url subject = render_to_string( 'classphoto/emails/sequence_group_photo-subject.txt', context).strip() text_body = render_to_string( 'classphoto/emails/sequence_group_photo.txt', context).strip() html_body = render_to_string( 'classphoto/emails/sequence_group_photo.html', context).strip() mailgun.api.send_email( group['address'], settings.DEFAULT_FROM_EMAIL, subject, text_body, html_body, tags=['group_photo'], campaign_id=sequence_api.sequence_campaign(sequence))
def send_group_photos(sequence): context = { 'mooc_title': settings.MOOC_TITLE, 'mooc_domain': settings.MOOC_DOMAIN, 'sequence': sequence, } urls = group_photo.make_group_photos(sequence) for group_uri, image_url in urls.items(): group = group_api.get_group(group_uri) context['image_url'] = image_url subject = render_to_string( 'classphoto/emails/sequence_group_photo-subject.txt', context ).strip() text_body = render_to_string( 'classphoto/emails/sequence_group_photo.txt', context ).strip() html_body = render_to_string( 'classphoto/emails/sequence_group_photo.html', context ).strip() mailgun.api.send_email( group['address'], settings.DEFAULT_FROM_EMAIL, subject, text_body, html_body, tags=['group_photo'], campaign_id=sequence_api.sequence_campaign(sequence) )
def make_group_photo(group_uri): group = group_model.get_group(group_uri) bios = get_bios_by_email(group['sequence'], group['members']) group_photo = combine_photos(bios) file_name = u'gf_{0}.jpg'.format(group_uri.strip('/').split('/')[-1]) group_photo.save(file_name, u'JPEG') return file_name
def test_remove_group_member(self): group = group_model.create_group('*****@*****.**', 'The A team', 1) group_model.add_group_member(group['uri'], '*****@*****.**') group_model.add_group_member(group['uri'], '*****@*****.**') group_model.remove_group_member(group['uri'], '*****@*****.**') group = group_model.get_group(group['uri']) self.assertEqual(len(group['members']), 1) self.assertEqual(group['members'][0], '*****@*****.**')
def test_get_member_groups(self): group = group_model.create_group('*****@*****.**', 'The A team', 1) group_model.add_group_member(group['uri'], '*****@*****.**') group = group_model.get_group(group['uri']) groups = group_model.get_member_groups('*****@*****.**') self.assertEqual(len(groups), 1) self.assertEqual(groups[0], group)
def test_create_group(self): """ Test group creation """ group = group_model.create_group('*****@*****.**', 'The A team', 1) self.assertTrue('address' in group) self.assertTrue('description' in group) self.assertTrue('members' in group) self.assertTrue('sequence' in group) group_copy = group_model.get_group(group['uri']) self.assertEqual(group, group_copy)