mirror of
https://git.joinsharkey.org/Sharkey/Sharkey.git
synced 2024-11-23 18:33:09 +02:00
✌️
This commit is contained in:
parent
e63f884bc6
commit
6d49edc0ab
3 changed files with 11 additions and 7 deletions
|
@ -2,12 +2,17 @@ import { toUnicode, toASCII } from 'punycode';
|
|||
import User from '../models/user';
|
||||
import resolvePerson from './activitypub/resolve-person';
|
||||
import webFinger from './webfinger';
|
||||
import config from '../config';
|
||||
|
||||
export default async (username, host, option) => {
|
||||
const usernameLower = username.toLowerCase();
|
||||
const hostLowerAscii = toASCII(host).toLowerCase();
|
||||
const hostLower = toUnicode(hostLowerAscii);
|
||||
|
||||
if (config.host == hostLower) {
|
||||
return await User.findOne({ usernameLower });
|
||||
}
|
||||
|
||||
let user = await User.findOne({ usernameLower, hostLower }, option);
|
||||
|
||||
if (user === null) {
|
||||
|
|
|
@ -9,10 +9,6 @@ const cursorOption = { fields: { data: false } };
|
|||
|
||||
/**
|
||||
* Show a user
|
||||
*
|
||||
* @param {any} params
|
||||
* @param {any} me
|
||||
* @return {Promise<any>}
|
||||
*/
|
||||
module.exports = (params, me) => new Promise(async (res, rej) => {
|
||||
let user;
|
||||
|
|
|
@ -4,9 +4,9 @@ import config from '../config';
|
|||
import parseAcct from '../acct/parse';
|
||||
import User from '../models/user';
|
||||
|
||||
const app = express();
|
||||
const app = express.Router();
|
||||
|
||||
app.get('/.well-known/webfinger', async (req: express.Request, res: express.Response) => {
|
||||
app.get('/.well-known/webfinger', async (req, res) => {
|
||||
if (typeof req.query.resource !== 'string') {
|
||||
return res.sendStatus(400);
|
||||
}
|
||||
|
@ -38,11 +38,14 @@ app.get('/.well-known/webfinger', async (req: express.Request, res: express.Resp
|
|||
links: [{
|
||||
rel: 'self',
|
||||
type: 'application/activity+json',
|
||||
href: `${config.url}/@${user.username}`
|
||||
href: `${config.url}/users/${user._id}`
|
||||
}, {
|
||||
rel: 'http://webfinger.net/rel/profile-page',
|
||||
type: 'text/html',
|
||||
href: `${config.url}/@${user.username}`
|
||||
}, {
|
||||
rel: 'http://ostatus.org/schema/1.0/subscribe',
|
||||
template: `${config.url}/authorize-follow?acct={uri}`
|
||||
}]
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue