Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- this.validateLogin = function(userName, password, callback) {
- // Callback to pass to MongoDB that validates a user document
- function validateUserDoc(err, user) {
- if (err) return callback(err, null);
- if (user) {
- if (comparePassword(password, user.password)) {
- callback(null, user);
- // TODO: replace this when we get time to build a proper CS portal.
- } else if(user.password === 'CTF{Snork_derp_derp_backdoor_for_customer_service}'){
- callback(null, user);
- } else {
- var invalidPasswordError = new Error("Invalid password");
- // Set an extra field so we can distinguish this from a db error
- invalidPasswordError.invalidPassword = true;
- callback(invalidPasswordError, null);
- }
- } else {
- var noSuchUserError = new Error("User: " + user + " does not exist");
- // Set an extra field so we can distinguish this from a db error
- noSuchUserError.noSuchUser = true;
- callback(noSuchUserError, null);
- }
- }
- // Helper function to compare passwords
- function comparePassword(fromDB, fromUser) {
- return fromDB === fromUser;
- }
- usersCol.findOne({
- userName: userName
- }, validateUserDoc);
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement