def home(request): from json import dumps #d={} #t = loader.get_template('base/index.html') #c = Context({'d':d}) #return HttpResponse(t.render(c)) #return render_to_response("base/index.html", context_instance=RequestContext(request)) if request.user.is_authenticated(): user=request.user.get_profile() log_activity(user.facebook_id, 'view_home') #return render_to_response(request,context_instance=RequestContext(request)) friends = FacebookUser.objects.filter(user_id=user.user_id) likes = FacebookLike.objects.filter(user_id=user.user_id) #import pdb; pdb.set_trace() friends_json = [] for friend in friends: fr = {} fr['label'] = friend.name fr['id'] = friend.facebook_id friends_json.append(fr) uiconf_rows = UIConfig.objects.filter(user=request.user.id) if uiconf_rows: uiconf = uiconf_rows[0] else: uiconf = UIConfig(user=request.user.id) uiconf.save() d={'name':user.facebook_name, 'friends': friends, 'likes':likes, 'friends_json':dumps(friends_json), 'uiconfig':uiconf} return render_to_response("base/home.html", d,context_instance=RequestContext(request)) else: return HttpResponse("Sorry problem with authentication.")
def suggestPeople(request): user=request.user.get_profile() log_activity(user.facebook_id, 'click_suggest') friends = FacebookUser.objects.filter(user_id=user.user_id) import random #import time suggestedfr = random.sample(friends, 5) suggestedfr.append(FacebookUser(user_id=None, facebook_id=None, name="More...")) #time.sleep(5) return render_to_response("recommender/suggestPeople.html", {'friends': suggestedfr})
def suggestPeople(request): user = request.user.get_profile() log_activity(user.facebook_id, 'click_suggest') friends = FacebookUser.objects.filter(user_id=user.user_id) import random #import time suggestedfr = random.sample(friends, 5) suggestedfr.append( FacebookUser(user_id=None, facebook_id=None, name="More...")) #time.sleep(5) return render_to_response("recommender/suggestPeople.html", {'friends': suggestedfr})
def view_profile(request): fbuser = request.user.get_profile() log_activity(fbuser.facebook_id, 'view_profile') userprofile = UserProfile.objects.get(facebook_id = fbuser.facebook_id) #graph = get_facebook_graph(request) #config = RecConfig(max_items=5) #algo = RecOwnLikes(request.user, graph, config) #likes = algo.recommend() #print likes likes=None suggests = Suggestion.objects.filter(source_user=fbuser.facebook_id) #print suggests #return HttpResponse(likes) return render_to_response('base/userprofile.html', {'userprofile':userprofile, 'likes':likes, 'suggests':suggests}, context_instance=RequestContext(request))
def view_notifications(request): curr_uid = request.user.get_profile().facebook_id log_activity(curr_uid, 'view_notifications') res = Suggestion.objects.filter(target_user=curr_uid) notifications = [] for curr_notify in res: curr_entry = {} if curr_notify.target_user is not None: curr_entry['target_user'] = UserProfile.objects.filter(facebook_id=int(curr_notify.target_user))[0].facebook_name if curr_notify.source_user is not None: curr_entry['source_user'] = FacebookUser.objects.filter(facebook_id=int(curr_notify.source_user))[0].name curr_entry['item_name'] = FacebookFriendLike.objects.filter(facebook_id=int(curr_notify.item_id))[0].name notifications.append(curr_entry) return render_to_response('base/notifications.html', {'suggestions':notifications})
def view_notifications(request): curr_uid = request.user.get_profile().facebook_id log_activity(curr_uid, 'view_notifications') res = Suggestion.objects.filter(target_user=curr_uid) notifications = [] for curr_notify in res: curr_entry = {} if curr_notify.target_user is not None: curr_entry['target_user'] = UserProfile.objects.filter( facebook_id=int(curr_notify.target_user))[0].facebook_name if curr_notify.source_user is not None: curr_entry['source_user'] = FacebookUser.objects.filter( facebook_id=int(curr_notify.source_user))[0].name curr_entry['item_name'] = FacebookFriendLike.objects.filter( facebook_id=int(curr_notify.item_id))[0].name notifications.append(curr_entry) return render_to_response('base/notifications.html', {'suggestions': notifications})
def view_profile(request): fbuser = request.user.get_profile() log_activity(fbuser.facebook_id, 'view_profile') userprofile = UserProfile.objects.get(facebook_id=fbuser.facebook_id) #graph = get_facebook_graph(request) #config = RecConfig(max_items=5) #algo = RecOwnLikes(request.user, graph, config) #likes = algo.recommend() #print likes likes = None suggests = Suggestion.objects.filter(source_user=fbuser.facebook_id) #print suggests #return HttpResponse(likes) return render_to_response('base/userprofile.html', { 'userprofile': userprofile, 'likes': likes, 'suggests': suggests }, context_instance=RequestContext(request))
def home(request): from json import dumps #d={} #t = loader.get_template('base/index.html') #c = Context({'d':d}) #return HttpResponse(t.render(c)) #return render_to_response("base/index.html", context_instance=RequestContext(request)) if request.user.is_authenticated(): user = request.user.get_profile() log_activity(user.facebook_id, 'view_home') #return render_to_response(request,context_instance=RequestContext(request)) friends = FacebookUser.objects.filter(user_id=user.user_id) likes = FacebookLike.objects.filter(user_id=user.user_id) #import pdb; pdb.set_trace() friends_json = [] for friend in friends: fr = {} fr['label'] = friend.name fr['id'] = friend.facebook_id friends_json.append(fr) uiconf_rows = UIConfig.objects.filter(user=request.user.id) if uiconf_rows: uiconf = uiconf_rows[0] else: uiconf = UIConfig(user=request.user.id) uiconf.save() d = { 'name': user.facebook_name, 'friends': friends, 'likes': likes, 'friends_json': dumps(friends_json), 'uiconfig': uiconf } return render_to_response("base/home.html", d, context_instance=RequestContext(request)) else: return HttpResponse("Sorry problem with authentication.")
def content(request): print "Entering recommender.views.content" config = None BUFFER_MULTIPLIER = 4 user = request.user.get_profile() max_items = int(request.REQUEST['maxitems']) algorithm = request.REQUEST['algorithm'] postprocess_params = {} recency = request.REQUEST['recency'] postprocess_params['popularity'] = int(request.REQUEST['popularity']) postprocess_params['close_friends'] = int(request.REQUEST['closefriends']) postprocess_params['trending'] = int(request.REQUEST['trending']) postprocess_params['acclaimed'] = int(request.REQUEST['acclaimed']) graph = get_facebook_graph(request) type_dict = { 'movie_choose': 'MOVIE', 'music_choose': 'MUSICIAN/BAND', 'book_choose': 'BOOK' } freq = None item_category = None if algorithm == "queue": log_activity(user.facebook_id, 'view_queue') else: log_activity(user.facebook_id, 'view_recs') if 'category' in request.REQUEST: item_category = type_dict[request.REQUEST['category']] else: freq = {} try: freq['MOVIE'] = int(request.REQUEST['movieseq']) freq['TV SHOW'] = int(request.REQUEST['tvshowseq']) freq['BOOK'] = int(request.REQUEST['bookseq']) freq['MUSICIAN/BAND'] = int(request.REQUEST['musiceq']) except: #print "Error in converting parameters eq to integers" pass print freq flags = RuntimeFlags.objects.filter(user=request.user.id).filter( app_name=settings.POPCORE_APP_NAME)[0] tries = 0 if flags.needs_update: while flags.tasks_barrier < RUNTIME_TASKBARRIER and tries < 2: #print "waiting" time.sleep(3) flags = RuntimeFlags.objects.filter(user=request.user.id).filter( app_name=settings.POPCORE_APP_NAME)[0] tries += 1 if flags.tasks_barrier < RUNTIME_TASKBARRIER: return HttpResponse("Processing your information from Facebook...") flags.needs_update = False flags.save() config = RecConfig(max_items, item_category, BUFFER_MULTIPLIER, freq, recency, postprocess_params) if algorithm == "random": algo = RecFriendSim(request.user, graph, config, request.session) elif algorithm == "queue": algo = RecQueue(request.user, graph, config, request.session) algo.saveConfig() arr = algo.recommend() arr = algo.postProcess() #friends = FacebookUser.objects.filter(user_id=user.user_id) #likes = FacebookLike.objects.filter(user_id=user.user_tionid) d = {'name': user.facebook_name, 'items': arr, 'algorithm': algorithm} return render_to_response("recommender/content.html", d, context_instance=RequestContext(request))
#items = [{"label":'amitaaa', "category":"cat", 'desc':1000}, {"label":'amitiaaaa', "category": 'cat2', 'desc':1000}] return HttpResponse(json.dumps(filtered_list)) return HttpResponse(None) @csrf_exempt def showItem(request): try: fbid = request.REQUEST['id'] name = request.REQUEST['name'] category = request.REQUEST['category'] except KeyError, e: return HttpResponse("Bad parameters") if request.user.is_authenticated(): log_activity(request.user.get_profile().facebook_id, 'search_item', name) url = "http://www.facebook.com/profile.php?id=" + fbid query_results = FacebookConnection.request(fbid) #query_results = graph.get(fbid) pic_url = None if 'cover' in query_results: pic_url = query_results['cover']['source'] elif 'picture' in query_results: pic_url = query_results['picture'] d = { 'url': url, 'name': name, 'pic': pic_url, 'category': category, 'item_id': fbid
def content(request): print "Entering recommender.views.content" config = None BUFFER_MULTIPLIER = 4 user=request.user.get_profile() max_items = int(request.REQUEST['maxitems']) algorithm = request.REQUEST['algorithm'] postprocess_params = {} recency = request.REQUEST['recency'] postprocess_params['popularity'] = int(request.REQUEST['popularity']) postprocess_params['close_friends'] = int(request.REQUEST['closefriends']) postprocess_params['trending'] = int(request.REQUEST['trending']) postprocess_params['acclaimed'] = int(request.REQUEST['acclaimed']) graph = get_facebook_graph(request) type_dict = {'movie_choose': 'MOVIE', 'music_choose': 'MUSICIAN/BAND', 'book_choose': 'BOOK'} freq = None item_category = None if algorithm == "queue": log_activity(user.facebook_id, 'view_queue') else: log_activity(user.facebook_id, 'view_recs') if 'category' in request.REQUEST: item_category = type_dict[request.REQUEST['category']] else: freq = {} try: freq['MOVIE'] = int(request.REQUEST['movieseq']) freq['TV SHOW'] = int(request.REQUEST['tvshowseq']) freq['BOOK'] = int(request.REQUEST['bookseq']) freq['MUSICIAN/BAND'] = int(request.REQUEST['musiceq']) except: #print "Error in converting parameters eq to integers" pass print freq flags = RuntimeFlags.objects.filter(user=request.user.id).filter(app_name=settings.POPCORE_APP_NAME)[0] tries = 0 if flags.needs_update: while flags.tasks_barrier < RUNTIME_TASKBARRIER and tries <2: #print "waiting" time.sleep(3) flags = RuntimeFlags.objects.filter(user=request.user.id).filter(app_name=settings.POPCORE_APP_NAME)[0] tries += 1 if flags.tasks_barrier < RUNTIME_TASKBARRIER: return HttpResponse("Processing your information from Facebook...") flags.needs_update = False flags.save() config = RecConfig(max_items, item_category,BUFFER_MULTIPLIER, freq, recency,postprocess_params) if algorithm == "random": algo = RecFriendSim(request.user, graph, config, request.session) elif algorithm == "queue": algo = RecQueue(request.user, graph, config, request.session) algo.saveConfig() arr= algo.recommend() arr = algo.postProcess() #friends = FacebookUser.objects.filter(user_id=user.user_id) #likes = FacebookLike.objects.filter(user_id=user.user_tionid) d={'name':user.facebook_name, 'items':arr, 'algorithm': algorithm} return render_to_response("recommender/content.html", d, context_instance=RequestContext(request))
filtered_list.append(item) #items = [{"label":'amitaaa', "category":"cat", 'desc':1000}, {"label":'amitiaaaa', "category": 'cat2', 'desc':1000}] return HttpResponse(json.dumps(filtered_list)) return HttpResponse(None) @csrf_exempt def showItem(request): try: fbid = request.REQUEST['id'] name = request.REQUEST['name'] category = request.REQUEST['category'] except KeyError, e: return HttpResponse("Bad parameters") if request.user.is_authenticated(): log_activity(request.user.get_profile().facebook_id, 'search_item', name) url = "http://www.facebook.com/profile.php?id=" + fbid; query_results = FacebookConnection.request(fbid) #query_results = graph.get(fbid) pic_url = None if 'cover' in query_results: pic_url = query_results['cover']['source'] elif 'picture' in query_results: pic_url = query_results['picture'] d = {'url': url, 'name':name, 'pic':pic_url, 'category':category, 'item_id':fbid} return render_to_response("recommender/showItem.html", d, context_instance=RequestContext(request)); def suggestPeople(request): user=request.user.get_profile() log_activity(user.facebook_id, 'click_suggest')