Exemple #1
0
def dashboard():
    
    if request.method=="POST":
        name = request.form['moviename']
        searchstring = name.split(" ")
        genre = request.form['genre']
        result = []
        if genre.lower() == 'all':
            if name=="":
                r = requests.get(apiurl+'/api/movies')
                result = r.json()
            else:
                result = Movie.objects(name=name).to_json()
                result = json.loads(result)
        else:
            print(genre.capitalize())
            genre = genre.capitalize()
            if name=="":

                result = Movie.objects(genres__in=[genre]).to_json()
            else:
                result = Movie.objects(name=name, genres__in=[genre]).to_json()
                print(result)
            result = json.loads(result)
            
        return render_template('dashboard.html',movies=result)
    r = requests.get(apiurl+'/api/movies')
    if (r.json()):
        return render_template('dashboard.html', movies=r.json())
    else:
        msg = 'No articles found'
        return render_template('dashboard.html', msg=msg)
Exemple #2
0
 def get(self, id):
     try:
         movies = Movie.objects().get(id=id).to_json()
         return Response(movie, mimetype="application/json", status=200)
     except DoesNotExist:
         raise MovieNotExistsError
     except Exception:
         raise InternalServerError
Exemple #3
0
 def delete(self, id):
     try:
         user_id = get_jwt_identity()
         Movie.objects.get(id=id, added_by=user_id).delete()
         movies = Movie.objects().to_json()
         return Response(movies, mimetype='application/json', status=200)
     except DoesNotExist:
         raise MovieNotExistsError
     except Exception as e:
         raise InternalServerError
Exemple #4
0
 def delete(self, id):
     try:
         user_id = get_jwt_identity()
         movie = Movie.objects().get(id=id, added_by=user_id)
         movie.delete()
         return '', 200
     except DoesNotExist:
         raise DeletingMovieError
     except Exception:
         raise InternalServerError
Exemple #5
0
 def put(self, id):
     try:
         user_id = get_jwt_identity()
         movie = Movie.objects().get(id=id, added_by=user_id)
         body = request.get_json()
         Movie.objects.get(id=id).update(**body)
         return '', 200
     except InvalidQueryError:
         raise SchemaValidationError
     except DoesNotExist:
         raise UpdatingMovieError
     except Exception:
         raise InternalServerError
Exemple #6
0
	def get(self):
		page = request.args.get("page", 0)
		limit = request.args.get("limit", 20)
		try:
			page = int(page)
			limit = int(limit)
		except Exception as e:
			return Response(f'{e}', status=400)
		start = page*limit
		end = start+limit

		top_movies = Menu.objects(name="top").first() # later put limit here
		movies = Movie.objects(_id__in=top_movies.titles[start:end]).scalar(*main_fields).to_json()

		return Response(movies, mimetype="application/json", status=200)
Exemple #7
0
def login():
    if request.method=='POST':
        #get form fields
        email = request.form['email']
        password = request.form['password']
        json = {}
        json['email'] = email
        json['password'] = password
        print(password)
        print(getenv('mongodb_host'))
        print("all movies are ", Movie.objects().to_json())
        r = requests.post(url = apiurl+"/api/login", json=json)
        print(apiurl)
        print(r)
        if r.status_code == 200:
            session['logged_in'] = True
            session['username'] = email
            session['is_admin'] = r.json()['is_admin']
            flash('you are logged in','success')
            return redirect(url_for('dashboard'))
        else:
            flash('you are not registered or your username and password is wrong','error')
            return render_template('login.html')
    return render_template('login.html')
Exemple #8
0
def worst_movies(number):
    movie = Movie.objects().order_by("score").limit(int(number))
    return {'results': movie}, 200
Exemple #9
0
def best_movie():
    movie = Movie.objects().order_by("-score").limit(1).first()
    return {'results': movie}, 200
Exemple #10
0
def search_by_score(query):
    results = Movie.objects(score=query)
    return {'results': results}, 200
Exemple #11
0
def filter_by_score(query):
    results = Movie.objects(score__gte=query)
    return {'results': results}, 200
Exemple #12
0
def get():
    movies = Movie.objects().to_json()
    return {'movies': movies}
Exemple #13
0
def least_profitable_movie():
    movie = Movie.objects().order_by("box_office").limit(1).first()
    return {'results': movie}, 200
Exemple #14
0
def get_movie():
    movie = Movie.objects(id=id)
    return movie, 200
Exemple #15
0
def search_cast(query):
    results = Movie.objects(casts=re.compile(query, re.IGNORECASE))
    return {'results': results}, 200
Exemple #16
0
def get_movies():
    import pdb
    pdb.set_trace()
    movies = Movie.objects().to_json()
    return Response(movies, mimetype="application/json", status=200)
Exemple #17
0
def filter_by_box_office_collection(query):
    results = Movie.objects(box_office__gte=query)
    return {'results': results}, 200
Exemple #18
0
def search_by_name(query):
    res = Movie.objects(name__icontains=query)
    return {'results': res}, 200
Exemple #19
0
def highest_grossing_movies(number):
    movie = Movie.objects().order_by("-box_office").limit(int(number))
    return {'results': movie}, 200
Exemple #20
0
def search_review(query):
    results = Movie.objects(reviews=re.compile('.*' + query +
                                               '.*', re.IGNORECASE))
    return {'results': results}, 200
Exemple #21
0
 def get(self):
     movies = Movie.objects().to_json()
     return Response(movies, mimetype="application/json", status=200)
Exemple #22
0
 def get(self):
     movies = Movie.objects()
     return jsonify(movies)