Example #1
0
def delete_notifications(request):
    asi_session = request.session['asi_session']
    user_id = asi_session.user_id
    course_name = request.POST["plan course"]
    course_code = str(course_name).split('/')[-1]
    RecommendedCourse.delete_course(user_id=user_id, course_code=course_code)

    if "plan_to_take" in request.POST:
        forward_url = request.POST["plan course"]
    elif "ignore" in request.POST:
        forward_url =  reverse("notifications")
    return HttpResponseRedirect(forward_url)
Example #2
0
 def get_notifications(cls, user_id):
     if user_id == None:
         return []
     result = []
     notifications = RecommendedCourse.get_all_recommended_courses(user_id)
     for notification in notifications:
         user_id = notification.user_recommending
         img_scr = ASI_BASE_URL + '/people/' + user_id \
                 + '/@avatar/small_thumbnail'
         user_scr = reverse('profile', args=[user_id])
         try:
             user_inf = api.people.get(user_id)
         except api.people.UserDoesNotExist:
             continue
         try:
             user_name = user_inf['username']
         except (KeyError, TypeError):
             user_name = 'Unknown'
         course_code = notification.course_code
         object_name = course_code
         action = 'recommends'
         update_time = notification.time
         result.append(PlanCourseEventLog(img_scr=img_scr,
             user_name=user_name, user_scr=user_scr, action=action,
             object_name=object_name, update_time=update_time,
             object_id=course_code))
     return result
Example #3
0
def recommend_to_friends(request, course_code):
    """
    This method takes a post form with friend id's and
    adds to their recommended courses.
    """
    asi_session = request.session['asi_session']
    user_id = asi_session.user_id

    for friend_id, value in request.POST.iteritems():
        if value == "on":
            recommended_course = RecommendedCourse(
                                    user_recommending = user_id,
                                    user_recommended = friend_id,
                                    course_code = course_code
                                    )
            try:
                recommended_course.save()
            except IntegrityError:
                pass

    return HttpResponseRedirect(reverse("home"))
Example #4
0
def home(request):
    asi_session = request.session['asi_session']
    user_id = asi_session.user_id
    friends = api.people.get_friends(user_id)
    template = loader.get_template("frontpage/home.html")
    feedurl = 'frontpage/feeds.html'
    feeds = EventLog.constructor(user_ids=friends)
    notification_num = RecommendedCourse.get_notification_num(user_id=user_id)
    pending_friend_ids = asi_session.get_pending_friend_requests()
    friend_requests_num = len(pending_friend_ids)

    context = RequestContext(request, {
        'asi_session': request.session['asi_session'],
        'feedurl': feedurl,
        'feeds': feeds,
        'notification_num':notification_num,
        'friend_requests_num': friend_requests_num
    })
    return HttpResponse(template.render(context))