diff -r b4ed8cdc654c -r 0fe2f3f5466f src/hp/api/videos.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hp/api/videos.py Tue Nov 13 16:20:34 2012 +0100 @@ -0,0 +1,56 @@ +# -*- coding: utf-8 -*- +''' +Created on Nov 13, 2012 + +@author: ymh +''' +import json +from django.http import HttpResponse, HttpResponseBadRequest +import requests +from django.conf import settings +import logging + +logger = logging.getLogger(__name__) + +def recommended(request): + + keywords_str = request.GET.get('keywords', None) + + if not keywords_str: + return HttpResponseBadRequest("Error, null keywords") + + keywords = [kw.strip() for kw in keywords_str.split(",")] + + ldt_res = get_ldt_res(keywords) + + logger.debug("LDT results : " + repr(ldt_res) ) + + kc_res = get_kc_res(keywords) + + res = mix_results(ldt_res, kc_res) + + return HttpResponse(json.dumps(res), content_type='application/json; charset=utf-8', ) + + +def mix_results(ldt_res, kc_res): + + #TODO : implement mixin of results + return ldt_res + + +def get_ldt_res(keywords): + + recommended_url = settings.LDT_API_URL + "contents/recommended/" + + r = requests.get(recommended_url, params={'keywords': ",".join(keywords)}) + logger.debug(repr(r)) + + #TODO : manage error codes + + return r.json + + +def get_kc_res(keywords): + + #TODO : implement + return None \ No newline at end of file