def get_org_bookmarks(self, **options):
     if options['recipient_email'] and (options['ccg']
                                        or options['practice']):
         dummy_user = User(email=options['recipient_email'], id='dummyid')
         dummy_user.profile = Profile(key='dummykey')
         bookmarks = [
             OrgBookmark(user=dummy_user,
                         pct_id=options['ccg'],
                         practice_id=options['practice'])
         ]
         logger.info("Created a single test org bookmark")
     elif options['recipient_email'] or options['recipient_email_file']:
         recipients = []
         if options['recipient_email_file']:
             with open(options['recipient_email_file'], 'r') as f:
                 recipients = [x.strip() for x in f]
         else:
             recipients = [options['recipient_email']]
         bookmarks = OrgBookmark.objects.filter(approved=True,
                                                user__is_active=True,
                                                user__email__in=recipients)
         logger.info("Found %s matching org bookmarks" % bookmarks.count())
     else:
         bookmarks = OrgBookmark.objects.filter(approved=True,
                                                user__is_active=True)
         if options['skip_email_file']:
             with open(options['skip_email_file'], 'r') as f:
                 skip = [x.strip() for x in f]
             bookmarks = bookmarks.exclude(user__email__in=skip)
         logger.info("Found %s matching org bookmarks" % bookmarks.count())
     return bookmarks
def make_dummy_bookmark(email_address):
    """Make a dummy bookmark with this email address for testing purposes"""
    dummy_user = User(email=email_address, id="dummyid")
    dummy_user.profile = Profile(key="dummykey")
    return OrgBookmark(user=dummy_user,
                       pct_id=None,
                       practice_id=None,
                       pcn_id=None)
Exemplo n.º 3
0
def preview_bookmark(request, practice=None, pct=None, url=None, name=None):
    user = User(email='*****@*****.**')
    user.profile = Profile()
    if pct or practice:
        context = bookmark_utils.InterestingMeasureFinder(
            practice=practice, pct=pct).context_for_org_email()
        bookmark = OrgBookmark(practice=practice, pct=pct, user=user)
        msg = bookmark_utils.make_org_email(bookmark, context)
    else:
        bookmark = SearchBookmark(url=url, user=user, name=name)
        msg = bookmark_utils.make_search_email(bookmark)
    html = msg.alternatives[0][0]
    images = msg.attachments
    return HttpResponse(_convert_images_to_data_uris(html, images))
    def get_org_bookmarks(self, now_month, **options):
        """Get all OrgBookmarks for active users who have not been sent a
        message tagged with `now_month`

        """
        query = (
            Q(user__is_active=True)
            & ~Q(user__emailmessage__tags__contains=["measures", now_month])
            &
            # Only include bookmarks for either a practice or pct or PCN: when all
            # are NULL this indicates an All England bookmark
            (Q(practice__isnull=False) | Q(pct__isnull=False)
             | Q(pcn__isnull=False)))
        if options["recipient_email"] and (options["ccg"]
                                           or options["practice"]
                                           or options["pcn"]):
            dummy_user = User(email=options["recipient_email"], id="dummyid")
            dummy_user.profile = Profile(key="dummykey")
            bookmarks = [
                OrgBookmark(
                    user=dummy_user,
                    pct_id=options["ccg"],
                    practice_id=options["practice"],
                    pcn_id=options["pcn"],
                )
            ]
            logger.info("Created a single test org bookmark")
        elif options["recipient_email"] or options["recipient_email_file"]:
            recipients = []
            if options["recipient_email_file"]:
                with open(options["recipient_email_file"], "r") as f:
                    recipients = [x.strip() for x in f]
            else:
                recipients = [options["recipient_email"]]
            query = query & Q(user__email__in=recipients)
            bookmarks = OrgBookmark.objects.filter(query)
            logger.info("Found %s matching org bookmarks" % bookmarks.count())
        else:
            bookmarks = OrgBookmark.objects.filter(query)
            if options["skip_email_file"]:
                with open(options["skip_email_file"], "r") as f:
                    skip = [x.strip() for x in f]
                bookmarks = bookmarks.exclude(user__email__in=skip)
            logger.info("Found %s matching org bookmarks" % bookmarks.count())
        return bookmarks
 def get_org_bookmarks(self, **options):
     if options['recipient_email'] and (options['ccg']
                                        or options['practice']):
         dummy_user = User(email=options['recipient_email'], id='dummyid')
         dummy_user.profile = Profile(key='dummykey')
         bookmarks = [
             OrgBookmark(user=dummy_user,
                         pct_id=options['ccg'],
                         practice_id=options['practice'])
         ]
     elif not options['recipient_email']:
         # Perhaps add a constraint here to ensure we don't send two
         # emails for one month?
         bookmarks = OrgBookmark.objects.filter(approved=True,
                                                user__is_active=True)
     else:
         bookmarks = []
     return bookmarks
Exemplo n.º 6
0
    def get_org_bookmarks(self, now_month, **options):
        """Get approved OrgBookmarks for active users who have not been sent a
        message tagged with `now_month`

        """
        query = (
            Q(approved=True, user__is_active=True) &
            ~Q(user__emailmessage__tags__contains=['measures', now_month]) &
            # Only include bookmarks for either a practice or pct: when both
            # are NULL this indicates an All England bookmark
            (Q(practice__isnull=False) | Q(pct__isnull=False))
        )
        if options['recipient_email'] and (
                options['ccg'] or options['practice']):
            dummy_user = User(email=options['recipient_email'], id='dummyid')
            dummy_user.profile = Profile(key='dummykey')
            bookmarks = [OrgBookmark(
                user=dummy_user,
                pct_id=options['ccg'],
                practice_id=options['practice']
            )]
            logger.info("Created a single test org bookmark")
        elif options['recipient_email'] or options['recipient_email_file']:
            recipients = []
            if options['recipient_email_file']:
                with open(options['recipient_email_file'], 'r') as f:
                    recipients = [x.strip() for x in f]
            else:
                recipients = [options['recipient_email']]
            query = query & Q(user__email__in=recipients)
            bookmarks = OrgBookmark.objects.filter(query)
            logger.info("Found %s matching org bookmarks" % bookmarks.count())
        else:
            bookmarks = OrgBookmark.objects.filter(query)
            if options['skip_email_file']:
                with open(options['skip_email_file'], 'r') as f:
                    skip = [x.strip() for x in f]
                bookmarks = bookmarks.exclude(user__email__in=skip)
            logger.info("Found %s matching org bookmarks" % bookmarks.count())
        return bookmarks
Exemplo n.º 7
0
def make_dummy_bookmark(email_address):
    '''Make a dummy bookmark with this email address for testing purposes'''
    dummy_user = User(email=email_address, id='dummyid')
    dummy_user.profile = Profile(key='dummykey')
    return OrgBookmark(user=dummy_user, pct_id=None, practice_id=None)