Commit 698c4aea authored by Rosanny Sihombing's avatar Rosanny Sihombing
Browse files

rewrite getUserByEmail using mysql2

6 merge requests!143updating yml config,!91Prepare prod,!90Testing,!89Testing,!77Update branch MLAB-383,!73Mlab 486
Showing with 54 additions and 34 deletions
+54 -34
const dbconn = require('./dbconn'); const dbconn_OBSOLETE = require('./dbconn') // DO NOT USE THIS FOR NEW FEATURE
const dbconn = require('./dbconn2')
var methods = { var methods = {
// ===================== user db ===================== // ===================== user db =====================
registerNewUser: function(data, callback) { registerNewUser: function(data, callback) {
dbconn.user.beginTransaction(function(err) { // START TRANSACTION dbconn_OBSOLETE.user.beginTransaction(function(err) { // START TRANSACTION
if (err) { if (err) {
throw err throw err
} }
// insert profile // insert profile
dbconn.user.query('INSERT INTO user SET ?', data.profile, function (err, results, fields) { dbconn_OBSOLETE.user.query('INSERT INTO user SET ?', data.profile, function (err, results, fields) {
if (err) { if (err) {
return dbconn.user.rollback(function() { return dbconn_OBSOLETE.user.rollback(function() {
throw err throw err
}); });
} }
...@@ -20,9 +21,9 @@ var methods = { ...@@ -20,9 +21,9 @@ var methods = {
user_id: newUserId, user_id: newUserId,
password: data.password password: data.password
} }
dbconn.user.query('INSERT INTO credential SET ?', credentialData, function (err, results, fields) { dbconn_OBSOLETE.user.query('INSERT INTO credential SET ?', credentialData, function (err, results, fields) {
if (err) { if (err) {
return dbconn.user.rollback(function() { return dbconn_OBSOLETE.user.rollback(function() {
throw err throw err
}); });
} }
...@@ -32,9 +33,9 @@ var methods = { ...@@ -32,9 +33,9 @@ var methods = {
role_id: 2, // USER role_id: 2, // USER
user_id: newUserId user_id: newUserId
} }
dbconn.user.query('INSERT INTO user_project_role SET ?', projectRoleData, function (err, results, fields) { dbconn_OBSOLETE.user.query('INSERT INTO user_project_role SET ?', projectRoleData, function (err, results, fields) {
if (err) { if (err) {
return dbconn.user.rollback(function() { return dbconn_OBSOLETE.user.rollback(function() {
throw err throw err
}); });
} }
...@@ -43,16 +44,16 @@ var methods = { ...@@ -43,16 +44,16 @@ var methods = {
user_id: newUserId, user_id: newUserId,
token: data.verificationToken token: data.verificationToken
} }
dbconn.user.query('INSERT INTO verification SET ?', verificationData, function (err, results, fields) { dbconn_OBSOLETE.user.query('INSERT INTO verification SET ?', verificationData, function (err, results, fields) {
if (err) { if (err) {
return dbconn.user.rollback(function() { return dbconn_OBSOLETE.user.rollback(function() {
throw err throw err
}); });
} }
// COMMIT // COMMIT
dbconn.user.commit(function(err) { dbconn_OBSOLETE.user.commit(function(err) {
if (err) { if (err) {
return dbconn.user.rollback(function() { return dbconn_OBSOLETE.user.rollback(function() {
throw err throw err
}) })
} }
...@@ -64,8 +65,8 @@ var methods = { ...@@ -64,8 +65,8 @@ var methods = {
callback(err) callback(err)
}) })
}, },
getUserByEmail: function(email, callback) { getUserByEmail_OBSOLETE: function(email, callback) {
dbconn.user.query('SELECT id, verificationStatus, salutation, title, firstname, lastname, industry, organisation, speciality, m4lab_idp FROM user WHERE email = "' +email+'"', function (err, rows, fields) { dbconn_OBSOLETE.user.query('SELECT id, verificationStatus, salutation, title, firstname, lastname, industry, organisation, speciality, m4lab_idp FROM user WHERE email = "' +email+'"', function (err, rows, fields) {
let user let user
if (err) { throw err } if (err) { throw err }
else { else {
...@@ -76,8 +77,17 @@ var methods = { ...@@ -76,8 +77,17 @@ var methods = {
callback(user, err) callback(user, err)
}); });
}, },
getUserByEmail: async function(email) {
try {
let rows = await dbconn.user.promise().query('SELECT id, verificationStatus, salutation, title, firstname, lastname, industry, organisation, speciality, m4lab_idp FROM user WHERE email = "' +email+'"')
return rows[0][0]
} catch (err) {
console.error(err)
return err
}
},
getUserById: function(userId, callback) { getUserById: function(userId, callback) {
dbconn.user.query('SELECT verificationStatus, email, salutation, title, firstname, lastname, industry, organisation, speciality FROM user WHERE id = ' +userId, function (err, rows, fields) { dbconn_OBSOLETE.user.query('SELECT verificationStatus, email, salutation, title, firstname, lastname, industry, organisation, speciality FROM user WHERE id = ' +userId, function (err, rows, fields) {
let user let user
if (err) { throw err } if (err) { throw err }
else { else {
...@@ -90,7 +100,7 @@ var methods = { ...@@ -90,7 +100,7 @@ var methods = {
}, },
checkUserEmail: function(email, callback) { checkUserEmail: function(email, callback) {
let user let user
dbconn.user.query('SELECT id, email FROM user WHERE email = "' +email+'"', function (err, rows) { dbconn_OBSOLETE.user.query('SELECT id, email FROM user WHERE email = "' +email+'"', function (err, rows) {
if (err) { throw err } if (err) { throw err }
else { else {
if ( rows.length > 0) { if ( rows.length > 0) {
...@@ -102,7 +112,7 @@ var methods = { ...@@ -102,7 +112,7 @@ var methods = {
}, },
getUserByToken: function(token, callback) { getUserByToken: function(token, callback) {
let user let user
dbconn.user.query('SELECT t1.user_id, t2.email FROM userdb.credential AS t1 INNER JOIN userdb.user AS t2 ON t1.user_id = t2.id AND t1.resetPasswordToken = "' dbconn_OBSOLETE.user.query('SELECT t1.user_id, t2.email FROM userdb.credential AS t1 INNER JOIN userdb.user AS t2 ON t1.user_id = t2.id AND t1.resetPasswordToken = "'
+token+'" and resetPasswordExpires > '+Date.now(), function (err, rows, fields) { +token+'" and resetPasswordExpires > '+Date.now(), function (err, rows, fields) {
if (err) { throw err } if (err) { throw err }
else { else {
...@@ -115,20 +125,20 @@ var methods = { ...@@ -115,20 +125,20 @@ var methods = {
) )
}, },
updateUserById: function(userData, callback) { updateUserById: function(userData, callback) {
dbconn.user.query('UPDATE user SET ? WHERE id = ' +userData.id, userData, function (err, rows, fields) { dbconn_OBSOLETE.user.query('UPDATE user SET ? WHERE id = ' +userData.id, userData, function (err, rows, fields) {
if (err) throw err if (err) throw err
callback(err) callback(err)
}) })
}, },
updateCredential: function(data, callback) { updateCredential: function(data, callback) {
dbconn.user.query('UPDATE credential SET ? WHERE user_id = ' +data.user_id, data, function (err, rows, fields) { dbconn_OBSOLETE.user.query('UPDATE credential SET ? WHERE user_id = ' +data.user_id, data, function (err, rows, fields) {
if (err) throw err if (err) throw err
callback(err) callback(err)
}) })
}, },
getUserIdByEmail: function(email, callback) { getUserIdByEmail: function(email, callback) {
let userId let userId
dbconn.user.query('SELECT id FROM user WHERE email = "' +email+'"', function (err, rows, fields) { dbconn_OBSOLETE.user.query('SELECT id FROM user WHERE email = "' +email+'"', function (err, rows, fields) {
if (err) { if (err) {
throw err throw err
} }
...@@ -141,20 +151,20 @@ var methods = { ...@@ -141,20 +151,20 @@ var methods = {
}); });
}, },
getUserProjectRole: function(userId, callback) { getUserProjectRole: function(userId, callback) {
dbconn.user.query('SELECT project_id, role_id FROM user_project_role WHERE user_id = "' +userId+'"', function (err, rows, fields) { dbconn_OBSOLETE.user.query('SELECT project_id, role_id FROM user_project_role WHERE user_id = "' +userId+'"', function (err, rows, fields) {
if (err) throw err if (err) throw err
callback(rows, err) callback(rows, err)
}); });
}, },
addUserProjectRole: function(data, callback) { addUserProjectRole: function(data, callback) {
dbconn.user.query('INSERT INTO user_project_role SET ?', data, function (err, results, fields){ dbconn_OBSOLETE.user.query('INSERT INTO user_project_role SET ?', data, function (err, results, fields){
if (err) throw err if (err) throw err
callback(err) callback(err)
}) })
}, },
getVerificationTokenByUserId: function(userId, callback) { getVerificationTokenByUserId: function(userId, callback) {
let token let token
dbconn.user.query('SELECT token FROM verification WHERE user_id = "' +userId+'"', function (err, rows, fields) { dbconn_OBSOLETE.user.query('SELECT token FROM verification WHERE user_id = "' +userId+'"', function (err, rows, fields) {
if (err) { if (err) {
throw err throw err
} }
...@@ -168,7 +178,7 @@ var methods = { ...@@ -168,7 +178,7 @@ var methods = {
}, },
getUserIdByVerificationToken: function(token, callback) { getUserIdByVerificationToken: function(token, callback) {
let userId let userId
dbconn.user.query('SELECT user_id FROM verification WHERE token = "' +token+'"', function (err, rows, fields) { dbconn_OBSOLETE.user.query('SELECT user_id FROM verification WHERE token = "' +token+'"', function (err, rows, fields) {
if (err) { if (err) {
throw err throw err
} }
...@@ -179,22 +189,22 @@ var methods = { ...@@ -179,22 +189,22 @@ var methods = {
}) })
}, },
verifyUserAccount: function(userData, callback) { verifyUserAccount: function(userData, callback) {
dbconn.user.beginTransaction(function(err) { // START TRANSACTION dbconn_OBSOLETE.user.beginTransaction(function(err) { // START TRANSACTION
if (err) { throw err } if (err) { throw err }
// update user status // update user status
dbconn.user.query('UPDATE user SET ? WHERE id =' +userData.id, userData, function (err, rows, fields) { dbconn_OBSOLETE.user.query('UPDATE user SET ? WHERE id =' +userData.id, userData, function (err, rows, fields) {
if (err) { if (err) {
return dbconn.user.rollback(function() { throw err }) return dbconn_OBSOLETE.user.rollback(function() { throw err })
} }
// delete verification token // delete verification token
dbconn.user.query('DELETE FROM verification WHERE user_id = '+userData.id, function (err, rows, fields) { dbconn_OBSOLETE.user.query('DELETE FROM verification WHERE user_id = '+userData.id, function (err, rows, fields) {
if (err) { if (err) {
return dbconn.user.rollback(function() { throw err }) return dbconn_OBSOLETE.user.rollback(function() { throw err })
} }
// COMMIT // COMMIT
dbconn.user.commit(function(err) { dbconn_OBSOLETE.user.commit(function(err) {
if (err) { if (err) {
return dbconn.user.rollback(function() { throw err }) return dbconn_OBSOLETE.user.rollback(function() { throw err })
} }
}) })
}) })
...@@ -203,9 +213,9 @@ var methods = { ...@@ -203,9 +213,9 @@ var methods = {
}) })
}, },
/* ===== GitLab ===== */ /* ===== GitLab ===== */
getGitlabId: function(userId, callback){ getGitlabId_OBSOLETE: function(userId, callback){
let gitlabUserId let gitlabUserId
dbconn.user.query('SELECT gu.gitlab_userId FROM user_gitlab gu, user u WHERE u.id = "' +userId+'" and gu.user_id = u.id', function (err, rows) { dbconn_OBSOLETE.user.query('SELECT gu.gitlab_userId FROM user_gitlab gu, user u WHERE u.id = "' +userId+'" and gu.user_id = u.id', function (err, rows) {
if (err) { if (err) {
throw err throw err
} }
...@@ -215,8 +225,18 @@ var methods = { ...@@ -215,8 +225,18 @@ var methods = {
callback(gitlabUserId, err) callback(gitlabUserId, err)
}) })
}, },
getGitlabId: async function(userId) {
try {
let rows = await dbconn.user.promise().query('SELECT gu.gitlab_userId FROM user_gitlab gu, user u WHERE u.id = "' +userId+'" and gu.user_id = u.id')
return rows[0][0].gitlab_userId
}
catch(err) {
console.error(err)
return err
}
},
addGitlabUser: function(data, callback){ addGitlabUser: function(data, callback){
dbconn.user.query('INSERT INTO user_gitlab SET ?', data, function (err) { dbconn_OBSOLETE.user.query('INSERT INTO user_gitlab SET ?', data, function (err) {
if (err) throw err if (err) throw err
callback(err) callback(err)
}) })
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment