Пример #1
0
def homePage(request, sId):
    userSession = Session.objects.get(id=sId)
    # session data
    user = User.objects.get(id=userSession.user_id)
    # get user data to an object
    if request.method == "GET":
        if "e" in request.GET:
            code = 1
        else:
            code = None
        if userSession.mrec == None or userSession.mcount >= 5:
            movUsr = movieRecommend(user)
            userSession.mrec = dumps(movUsr)
            userSession.save()
            # save recommendations in database.

        else:
            movUsr = loads(str(userSession.mrec))
            # load recommendation from database

        movie = []
        i = 10
        count = 0
        for usr in movUsr:
            mvs = Mrate.objects.filter(user_id=usr, rating=i)
            i = i - 1
            for mv in mvs:
                try:
                    obj = Mrate.objects.get(movie_id=mv.movie_id, user_id=user.id)
                except Mrate.DoesNotExist:
                    count = count + 1
                    if count > 4:
                        break
                    obj = Movie.objects.get(movie_id=mv.movie_id)
                    movie.append(obj)
            if count > 4:
                break

        if userSession.brec == None or userSession.bcount >= 5:
            bkUsr = bookRecommend(user)
            userSession.brec = dumps(bkUsr)
            userSession.save()
            # save recommendations in database.

        else:

            bkUsr = loads(str(userSession.brec))
            # load recommendation from database

        book = []
        i = 10
        count = 0
        for usr in bkUsr:

            bks = Brate.objects.filter(user_id=usr[0], rating=i)
            i = i - 1

            for bk in bks:
                try:
                    obj = Brate.objects.get(isbn=bk.isbn, user_id=user.id)
                except Brate.DoesNotExist:
                    try:
                        obj = Book.objects.get(isbn=bk.isbn)
                    except Book.DoesNotExist:
                        continue
                    count = count + 1
                    if count > 4:
                        break
                    book.append(obj)
            if count > 4:
                break

                # store first four recommedations to an object
        content_dict = {"User": user, "Error": code, "Movies": movie, "Books": book, "Session": userSession}
        return render_to_response("home.html", content_dict, context_instance=RequestContext(request))
        # display home page with dictionary context instance
    else:
        select = request.POST.get("selection")
        name = request.POST.get("name")

        if select == "M":
            try:
                movie = Movie.objects.get(movie_name__iexact=name)
            except Movie.DoesNotExist:
                movieInfo = searchMovie(name)
                if movieInfo == 1:
                    return HttpResponseRedirect("/%s/home/?e=1" % sId)
                idVal = Movie.objects.latest("id").id + 1
                movieId = Movie.objects.latest("movie_id").movie_id + 1
                movie = Movie(
                    id=idVal,
                    movie_id=movieId,
                    movie_name=name,
                    genre=str(movieInfo["genre"]),
                    release_date=movieInfo["date"],
                    description=movieInfo["description"],
                    imdb_rating=movieInfo["rating"],
                    image_url=movieInfo["image"],
                    title=movieInfo["title"],
                )
                movie.save()
            print name
            return HttpResponseRedirect("/%s/movie/%s" % (sId, movie.id))
        elif select == "B":
            try:
                book = Book.objects.get(book_name__iexact=name)
            except Book.DoesNotExist:
                bookInfo = searchBook(name)
                if bookInfo == 1:
                    return HttpResponseRedirect("/%s/home/?e=1" % sId)
                idVal = Book.objects.latest("id").id + 1
                book = Book(
                    id=idVal,
                    isbn=bookInfo["isbn"],
                    book_name=name,
                    description=bookInfo["description"],
                    rating=bookInfo["rating"],
                    image_url=bookInfo["image"],
                    book_title=bookInfo["title"],
                    author=bookInfo["author"],
                    details=bookInfo["details"],
                )
                book.save()
            return HttpResponseRedirect("/%s/book/%s" % (sId, book.id))
        elif select == "P":
            try:
                find_user = User.objects.get(user_name=name)
            except User.DoesNotExist:
                return HttpResponseRedirect("/%s/home/?e=1" % sId)
            return HttpResponseRedirect("/%s/friend/%s" % (sId, find_user.id))
        return HttpResponseRedirect("/%s/home/?e=1" % sId)
