diff --git a/.vscode/settings.json b/.vscode/settings.json index 0808cb54..843758fc 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,8 +1,8 @@ { "eslint.enable": true, - "eslint.autoFixOnSave": false, + "eslint.autoFixOnSave": true, "puglint.enable": true, "standard.enable": false, - "editor.formatOnSave": true, + "editor.formatOnSave": false, "editor.tabSize": 2 } diff --git a/server/libs/auth.js b/server/libs/auth.js index ab4de309..34271ccc 100644 --- a/server/libs/auth.js +++ b/server/libs/auth.js @@ -32,8 +32,7 @@ module.exports = function (passport) { new LocalStrategy({ usernameField: 'email', passwordField: 'password' - }, - (uEmail, uPassword, done) => { + }, (uEmail, uPassword, done) => { db.User.findOne({ email: uEmail, provider: 'local' }).then((user) => { if (user) { return user.validatePassword(uPassword).then(() => { @@ -48,7 +47,7 @@ module.exports = function (passport) { done(err, null) }) } - )) + )) } // Google ID @@ -60,15 +59,14 @@ module.exports = function (passport) { clientID: appconfig.auth.google.clientId, clientSecret: appconfig.auth.google.clientSecret, callbackURL: appconfig.host + '/login/google/callback' - }, - (accessToken, refreshToken, profile, cb) => { + }, (accessToken, refreshToken, profile, cb) => { db.User.processProfile(profile).then((user) => { return cb(null, user) || true }).catch((err) => { return cb(err, null) || true }) } - )) + )) } // Microsoft Accounts @@ -80,15 +78,14 @@ module.exports = function (passport) { clientID: appconfig.auth.microsoft.clientId, clientSecret: appconfig.auth.microsoft.clientSecret, callbackURL: appconfig.host + '/login/ms/callback' - }, - function (accessToken, refreshToken, profile, cb) { + }, function (accessToken, refreshToken, profile, cb) { db.User.processProfile(profile).then((user) => { return cb(null, user) || true }).catch((err) => { return cb(err, null) || true }) } - )) + )) } // Facebook @@ -101,15 +98,14 @@ module.exports = function (passport) { clientSecret: appconfig.auth.facebook.clientSecret, callbackURL: appconfig.host + '/login/facebook/callback', profileFields: ['id', 'displayName', 'email'] - }, - function (accessToken, refreshToken, profile, cb) { + }, function (accessToken, refreshToken, profile, cb) { db.User.processProfile(profile).then((user) => { return cb(null, user) || true }).catch((err) => { return cb(err, null) || true }) } - )) + )) } // GitHub @@ -121,16 +117,15 @@ module.exports = function (passport) { clientID: appconfig.auth.github.clientId, clientSecret: appconfig.auth.github.clientSecret, callbackURL: appconfig.host + '/login/github/callback', - scope: [ 'user:email' ] - }, - (accessToken, refreshToken, profile, cb) => { + scope: ['user:email'] + }, (accessToken, refreshToken, profile, cb) => { db.User.processProfile(profile).then((user) => { return cb(null, user) || true }).catch((err) => { return cb(err, null) || true }) } - )) + )) } // Slack @@ -142,15 +137,14 @@ module.exports = function (passport) { clientID: appconfig.auth.slack.clientId, clientSecret: appconfig.auth.slack.clientSecret, callbackURL: appconfig.host + '/login/slack/callback' - }, - (accessToken, refreshToken, profile, cb) => { + }, (accessToken, refreshToken, profile, cb) => { db.User.processProfile(profile).then((user) => { return cb(null, user) || true }).catch((err) => { return cb(err, null) || true }) } - )) + )) } // LDAP @@ -174,8 +168,7 @@ module.exports = function (passport) { }, usernameField: 'email', passReqToCallback: false - }, - (profile, cb) => { + }, (profile, cb) => { profile.provider = 'ldap' profile.id = profile.dn db.User.processProfile(profile).then((user) => { @@ -184,7 +177,7 @@ module.exports = function (passport) { return cb(err, null) || true }) } - )) + )) } // AZURE AD @@ -199,8 +192,7 @@ module.exports = function (passport) { callbackURL: appconfig.host + '/login/azure/callback', resource: appconfig.auth.azure.resource, tenant: appconfig.auth.azure.tenant - }, - (accessToken, refreshToken, params, profile, cb) => { + }, (accessToken, refreshToken, params, profile, cb) => { let waadProfile = jwt.decode(params.id_token) waadProfile.id = waadProfile.oid waadProfile.provider = 'azure' @@ -210,7 +202,7 @@ module.exports = function (passport) { return cb(err, null) || true }) } - )) + )) } // Create users for first-time diff --git a/server/libs/db.js b/server/libs/db.js index 3afc617d..9169b06a 100644 --- a/server/libs/db.js +++ b/server/libs/db.js @@ -19,7 +19,7 @@ module.exports = { * * @return {Object} DB instance */ - init () { + init() { let self = this let dbModelsPath = path.join(SERVERPATH, 'models') @@ -44,14 +44,14 @@ module.exports = { // Load DB Models fs - .readdirSync(dbModelsPath) - .filter(function (file) { - return (file.indexOf('.') !== 0) - }) - .forEach(function (file) { - let modelName = _.upperFirst(_.camelCase(_.split(file, '.')[0])) - self[modelName] = require(path.join(dbModelsPath, file)) - }) + .readdirSync(dbModelsPath) + .filter(function (file) { + return (file.indexOf('.') !== 0) + }) + .forEach(function (file) { + let modelName = _.upperFirst(_.camelCase(_.split(file, '.')[0])) + self[modelName] = require(path.join(dbModelsPath, file)) + }) // Connect diff --git a/server/libs/entries.js b/server/libs/entries.js index fbcca668..e4aa79be 100644 --- a/server/libs/entries.js +++ b/server/libs/entries.js @@ -260,21 +260,21 @@ module.exports = { return db.Entry.findOneAndUpdate({ _id: content.entryPath }, { - _id: content.entryPath, - title: content.meta.title || content.entryPath, - subtitle: content.meta.subtitle || '', - parentTitle: content.parent.title || '', - parentPath: parentPath, - isDirectory: false, - isEntry: true - }, { - new: true, - upsert: true - }).then(result => { - let plainResult = result.toObject() - plainResult.text = content.text - return plainResult - }) + _id: content.entryPath, + title: content.meta.title || content.entryPath, + subtitle: content.meta.subtitle || '', + parentTitle: content.parent.title || '', + parentPath: parentPath, + isDirectory: false, + isEntry: true + }, { + new: true, + upsert: true + }).then(result => { + let plainResult = result.toObject() + plainResult.text = content.text + return plainResult + }) }).then(result => { return self.updateTreeInfo().then(() => { return result diff --git a/server/libs/search-index/index.js b/server/libs/search-index/index.js index 46e12e97..807219d9 100644 --- a/server/libs/search-index/index.js +++ b/server/libs/search-index/index.js @@ -29,7 +29,7 @@ module.exports = function (givenOptions, moduleReady) { const getAdder = function (SearchIndex, done) { SearchIndexAdder(SearchIndex.options, function (err, searchIndexAdder) { SearchIndex.add = searchIndexAdder.add - SearchIndex.callbackyAdd = searchIndexAdder.concurrentAdd // deprecated + SearchIndex.callbackyAdd = searchIndexAdder.concurrentAdd // deprecated SearchIndex.concurrentAdd = searchIndexAdder.concurrentAdd SearchIndex.createWriteStream = searchIndexAdder.createWriteStream SearchIndex.dbWriteStream = searchIndexAdder.dbWriteStream diff --git a/server/libs/search.js b/server/libs/search.js index ff1b6e80..f6ee33c4 100644 --- a/server/libs/search.js +++ b/server/libs/search.js @@ -157,15 +157,15 @@ module.exports = { find (terms) { let self = this terms = _.chain(terms) - .deburr() - .toLower() - .trim() - .replace(/[^a-z0-9 ]/g, ' ') - .value() + .deburr() + .toLower() + .trim() + .replace(/[^a-z0-9 ]/g, ' ') + .value() let arrTerms = _.chain(terms) - .split(' ') - .filter((f) => { return !_.isEmpty(f) }) - .value() + .split(' ') + .filter((f) => { return !_.isEmpty(f) }) + .value() return streamToPromise(self._si.search({ query: [{ diff --git a/server/libs/system.js b/server/libs/system.js index 7542b2a6..8cf4dfcc 100644 --- a/server/libs/system.js +++ b/server/libs/system.js @@ -46,21 +46,21 @@ module.exports = { winston.info('[SERVER.System] Install tarball found. Downloading...') resp.pipe(zlib.createGunzip()) - .pipe(tar.Extract({ path: self._installDir })) - .on('error', err => reject(err)) - .on('end', () => { - winston.info('[SERVER.System] Tarball extracted. Comparing files...') - /** - * Replace old files - */ - klaw(self._installDir) + .pipe(tar.Extract({ path: self._installDir })) .on('error', err => reject(err)) .on('end', () => { - winston.info('[SERVER.System] All files were updated successfully.') - resolve(true) + winston.info('[SERVER.System] Tarball extracted. Comparing files...') + /** + * Replace old files + */ + klaw(self._installDir) + .on('error', err => reject(err)) + .on('end', () => { + winston.info('[SERVER.System] All files were updated successfully.') + resolve(true) + }) + .pipe(self.replaceFile()) }) - .pipe(self.replaceFile()) - }) }) }) }).then(() => { @@ -119,12 +119,12 @@ module.exports = { let hash = crypto.createHash('sha1') hash.setEncoding('hex') fs.createReadStream(filePath) - .on('error', err => { reject(err) }) - .on('end', () => { - hash.end() - resolve(hash.read()) - }) - .pipe(hash) + .on('error', err => { reject(err) }) + .on('end', () => { + hash.end() + resolve(hash.read()) + }) + .pipe(hash) }).catch(err => { if (err.code === 'ENOENT') { return '0' diff --git a/server/libs/uploads-agent.js b/server/libs/uploads-agent.js index d8e9fe3e..a8ae79ec 100644 --- a/server/libs/uploads-agent.js +++ b/server/libs/uploads-agent.js @@ -234,8 +234,8 @@ module.exports = { generateThumbnail (sourcePath, destPath) { return jimp.read(sourcePath).then(img => { return img - .contain(150, 150) - .write(destPath) + .contain(150, 150) + .write(destPath) }) },