def pages_to_full_dicts(pages, include_private_screenshots=False): """Given Page objects, returns dicts with everything the client needs.""" from main.pageviews import get_counts from main.screenshots import get_latest_screenshots page_dicts = map(_base_page_to_dict, pages) counts = get_counts(pages) for dct, count in zip(page_dicts, counts): dct['view_count'] = count screenshots = get_latest_screenshots(pages, include_private=include_private_screenshots) for page, dct, screen in zip(pages, page_dicts, screenshots): dct['screenshot'] = screen return page_dicts
def _nf_pages_to_dict(pages): screenshots = get_latest_screenshots(pages, include_private=True) pages_cache = dict() for page, screen in zip(pages, screenshots): creator = other_user_to_js(page.owner) pages_cache[page.id] = { 'id': page.id, 'title': page.title, 'short_url': page.short_url, 'get_absolute_url': page.get_absolute_url(), 'screenshot': screen, 'creator_id': creator['id'], 'creator_username': creator['username'], } return pages_cache