mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2025-05-13 22:54:42 -04:00
Support show last change user with profile and support YAML config inside the note with robots, lang, dir, breaks options
This commit is contained in:
parent
1672df3dce
commit
2ecec3b59a
18 changed files with 546 additions and 167 deletions
34
lib/user.js
34
lib/user.js
|
@ -1,6 +1,7 @@
|
|||
//user
|
||||
//external modules
|
||||
var mongoose = require('mongoose');
|
||||
var md5 = require("blueimp-md5").md5;
|
||||
|
||||
//core
|
||||
var config = require("../config.js");
|
||||
|
@ -20,9 +21,30 @@ var user = {
|
|||
findUser: findUser,
|
||||
newUser: newUser,
|
||||
findOrNewUser: findOrNewUser,
|
||||
getUserCount: getUserCount
|
||||
getUserCount: getUserCount,
|
||||
parsePhotoByProfile: parsePhotoByProfile
|
||||
};
|
||||
|
||||
function parsePhotoByProfile(profile) {
|
||||
var photo = null;
|
||||
switch (profile.provider) {
|
||||
case "facebook":
|
||||
photo = 'https://graph.facebook.com/' + profile.id + '/picture';
|
||||
break;
|
||||
case "twitter":
|
||||
photo = profile.photos[0].value;
|
||||
break;
|
||||
case "github":
|
||||
photo = 'https://avatars.githubusercontent.com/u/' + profile.id + '?s=48';
|
||||
break;
|
||||
case "dropbox":
|
||||
//no image api provided, use gravatar
|
||||
photo = 'https://www.gravatar.com/avatar/' + md5(profile.emails[0].value);
|
||||
break;
|
||||
}
|
||||
return photo;
|
||||
}
|
||||
|
||||
function getUserCount(callback) {
|
||||
model.count(function(err, count){
|
||||
if(err) callback(err, null);
|
||||
|
@ -31,9 +53,13 @@ function getUserCount(callback) {
|
|||
}
|
||||
|
||||
function findUser(id, callback) {
|
||||
model.findOne({
|
||||
id: id
|
||||
}, function (err, user) {
|
||||
var rule = {};
|
||||
var checkForHexRegExp = new RegExp("^[0-9a-fA-F]{24}$");
|
||||
if (checkForHexRegExp.test(id))
|
||||
rule._id = id;
|
||||
else
|
||||
rule.id = id;
|
||||
model.findOne(rule, function (err, user) {
|
||||
if (err) {
|
||||
logger.error('find user failed: ' + err);
|
||||
callback(err, null);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue