diff --git a/src/components/notification/notification.vue b/src/components/notification/notification.vue index fa931fb6..e5876cfa 100644 --- a/src/components/notification/notification.vue +++ b/src/components/notification/notification.vue @@ -1,20 +1,20 @@ <template> <status - v-if="notification.type === 'mention'" - :compact="true" + v-if="notification.type === 'mention'" + :compact="true" :statusoid="notification.status" > </status> <div class="non-mention" :class="[userClass, { highlighted: userStyle }]" :style="[ userStyle ]"v-else> - <a class='avatar-container' :href="notification.action.user.statusnet_profile_url" @click.stop.prevent.capture="toggleUserExpanded"> - <UserAvatar :compact="true" :betterShadow="betterShadow" :src="notification.action.user.profile_image_url_original"/> + <a class='avatar-container' :href="notification.from_profile.statusnet_profile_url" @click.stop.prevent.capture="toggleUserExpanded"> + <UserAvatar :compact="true" :betterShadow="betterShadow" :src="notification.from_profile.profile_image_url_original" /> </a> <div class='notification-right'> - <UserCard :user="notification.action.user" :rounded="true" :bordered="true" v-if="userExpanded"/> + <UserCard :user="notification.from_profile" :rounded="true" :bordered="true" v-if="userExpanded" /> <span class="notification-details"> <div class="name-and-action"> - <span class="username" v-if="!!notification.action.user.name_html" :title="'@'+notification.action.user.screen_name" v-html="notification.action.user.name_html"></span> - <span class="username" v-else :title="'@'+notification.action.user.screen_name">{{ notification.action.user.name }}</span> + <span class="username" v-if="!!notification.from_profile.name_html" :title="'@'+notification.from_profile.screen_name" v-html="notification.from_profile.name_html"></span> + <span class="username" v-else :title="'@'+notification.from_profile.screen_name">{{ notification.from_profile.name }}</span> <span v-if="notification.type === 'like'"> <i class="fa icon-star lit"></i> <small>{{$t('notifications.favorited_you')}}</small> @@ -30,22 +30,22 @@ </div> <div class="timeago" v-if="notification.type === 'follow'"> <span class="faint"> - <timeago :since="notification.action.created_at" :auto-update="240"></timeago> + <timeago :since="notification.created_at" :auto-update="240"></timeago> </span> </div> <div class="timeago" v-else> <router-link v-if="notification.status" :to="{ name: 'conversation', params: { id: notification.status.id } }" class="faint-link"> - <timeago :since="notification.action.created_at" :auto-update="240"></timeago> + <timeago :since="notification.created_at" :auto-update="240"></timeago> </router-link> </div> </span> <div class="follow-text" v-if="notification.type === 'follow'"> - <router-link :to="userProfileLink(notification.action.user)"> - @{{notification.action.user.screen_name}} + <router-link :to="userProfileLink(notification.from_profile)"> + @{{notification.from_profile.screen_name}} </router-link> </div> <template v-else> - <status class="faint" :compact="true" :statusoid="notification.status" :noHeading="true"></status> + <status class="faint" :compact="true" :statusoid="notification.action" :noHeading="true"></status> </template> </div> </div> diff --git a/src/modules/users.js b/src/modules/users.js index 1a507d31..2c525526 100644 --- a/src/modules/users.js +++ b/src/modules/users.js @@ -123,7 +123,7 @@ export const mutations = { }, setUserForNotification (state, notification) { notification.action.user = state.usersObject[notification.action.user.id] - notification.from_profile = state.usersObject[notification.action.user.id] + notification.from_profile = state.usersObject[notification.from_profile.id] }, setColor (state, { user: { id }, highlighted }) { const user = state.usersObject[id] diff --git a/src/services/entity_normalizer/entity_normalizer.service.js b/src/services/entity_normalizer/entity_normalizer.service.js index 9d00162f..8e3cb066 100644 --- a/src/services/entity_normalizer/entity_normalizer.service.js +++ b/src/services/entity_normalizer/entity_normalizer.service.js @@ -285,10 +285,7 @@ export const parseNotification = (data) => { output.status = output.type === 'follow' ? parseFollow(data) : parseStatus(data.status) - if (data.type === 'reblog' || data.type === 'favourite') { - output.status.user = parseUser(data.account) - } - output.action = output.status // not sure + output.action = output.status // TODO: Refactor, this is unneeded output.from_profile = parseUser(data.account) } else { const parsedNotice = parseStatus(data.notice)