def get(self, country_code="us", entries="5"): template = jinja_environment.get_template("most-popular.html") cache_key = "ophan_list_{0}".format(country_code) ophan_list_data = memcache.get(cache_key) if not ophan_list_data: ophan_list_data = ophan.popular_by_country(country_code=country_code) memcache.set(cache_key, ophan_list_data, 60) content_list = [] if ophan_list_data: ophan_list = json.loads(ophan_list_data) content_list = [content_api.content_id(result['url']) for result in ophan_list] content_list = [content_api.read(path, params={"show-fields" : "headline,thumbnail"}) for path in content_list] content_list = [json.loads(result) for result in content_list if result] content_list = [result["response"]["content"] for result in content_list if content_api.response_ok(result)] content_list = content_list[0:int(entries)] country_name_lookup = { "us" : "in the US", "au" : "in Australia", } data ={ "most_popular" : content_list, "component_title" : "Most popular {0}".format(country_name_lookup.get(country_code, "")), } headers.set_cors_headers(self.response) self.response.out.write(template.render(data))
def get(self, entries="5"): template = jinja_environment.get_template("most-popular.html") cache_key = "ophan_list_popular" ophan_list_data = memcache.get(cache_key) if not ophan_list_data: ophan_list_data = ophan.popular() memcache.set(cache_key, ophan_list_data, 60) content_list = [] if ophan_list_data: ophan_list = json.loads(ophan_list_data) content_list = [content_api.content_id(result['url']) for result in ophan_list] content_list = [content_api.read(path, params={"show-fields" : "headline,thumbnail"}) for path in content_list] content_list = [json.loads(result) for result in content_list if result] content_list = [result["response"]["content"] for result in content_list if content_api.response_ok(result)] content_list = content_list[0:int(entries)] data ={ "most_popular" : content_list, "component_title" : "Most popular", } headers.set_cors_headers(self.response) self.response.out.write(template.render(data))
def resolve_content(url): params = {'show-fields' : 'headline,thumbnail,trailText'} result = content_api.read(content_api.content_id(url), params) if result: data = json.loads(result) return data.get('response', {}).get('content', {}) return None
def resolve_content(url): params = {'show-fields': 'headline,thumbnail,trailText'} result = content_api.read(content_api.content_id(url), params) if result: data = json.loads(result) return data.get('response', {}).get('content', {}) return None