aboutsummaryrefslogtreecommitdiff
path: root/src/components/user_card_content/user_card_content.js
diff options
context:
space:
mode:
authoreal <eal@waifu.club>2017-12-23 19:52:16 +0200
committereal <eal@waifu.club>2017-12-23 19:52:16 +0200
commitb67c50606250d2c2d4b3750affdbab6525872f2a (patch)
treebb45758ecab1ef87976c07d37b6936a3531e2b13 /src/components/user_card_content/user_card_content.js
parent581e3e836ad6c8a9a211eb09d7eaa1fbaf830da2 (diff)
parent6fd309452a1d8243257bc8544429ea53a26ce8a4 (diff)
Merge branch 'develop' into feature/normal-emoji-completion
Diffstat (limited to 'src/components/user_card_content/user_card_content.js')
-rw-r--r--src/components/user_card_content/user_card_content.js64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/components/user_card_content/user_card_content.js b/src/components/user_card_content/user_card_content.js
new file mode 100644
index 00000000..6e67a321
--- /dev/null
+++ b/src/components/user_card_content/user_card_content.js
@@ -0,0 +1,64 @@
+import { hex2rgb } from '../../services/color_convert/color_convert.js'
+
+export default {
+ props: [ 'user', 'switcher' ],
+ computed: {
+ headingStyle () {
+ const color = this.$store.state.config.colors['base00']
+ if (color) {
+ const rgb = hex2rgb(color)
+ console.log(rgb)
+ return {
+ backgroundColor: `rgb(${Math.floor(rgb[0] * 0.53)}, ${Math.floor(rgb[1] * 0.56)}, ${Math.floor(rgb[2] * 0.59)})`,
+ backgroundImage: `url(${this.user.cover_photo})`
+ }
+ }
+ },
+ bodyStyle () {
+ return {
+ background: `linear-gradient(to bottom, rgba(0, 0, 0, 0), ${this.$store.state.config.colors['base00']} 80%)`
+ }
+ },
+ isOtherUser () {
+ return this.user.id !== this.$store.state.users.currentUser.id
+ },
+ loggedIn () {
+ return this.$store.state.users.currentUser
+ },
+ dailyAvg () {
+ const days = Math.ceil((new Date() - new Date(this.user.created_at)) / (60 * 60 * 24 * 1000))
+ return Math.round(this.user.statuses_count / days)
+ }
+ },
+ methods: {
+ followUser () {
+ const store = this.$store
+ store.state.api.backendInteractor.followUser(this.user.id)
+ .then((followedUser) => store.commit('addNewUsers', [followedUser]))
+ },
+ unfollowUser () {
+ const store = this.$store
+ store.state.api.backendInteractor.unfollowUser(this.user.id)
+ .then((unfollowedUser) => store.commit('addNewUsers', [unfollowedUser]))
+ },
+ blockUser () {
+ const store = this.$store
+ store.state.api.backendInteractor.blockUser(this.user.id)
+ .then((blockedUser) => store.commit('addNewUsers', [blockedUser]))
+ },
+ unblockUser () {
+ const store = this.$store
+ store.state.api.backendInteractor.unblockUser(this.user.id)
+ .then((unblockedUser) => store.commit('addNewUsers', [unblockedUser]))
+ },
+ toggleMute () {
+ const store = this.$store
+ store.commit('setMuted', {user: this.user, muted: !this.user.muted})
+ store.state.api.backendInteractor.setUserMute(this.user)
+ },
+ setProfileView (v) {
+ const store = this.$store
+ store.commit('setProfileView', { v })
+ }
+ }
+}