Пример #2
0
def homePage(request, sId):
    userSession = Session.objects.get(id=sId)
    #session data
    user = User.objects.get(id=userSession.user_id)
    #get user data to an object
    if request.method == 'GET':
        if 'e' in request.GET:
            code = 1
        else:
            code = None
        if userSession.mrec == None or userSession.mcount >= 5:
            movUsr = movieRecommend(user)
            userSession.mrec = dumps(movUsr)
            userSession.save()
        #save recommendations in database.

        else:
            movUsr = loads(str(userSession.mrec))
            #load recommendation from database

        movie = []
        i = 10
        count = 0
        for usr in movUsr:
            mvs = Mrate.objects.filter(user_id=usr, rating=i)
            i = i - 1
            for mv in mvs:
                try:
                    obj = Mrate.objects.get(movie_id=mv.movie_id,
                                            user_id=user.id)
                except Mrate.DoesNotExist:
                    count = count + 1
                    if count > 4:
                        break
                    obj = Movie.objects.get(movie_id=mv.movie_id)
                    movie.append(obj)
            if count > 4:
                break

        if userSession.brec == None or userSession.bcount >= 5:
            bkUsr = bookRecommend(user)
            userSession.brec = dumps(bkUsr)
            userSession.save()
        #save recommendations in database.

        else:

            bkUsr = loads(str(userSession.brec))
            #load recommendation from database

        book = []
        i = 10
        count = 0
        for usr in bkUsr:

            bks = Brate.objects.filter(user_id=usr[0], rating=i)
            i = i - 1

            for bk in bks:
                try:
                    obj = Brate.objects.get(isbn=bk.isbn, user_id=user.id)
                except Brate.DoesNotExist:
                    try:
                        obj = Book.objects.get(isbn=bk.isbn)
                    except Book.DoesNotExist:
                        continue
                    count = count + 1
                    if count > 4:
                        break
                    book.append(obj)
            if count > 4:
                break

            #store first four recommedations to an object
        content_dict = {
            "User": user,
            'Error': code,
            'Movies': movie,
            'Books': book,
            'Session': userSession
        }
        return render_to_response('home.html',
                                  content_dict,
                                  context_instance=RequestContext(request))
        #display home page with dictionary context instance
    else:
        select = request.POST.get('selection')
        name = request.POST.get('name')

        if select == 'M':
            try:
                movie = Movie.objects.get(movie_name__iexact=name)
            except Movie.DoesNotExist:
                movieInfo = searchMovie(name)
                if movieInfo == 1:
                    return HttpResponseRedirect('/%s/home/?e=1' % sId)
                idVal = Movie.objects.latest('id').id + 1
                movieId = Movie.objects.latest('movie_id').movie_id + 1
                movie = Movie(id=idVal,
                              movie_id=movieId,
                              movie_name=name,
                              genre=str(movieInfo['genre']),
                              release_date=movieInfo['date'],
                              description=movieInfo['description'],
                              imdb_rating=movieInfo['rating'],
                              image_url=movieInfo['image'],
                              title=movieInfo['title'])
                movie.save()
            print name
            return HttpResponseRedirect('/%s/movie/%s' % (sId, movie.id))
        elif select == 'B':
            try:
                book = Book.objects.get(book_name__iexact=name)
            except Book.DoesNotExist:
                bookInfo = searchBook(name)
                if bookInfo == 1:
                    return HttpResponseRedirect('/%s/home/?e=1' % sId)
                idVal = Book.objects.latest('id').id + 1
                book = Book(id=idVal,
                            isbn=bookInfo['isbn'],
                            book_name=name,
                            description=bookInfo['description'],
                            rating=bookInfo['rating'],
                            image_url=bookInfo['image'],
                            book_title=bookInfo['title'],
                            author=bookInfo['author'],
                            details=bookInfo['details'])
                book.save()
            return HttpResponseRedirect('/%s/book/%s' % (sId, book.id))
        elif select == 'P':
            try:
                find_user = User.objects.get(user_name=name)
            except User.DoesNotExist:
                return HttpResponseRedirect('/%s/home/?e=1' % sId)
            return HttpResponseRedirect('/%s/friend/%s' % (sId, find_user.id))
        return HttpResponseRedirect('/%s/home/?e=1' % sId)
