diff --git a/project/controllers/library.py b/project/controllers/library.py index c8d57f3aee6010d4fec22fdcbf8e9c64d430d16c..1961a6da7393980487049ad88816c7a73a1683e9 100644 --- a/project/controllers/library.py +++ b/project/controllers/library.py @@ -110,7 +110,7 @@ def addlibraryItem(name,user=None): movie = Movie.convertMovie(movie) library.addUnit(movie) if library.name != 'Master': - master = Library(user=user,name="Master",unit='Movie').first() + master = Library.objects(user=user,name="Master",unit='Movie').first() master.addUnit(movie) return jsonify(response='success',type='redirect',path=url_for(endpoint='library',name=name,_external=True)) \ No newline at end of file diff --git a/project/controllers/loan.py b/project/controllers/loan.py index 4ed4ea129c4d4458d8e61b298e91cac8e24d0ed4..5b9c0ed32c3296bf695512edb33b97bfa4f18045 100644 --- a/project/controllers/loan.py +++ b/project/controllers/loan.py @@ -11,6 +11,7 @@ def loaned(user=None): @app.route('/send-reminder', methods=['POST']) @security('user') def reminderEmail(user=None): + import smtplib from_addr = user.email to_addr = request.form['email'] subject = request.form['subject'] or "Movie Return Reminder" @@ -22,6 +23,8 @@ def reminderEmail(user=None): if not movie: return jsonify(response='error',message='Invalid Movie given'),404 loan = movie.getLoan(user) + if not loan: + return jsonify(response='error',message='Invalid Movie given'),404 message = request.form['message'] or "The movie %s, borrowed form %s is due on %s" % (movie.title, user.email, loan.expected_return_date) login = app.config['SMTP_USER'] password = app.config['SMTP_PASSWORD'] @@ -36,4 +39,5 @@ def reminderEmail(user=None): server.starttls() server.login(login,password) problems = server.sendmail(from_addr, to_addr, message) - server.quit() \ No newline at end of file + server.quit() + return jsonify(response='success',type="reload") \ No newline at end of file diff --git a/project/model/Movie.py b/project/model/Movie.py index 866bf62fd6870d1a6d8ff169613d3a999eae9b7c..905f024970affcefd25600930088921f04fa410c 100644 --- a/project/model/Movie.py +++ b/project/model/Movie.py @@ -6,6 +6,7 @@ class Movie(db.Document): title = db.StringField(max_length=255, required=True) summary = db.StringField(max_length=10000, required=True) tags = db.ListField(db.StringField(max_length=50)) + cast = db.ListField(db.StringField()) tmdb_id = db.IntField() runtime = db.IntField() poster = db.StringField() @@ -51,9 +52,12 @@ class Movie(db.Document): result.runtime = int(movie.runtime) tags = movie.keywords for tag in tags: - result.addTag(str(tag)) + result.addTag(str(tag.name.encode('utf-8'))) genres = movie.genres for genre in genres: - result.addTag(str(genre)) + result.addTag(str(genre.name.encode('utf-8'))) + cast = movie.cast + for actor in cast: + result.cast.append("%s as %s" % (actor.name,actor.character)) result.save() return result diff --git a/project/templates/home/signup_modal.html b/project/templates/home/signup_modal.html index 2d354027363608e6209b5363636751873e82684b..61a4cb1705c98580113c8df9d9516c932bdbcb26 100644 --- a/project/templates/home/signup_modal.html +++ b/project/templates/home/signup_modal.html @@ -5,19 +5,19 @@ <div class="form-group"> <label for="userEmail" class="col-sm-3 control-label">Email</label> <div class="col-xs-9 col-md-6"> - <input type="email" class="form-control" id="userEmail" name="email" placeholder="Email address"> + <input type="email" class="form-control" id="signupEmail" name="email" placeholder="Email address"> </div> </div> <div class="form-group"> <label for="userPassword" class="col-sm-3 control-label">Password</label> <div class="col-xs-9 col-md-6"> - <input type="password" class="form-control" id="userPassword" name="password" placeholder="Password"> + <input type="password" class="form-control" id="signupPassword" name="password" placeholder="Password"> </div> </div> <div class="form-group"> <label for="userPasswordConfirm" class="col-sm-3 control-label">Confirm Password</label> <div class="col-xs-9 col-md-6"> - <input type="password" class="form-control" id="userPasswordConfirm" name="passwordConfirm" placeholder="Password"> + <input type="password" class="form-control" id="signupPasswordConfirm" name="passwordConfirm" placeholder="Password"> </div> </div> </form> @@ -30,8 +30,7 @@ rules: { password: "required", passwordConfirm: { required: true, - minlength: 5, - equalTo: "#userPassword" + equalTo: "#signupPassword" }, email: { required: true,