summaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/api/endpoints/i/update.ts15
-rw-r--r--src/server/web/index.ts10
-rw-r--r--src/server/web/views/base.pug1
-rw-r--r--src/server/web/views/user.pug5
4 files changed, 29 insertions, 2 deletions
diff --git a/src/server/api/endpoints/i/update.ts b/src/server/api/endpoints/i/update.ts
index a454cdb940..149081e50b 100644
--- a/src/server/api/endpoints/i/update.ts
+++ b/src/server/api/endpoints/i/update.ts
@@ -77,6 +77,13 @@ export const meta = {
}
},
+ fields: {
+ validator: $.optional.arr($.object()).range(1, 4),
+ desc: {
+ 'ja-JP': 'プロフィール補足情報'
+ }
+ },
+
isLocked: {
validator: $.optional.bool,
desc: {
@@ -226,6 +233,14 @@ export default define(meta, async (ps, user, app) => {
profileUpdates.pinnedPageId = null;
}
+ if (ps.fields) {
+ profileUpdates.fields = ps.fields
+ .filter(x => typeof x.name === 'string' && x.name !== '' && typeof x.value === 'string' && x.value !== '')
+ .map(x => {
+ return { name: x.name, value: x.value };
+ });
+ }
+
//#region emojis/tags
let emojis = [] as string[];
diff --git a/src/server/web/index.ts b/src/server/web/index.ts
index 8cf6a75208..6c41bbde46 100644
--- a/src/server/web/index.ts
+++ b/src/server/web/index.ts
@@ -156,11 +156,17 @@ router.get('/@:user', async (ctx, next) => {
if (user != null) {
const profile = await UserProfiles.findOne(user.id).then(ensure);
const meta = await fetchMeta();
+ const me = profile.fields
+ ? profile.fields
+ .filter(filed => filed.value != null && filed.value.match(/^https?:/))
+ .map(field => field.value)
+ : [];
+
await ctx.render('user', {
- user, profile,
+ user, profile, me,
instanceName: meta.name || 'Misskey'
});
- ctx.set('Cache-Control', 'public, max-age=180');
+ ctx.set('Cache-Control', 'public, max-age=30');
} else {
// リモートユーザーなので
await next();
diff --git a/src/server/web/views/base.pug b/src/server/web/views/base.pug
index 733a306d56..16bea853e7 100644
--- a/src/server/web/views/base.pug
+++ b/src/server/web/views/base.pug
@@ -44,3 +44,4 @@ html
<svg viewBox="0 0 50 50">
<path fill=#fb4e4e d="M25.251,6.461c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615V6.461z" />
</svg>
+ block content
diff --git a/src/server/web/views/user.pug b/src/server/web/views/user.pug
index 9b257afb7b..6ff86b09be 100644
--- a/src/server/web/views/user.pug
+++ b/src/server/web/views/user.pug
@@ -36,3 +36,8 @@ block meta
link(rel='alternate' href=user.uri type='application/activity+json')
if profile.url
link(rel='alternate' href=profile.url type='text/html')
+
+block content
+ div#me
+ each m in me
+ a(rel='me' href=`${m}`) #{m}