summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-02-22 12:43:15 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-02-22 12:43:15 +0900
commitf2c5dc468c9bdb86e096565e9306f53eb1876ce0 (patch)
tree375cc71cb5d538541f8c9db8b80a615556a4d233 /src
parentClean up :sparkles: (diff)
downloadsharkey-f2c5dc468c9bdb86e096565e9306f53eb1876ce0.tar.gz
sharkey-f2c5dc468c9bdb86e096565e9306f53eb1876ce0.tar.bz2
sharkey-f2c5dc468c9bdb86e096565e9306f53eb1876ce0.zip
Extract user's profile
Diffstat (limited to 'src')
-rw-r--r--src/api/endpoints/i/update.js24
-rw-r--r--src/api/private/signup.ts16
-rw-r--r--src/web/app/desktop/tags/list-user.tag50
-rw-r--r--src/web/app/desktop/tags/user-header.tag2
-rw-r--r--src/web/app/desktop/tags/user-preview.tag4
-rw-r--r--src/web/app/desktop/tags/user-profile.tag8
-rw-r--r--src/web/app/mobile/tags/user-preview.tag14
-rw-r--r--src/web/app/mobile/tags/user.tag12
8 files changed, 68 insertions, 62 deletions
diff --git a/src/api/endpoints/i/update.js b/src/api/endpoints/i/update.js
index 13b5c523e0..5aeafa60c8 100644
--- a/src/api/endpoints/i/update.js
+++ b/src/api/endpoints/i/update.js
@@ -39,7 +39,7 @@ module.exports = async (params, user, _, isSecure) =>
return rej('too long location');
}
- user.location = location;
+ user.profile.location = location;
}
// Get 'bio' parameter
@@ -49,21 +49,19 @@ module.exports = async (params, user, _, isSecure) =>
return rej('too long bio');
}
- user.bio = bio;
+ user.profile.bio = bio;
}
// Get 'birthday' parameter
const birthday = params.birthday;
if (birthday != null) {
- if (birthday != '') {
- if (!isValidBirthday(birthday)) {
- return rej('invalid birthday');
- }
-
- user.birthday = birthday;
- } else {
- user.birthday = null;
+ if (!isValidBirthday(birthday)) {
+ return rej('invalid birthday');
}
+
+ user.profile.birthday = birthday;
+ } else {
+ user.profile.birthday = null;
}
// Get 'avatar_id' parameter
@@ -81,11 +79,9 @@ module.exports = async (params, user, _, isSecure) =>
await User.update(user._id, {
$set: {
name: user.name,
- location: user.location,
- bio: user.bio,
- birthday: user.birthday,
avatar_id: user.avatar_id,
- banner_id: user.banner_id
+ banner_id: user.banner_id,
+ profile: user.profile
}
});
diff --git a/src/api/private/signup.ts b/src/api/private/signup.ts
index 2b679b914c..73e04f8b37 100644
--- a/src/api/private/signup.ts
+++ b/src/api/private/signup.ts
@@ -65,14 +65,12 @@ export default async (req: express.Request, res: express.Response) => {
token: secret,
avatar_id: null,
banner_id: null,
- birthday: null,
created_at: new Date(),
- bio: null,
+ description: null,
email: null,
followers_count: 0,
following_count: 0,
links: null,
- location: null,
name: name,
password: hash,
posts_count: 0,
@@ -80,7 +78,17 @@ export default async (req: express.Request, res: express.Response) => {
liked_count: 0,
drive_capacity: 1073741824, // 1GB
username: username,
- username_lower: username.toLowerCase()
+ username_lower: username.toLowerCase(),
+ profile: {
+ bio: null,
+ birthday: null,
+ blood: null,
+ gender: null,
+ handedness: null,
+ height: null,
+ location: null,
+ weight: null
+ }
});
// Response
diff --git a/src/web/app/desktop/tags/list-user.tag b/src/web/app/desktop/tags/list-user.tag
index 133efd2d1e..e709d8d708 100644
--- a/src/web/app/desktop/tags/list-user.tag
+++ b/src/web/app/desktop/tags/list-user.tag
@@ -1,11 +1,15 @@
-<mk-list-user><a class="avatar-anchor" href={ CONFIG.url + '/' + user.username }><img class="avatar" src={ user.avatar_url + '?thumbnail&size=64' } alt="avatar"/></a>
+<mk-list-user>
+ <a class="avatar-anchor" href={ CONFIG.url + '/' + user.username }>
+ <img class="avatar" src={ user.avatar_url + '?thumbnail&size=64' } alt="avatar"/>
+ </a>
<div class="main">
<header>
- <div class="left"><a class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</a><span class="username">@{ user.username }</span></div>
+ <a class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</a>
+ <span class="username">@{ user.username }</span>
</header>
<div class="body">
<p class="followed" if={ user.is_followed }>フォローされています</p>
- <div class="bio">{ user.bio }</div>
+ <div class="description">{ user.description }</div>
</div>
</div>
<mk-follow-button user={ user }></mk-follow-button>
@@ -41,31 +45,23 @@
> header
margin-bottom 2px
- &:after
- content ""
- display block
- clear both
-
- > .left
- float left
-
- > .name
- display inline
- margin 0
- padding 0
- color #777
- font-size 1em
- font-weight 700
- text-align left
- text-decoration none
+ > .name
+ display inline
+ margin 0
+ padding 0
+ color #777
+ font-size 1em
+ font-weight 700
+ text-align left
+ text-decoration none
- &:hover
- text-decoration underline
+ &:hover
+ text-decoration underline
- > .username
- text-align left
- margin 0 0 0 8px
- color #ccc
+ > .username
+ text-align left
+ margin 0 0 0 8px
+ color #ccc
> .body
> .followed
@@ -78,7 +74,7 @@
background #eefaff
border-radius 4px
- > .bio
+ > .description
cursor default
display block
margin 0
diff --git a/src/web/app/desktop/tags/user-header.tag b/src/web/app/desktop/tags/user-header.tag
index c265357169..c7ebaff446 100644
--- a/src/web/app/desktop/tags/user-header.tag
+++ b/src/web/app/desktop/tags/user-header.tag
@@ -3,7 +3,7 @@
<div class="title">
<p class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</p>
<p class="username">@{ user.username }</p>
- <p class="location" if={ user.location }><i class="fa fa-map-marker"></i>{ user.location }</p>
+ <p class="location" if={ user.profile.location }><i class="fa fa-map-marker"></i>{ user.profile.location }</p>
</div>
<footer><a href={ '/' + user.username }>投稿</a><a href={ '/' + user.username + '/media' }>メディア</a><a href={ '/' + user.username + '/graphs' }>グラフ</a>
<button onclick={ NotImplementedException }><i class="fa fa-ellipsis-h"></i></button>
diff --git a/src/web/app/desktop/tags/user-preview.tag b/src/web/app/desktop/tags/user-preview.tag
index f9806534e2..be5501ede3 100644
--- a/src/web/app/desktop/tags/user-preview.tag
+++ b/src/web/app/desktop/tags/user-preview.tag
@@ -5,7 +5,7 @@
<p class="name">{ user.name }</p>
<p class="username">@{ user.username }</p>
</div>
- <div class="bio">{ user.bio }</div>
+ <div class="description">{ user.description }</div>
<div class="status">
<div>
<p>投稿</p><a>{ user.posts_count }</a>
@@ -69,7 +69,7 @@
font-size 0.8em
color #999
- > .bio
+ > .description
padding 0 16px
font-size 0.7em
color #555
diff --git a/src/web/app/desktop/tags/user-profile.tag b/src/web/app/desktop/tags/user-profile.tag
index 03697fd5f3..e6def9ffa8 100644
--- a/src/web/app/desktop/tags/user-profile.tag
+++ b/src/web/app/desktop/tags/user-profile.tag
@@ -3,9 +3,9 @@
<mk-big-follow-button user={ user }></mk-big-follow-button>
<p class="followed" if={ user.is_followed }>フォローされています</p>
</div>
- <div class="bio" if={ user.bio != '' }>{ user.bio }</div>
- <div class="birthday" if={ user.birthday }>
- <p><i class="fa fa-birthday-cake"></i>{ user.birthday.replace('-', '年').replace('-', '月') + '日' } ({ age(user.birthday) }歳)</p>
+ <div class="description" if={ user.description }>{ user.description }</div>
+ <div class="birthday" if={ user.profile.birthday }>
+ <p><i class="fa fa-birthday-cake"></i>{ user.profile.birthday.replace('-', '年').replace('-', '月') + '日' } ({ age(user.profile.birthday) }歳)</p>
</div>
<div class="twitter" if={ user.twitter }>
<p><i class="fa fa-twitter"></i><a href={ 'https://twitter.com/' + user.twitter.screen_name } target="_blank">@{ user.twitter.screen_name }</a></p>
@@ -39,7 +39,7 @@
background #eefaff
border-radius 4px
- > .bio
+ > .description
padding 16px
color #555
border-top solid 1px #eee
diff --git a/src/web/app/mobile/tags/user-preview.tag b/src/web/app/mobile/tags/user-preview.tag
index 09cfeb49e7..eae4d610d8 100644
--- a/src/web/app/mobile/tags/user-preview.tag
+++ b/src/web/app/mobile/tags/user-preview.tag
@@ -1,8 +1,14 @@
-<mk-user-preview><a class="avatar-anchor" href={ CONFIG.url + '/' + user.username }><img class="avatar" src={ user.avatar_url + '?thumbnail&size=64' } alt="avatar"/></a>
+<mk-user-preview>
+ <a class="avatar-anchor" href={ CONFIG.url + '/' + user.username }>
+ <img class="avatar" src={ user.avatar_url + '?thumbnail&size=64' } alt="avatar"/>
+ </a>
<div class="main">
- <header><a class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</a><span class="username">@{ user.username }</span></header>
+ <header>
+ <a class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</a>
+ <span class="username">@{ user.username }</span>
+ </header>
<div class="body">
- <div class="bio">{ user.bio }</div>
+ <div class="description">{ user.description }</div>
</div>
</div>
<style>
@@ -75,7 +81,7 @@
> .body
- > .bio
+ > .description
cursor default
display block
margin 0
diff --git a/src/web/app/mobile/tags/user.tag b/src/web/app/mobile/tags/user.tag
index 9d95e99144..ae77644e7a 100644
--- a/src/web/app/mobile/tags/user.tag
+++ b/src/web/app/mobile/tags/user.tag
@@ -14,13 +14,13 @@
<span class="username">@{ user.username }</span>
<span class="followed" if={ user.is_followed }>フォローされています</span>
</div>
- <div class="bio">{ user.bio }</div>
+ <div class="description">{ user.description }</div>
<div class="info">
- <p class="location" if={ user.location }>
- <i class="fa fa-map-marker"></i>{ user.location }
+ <p class="location" if={ user.profile.location }>
+ <i class="fa fa-map-marker"></i>{ user.profile.location }
</p>
- <p class="birthday" if={ user.birthday }>
- <i class="fa fa-birthday-cake"></i>{ user.birthday.replace('-', '年').replace('-', '月') + '日' } ({ age(user.birthday) }歳)
+ <p class="birthday" if={ user.profile.birthday }>
+ <i class="fa fa-birthday-cake"></i>{ user.profile.birthday.replace('-', '年').replace('-', '月') + '日' } ({ age(user.profile.birthday) }歳)
</p>
</div>
<div class="friends">
@@ -119,7 +119,7 @@
background #f8f8f8
border-radius 4px
- > .bio
+ > .description
margin 8px 0
color #333