示例#1
0
def prepare_new_offer_notification_email(user, offer):
    conversation = Conversation.objects.get_for_target(offer)

    reply_to_name = offer.user.display_name

    local_part = make_local_part(conversation, user)
    reply_to = formataddr(
        (reply_to_name, '{}@{}'.format(local_part,
                                       settings.EMAIL_REPLY_DOMAIN)))
    from_email = formataddr(
        (offer.user.display_name, settings.DEFAULT_FROM_EMAIL))

    unsubscribe_url = new_offer_unsubscribe_url(user, offer)

    return prepare_email(
        template='new_offer',
        from_email=from_email,
        user=user,
        tz=offer.group.timezone,
        reply_to=[reply_to],
        unsubscribe_url=unsubscribe_url,
        context={
            'user_name': offer.user.display_name,
            'offer_photo': offer_image_url(offer),
            'offer_name': offer.name,
            'offer_description': offer.description,
            'group': offer.group,
            'offer_url': offer_url(offer),
            'mute_url': unsubscribe_url,
            'new_offer_unsubscribe_url': unsubscribe_url,
        },
        stats_category='new_offer',
    )
示例#2
0
 def test_offer_image_url(self):
     offer = OfferFactory(images=[image_path])
     url = offer_image_url(offer)
     self.assertEqual(
         url, '{hostname}/api/offers/{id}/image/'.format(
             hostname=settings.HOSTNAME,
             id=offer.id,
         ))
示例#3
0
 def test_offer_image_url_without_images(self):
     offer = OfferFactory()
     url = offer_image_url(offer)
     self.assertEqual(url, None)