130def response(resp):
131 results = []
132
133 json = resp.json()
134
135 for result in json["items"]:
136
137 uploaded = result.get("uploaded", -1)
138
139 item = {
140
141 "url": _frontend_url() + result.get("url", ""),
142 "title": result.get("title", ""),
143 "publishedDate": parser.parse(time.ctime(uploaded / 1000)) if uploaded != -1 else None,
144 "iframe_src": _frontend_url() + '/embed' + result.get("url", ""),
145 "views": humanize_number(result["views"]),
146 }
147 length = result.get("duration")
148 if length:
149 item["length"] = datetime.timedelta(seconds=length)
150
151 if piped_filter == 'videos':
152 item["template"] = "videos.html"
153
154 item["content"] = result.get("shortDescription", "") or ""
155 item["thumbnail"] = result.get("thumbnail", "")
156
157 elif piped_filter == 'music_songs':
158 item["template"] = "default.html"
159 item["thumbnail"] = result.get("thumbnail", "")
160 item["content"] = result.get("uploaderName", "") or ""
161
162 results.append(item)
163
164 results.append(
165 {
166 "engine_data": json["nextpage"],
167 "key": "nextpage",
168 }
169 )
170 return results