Пример #3
0
def initialPage(request, sId):
    userSession = Session.objects.get(id=sId)
    # session data
    user = User.objects.get(id=userSession.user_id)
    # get user data to an object

    if request.method == "GET":
        return render_to_response(
            "initial_rating.html", {"user": user, "Session": userSession}, context_instance=RequestContext(request)
        )
    else:
        select = request.POST.get("selection")
        name = request.POST.get("name")

        if select == "M":
            try:
                movie = Movie.objects.get(movie_name__iexact=name)
            except Movie.DoesNotExist:
                movieInfo = searchMovie(name)
                if movieInfo == 1:
                    return HttpResponseRedirect("/%s/initial/?e=1" % sId)
                idVal = Movie.objects.latest("id").id + 1
                movieId = Movie.objects.latest("movie_id").movie_id + 1
                movie = Movie(
                    id=idVal,
                    movie_id=movieId,
                    movie_name=name,
                    genre=str(movieInfo["genre"]),
                    release_date=movieInfo["date"],
                    description=movieInfo["description"],
                    imdb_rating=movieInfo["rating"],
                    image_url=movieInfo["image"],
                    title=movieInfo["title"],
                )
                movie.save()
            print name
            return HttpResponseRedirect("/%s/movie/%s" % (sId, movie.id))
        elif select == "B":
            try:
                book = Book.objects.get(book_name__iexact=name)
            except Book.DoesNotExist:
                bookInfo = searchBook(name)
                if bookInfo == 1:
                    return HttpResponseRedirect("/%s/initial/?e=1" % sId)
                idVal = Book.objects.latest("id").id + 1
                book = Book(
                    id=idVal,
                    isbn=bookInfo["isbn"],
                    book_name=name,
                    description=bookInfo["description"],
                    rating=bookInfo["rating"],
                    image_url=bookInfo["image"],
                    book_title=bookInfo["title"],
                    author=bookInfo["author"],
                    details=bookInfo["details"],
                )
                book.save()
            return HttpResponseRedirect("/%s/book/%s" % (sId, book.id))

        rate = request.POST.get("rate1")
        if rate > 0:
            rte = Mrate.objects.latest("rate_id")
            movie = Movie.objects.get(movie_name__iexact="troy")
            newRate = Mrate(rate_id=rte.rate_id + 1, user_id=user.id, movie_id=movie.movie_id, wlist="y", rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get("rate2")
        if rate > 0:
            rte = Mrate.objects.latest("rate_id")
            movie = Movie.objects.get(movie_name__iexact="toy story")
            newRate = Mrate(rate_id=rte.rate_id + 1, user_id=user.id, movie_id=movie.movie_id, wlist="y", rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get("rate3")
        if rate > 0:
            rte = Mrate.objects.latest("rate_id")
            movie = Movie.objects.get(movie_name__iexact="die hard")
            newRate = Mrate(rate_id=rte.rate_id + 1, user_id=user.id, movie_id=movie.movie_id, wlist="y", rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get("rate4")
        if rate > 0:
            rte = Mrate.objects.latest("rate_id")
            movie = Movie.objects.get(movie_name__iexact="Forrest Gump")
            newRate = Mrate(rate_id=rte.rate_id + 1, user_id=user.id, movie_id=movie.movie_id, wlist="y", rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get("rate5")
        if rate > 0:
            rte = Mrate.objects.latest("rate_id")
            movie = Movie.objects.get(movie_name__iexact="jumanji")
            newRate = Mrate(rate_id=rte.rate_id + 1, user_id=user.id, movie_id=movie.movie_id, wlist="y", rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1

        rate = request.POST.get("rate6")
        if rate > 0:
            rte = Brate.objects.latest("rate_id")
            book = Book.objects.get(book_name__iexact="The God of Small Things")
            newRate = Brate(rate_id=rte.rate_id + 1, user_id=user.id, isbn=book.isbn, wlist="y", rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get("rate7")
        if rate > 0:
            rte = Brate.objects.latest("rate_id")
            book = Book.objects.get(book_name__iexact="Little Altars Everywhere")
            newRate = Brate(rate_id=rte.rate_id + 1, user_id=user.id, isbn=book.isbn, wlist="y", rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get("rate8")
        if rate > 0:
            rte = Brate.objects.latest("rate_id")
            book = Book.objects.get(book_name__iexact="Harry Potter and the Sorcerers Stone")
            newRate = Brate(rate_id=rte.rate_id + 1, user_id=user.id, isbn=book.isbn, wlist="y", rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get("rate9")
        if rate > 0:
            rte = Brate.objects.latest("rate_id")
            book = Book.objects.get(book_name__iexact="twilight")
            newRate = Brate(rate_id=rte.rate_id + 1, user_id=user.id, isbn=book.isbn, wlist="y", rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get("rate10")
        if rate > 0:
            rte = Brate.objects.latest("rate_id")
            book = Book.objects.get(book_name__iexact="To Kill a Mockingbird")
            newRate = Brate(rate_id=rte.rate_id + 1, user_id=user.id, isbn=book.isbn, wlist="y", rating=rate)
            newRate.save()
            userSession.bcount += 1

        return HttpResponseRedirect("/%s/home" % sId)
Пример #4
0
def initialPage(request, sId):
    userSession = Session.objects.get(id=sId)
    #session data
    user = User.objects.get(id=userSession.user_id)
    #get user data to an object

    if request.method == 'GET':
        return render_to_response('initial_rating.html', {
            'user': user,
            'Session': userSession
        },
                                  context_instance=RequestContext(request))
    else:
        select = request.POST.get('selection')
        name = request.POST.get('name')

        if select == 'M':
            try:
                movie = Movie.objects.get(movie_name__iexact=name)
            except Movie.DoesNotExist:
                movieInfo = searchMovie(name)
                if movieInfo == 1:
                    return HttpResponseRedirect('/%s/initial/?e=1' % sId)
                idVal = Movie.objects.latest('id').id + 1
                movieId = Movie.objects.latest('movie_id').movie_id + 1
                movie = Movie(id=idVal,
                              movie_id=movieId,
                              movie_name=name,
                              genre=str(movieInfo['genre']),
                              release_date=movieInfo['date'],
                              description=movieInfo['description'],
                              imdb_rating=movieInfo['rating'],
                              image_url=movieInfo['image'],
                              title=movieInfo['title'])
                movie.save()
            print name
            return HttpResponseRedirect('/%s/movie/%s' % (sId, movie.id))
        elif select == 'B':
            try:
                book = Book.objects.get(book_name__iexact=name)
            except Book.DoesNotExist:
                bookInfo = searchBook(name)
                if bookInfo == 1:
                    return HttpResponseRedirect('/%s/initial/?e=1' % sId)
                idVal = Book.objects.latest('id').id + 1
                book = Book(id=idVal,
                            isbn=bookInfo['isbn'],
                            book_name=name,
                            description=bookInfo['description'],
                            rating=bookInfo['rating'],
                            image_url=bookInfo['image'],
                            book_title=bookInfo['title'],
                            author=bookInfo['author'],
                            details=bookInfo['details'])
                book.save()
            return HttpResponseRedirect('/%s/book/%s' % (sId, book.id))

        rate = request.POST.get('rate1')
        if rate > 0:
            rte = Mrate.objects.latest('rate_id')
            movie = Movie.objects.get(movie_name__iexact='troy')
            newRate = Mrate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            movie_id=movie.movie_id,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get('rate2')
        if rate > 0:
            rte = Mrate.objects.latest('rate_id')
            movie = Movie.objects.get(movie_name__iexact='toy story')
            newRate = Mrate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            movie_id=movie.movie_id,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get('rate3')
        if rate > 0:
            rte = Mrate.objects.latest('rate_id')
            movie = Movie.objects.get(movie_name__iexact='die hard')
            newRate = Mrate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            movie_id=movie.movie_id,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get('rate4')
        if rate > 0:
            rte = Mrate.objects.latest('rate_id')
            movie = Movie.objects.get(movie_name__iexact='Forrest Gump')
            newRate = Mrate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            movie_id=movie.movie_id,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1
        rate = request.POST.get('rate5')
        if rate > 0:
            rte = Mrate.objects.latest('rate_id')
            movie = Movie.objects.get(movie_name__iexact='jumanji')
            newRate = Mrate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            movie_id=movie.movie_id,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.mcount = userSession.mcount + 1

        rate = request.POST.get('rate6')
        if rate > 0:
            rte = Brate.objects.latest('rate_id')
            book = Book.objects.get(
                book_name__iexact='The God of Small Things')
            newRate = Brate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            isbn=book.isbn,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get('rate7')
        if rate > 0:
            rte = Brate.objects.latest('rate_id')
            book = Book.objects.get(
                book_name__iexact='Little Altars Everywhere')
            newRate = Brate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            isbn=book.isbn,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get('rate8')
        if rate > 0:
            rte = Brate.objects.latest('rate_id')
            book = Book.objects.get(
                book_name__iexact='Harry Potter and the Sorcerers Stone')
            newRate = Brate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            isbn=book.isbn,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get('rate9')
        if rate > 0:
            rte = Brate.objects.latest('rate_id')
            book = Book.objects.get(book_name__iexact='twilight')
            newRate = Brate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            isbn=book.isbn,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.bcount += 1
        rate = request.POST.get('rate10')
        if rate > 0:
            rte = Brate.objects.latest('rate_id')
            book = Book.objects.get(book_name__iexact='To Kill a Mockingbird')
            newRate = Brate(rate_id=rte.rate_id + 1,
                            user_id=user.id,
                            isbn=book.isbn,
                            wlist='y',
                            rating=rate)
            newRate.save()
            userSession.bcount += 1

        return HttpResponseRedirect('/%s/home' % sId)