Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(377)

Unified Diff: chrome/common/extensions/docs/server2/samples_data_source.py

Issue 10809062: Extensions Docs Server: Samples search and icons (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more fixes Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/docs/server2/samples_data_source.py
diff --git a/chrome/common/extensions/docs/server2/samples_data_source.py b/chrome/common/extensions/docs/server2/samples_data_source.py
index c8e7fc4d0387711ede2e859a6181e8c34c64fce4..e4696d231c0d4784007ca6ad97edbb2ffdcc2224 100644
--- a/chrome/common/extensions/docs/server2/samples_data_source.py
+++ b/chrome/common/extensions/docs/server2/samples_data_source.py
@@ -5,6 +5,8 @@
import json
import re
+DEFAULT_ICON_PATH = '/static/images/sample-default-icon.png'
+
class SamplesDataSource(object):
"""Constructs a list of samples and their respective files and api calls.
"""
@@ -24,7 +26,11 @@ class SamplesDataSource(object):
manifest_path = path + '/manifest.json'
manifest = self._fetcher.Read([manifest_path]).Get()[manifest_path]
manifest_json = json.loads(manifest)
- return (manifest_json.get('name'), manifest_json.get('description'))
+ return {
+ 'name': manifest_json.get('name'),
+ 'description': manifest_json.get('description'),
+ 'icon': manifest_json.get('icons', {}).get('128', None)
+ }
def _MakeSamplesList(self, files):
samples_list = []
@@ -55,14 +61,19 @@ class SamplesDataSource(object):
'name': item,
'link': self._MakeApiLink('method', item)
})
- name, description = self._GetDataFromManifest(sample_path)
- samples_list.append({
- 'name': name,
- 'description': description,
- 'path': sample_path.split('/', 1)[1],
+ samples_info = self._GetDataFromManifest(sample_path)
+ sample_base_path = sample_path.split('/', 1)[1]
+ if samples_info['icon'] is None:
+ icon_path = DEFAULT_ICON_PATH
+ else:
+ icon_path = sample_base_path + '/' + samples_info['icon']
+ samples_info.update({
+ 'icon': icon_path,
+ 'path': sample_base_path,
'files': [f.replace(sample_path + '/', '') for f in sample_files],
'api_calls': api_calls
})
+ samples_list.append(samples_info)
return samples_list
def __getitem__(self, key):

Powered by Google App Engine
This is Rietveld 408576698