diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-03-11 18:08:26 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-03-11 18:08:26 +0900 |
| commit | bd79352e8005bd8fe0ffa846e3318bc49b3fdd36 (patch) | |
| tree | 5a6a266ae92587c654d0089d493dc57a0ac3903e /src/web/app/mobile | |
| parent | #1231 (diff) | |
| download | sharkey-bd79352e8005bd8fe0ffa846e3318bc49b3fdd36.tar.gz sharkey-bd79352e8005bd8fe0ffa846e3318bc49b3fdd36.tar.bz2 sharkey-bd79352e8005bd8fe0ffa846e3318bc49b3fdd36.zip | |
#1204
Diffstat (limited to 'src/web/app/mobile')
| -rw-r--r-- | src/web/app/mobile/views/components/ui.header.vue | 13 | ||||
| -rw-r--r-- | src/web/app/mobile/views/components/ui.nav.vue | 13 |
2 files changed, 24 insertions, 2 deletions
diff --git a/src/web/app/mobile/views/components/ui.header.vue b/src/web/app/mobile/views/components/ui.header.vue index f06a35fe76..1ccbd5c951 100644 --- a/src/web/app/mobile/views/components/ui.header.vue +++ b/src/web/app/mobile/views/components/ui.header.vue @@ -6,7 +6,7 @@ <p ref="welcomeback" v-if="os.isSignedIn">おかえりなさい、<b>{{ os.i.name }}</b>さん</p> <div class="content" ref="mainContainer"> <button class="nav" @click="$parent.isDrawerOpening = true">%fa:bars%</button> - <template v-if="hasUnreadNotifications || hasUnreadMessagingMessages">%fa:circle%</template> + <template v-if="hasUnreadNotifications || hasUnreadMessagingMessages || hasGameInvitations">%fa:circle%</template> <h1> <slot>Misskey</slot> </h1> @@ -26,6 +26,7 @@ export default Vue.extend({ return { hasUnreadNotifications: false, hasUnreadMessagingMessages: false, + hasGameInvitations: false, connection: null, connectionId: null }; @@ -39,6 +40,8 @@ export default Vue.extend({ this.connection.on('unread_notification', this.onUnreadNotification); this.connection.on('read_all_messaging_messages', this.onReadAllMessagingMessages); this.connection.on('unread_messaging_message', this.onUnreadMessagingMessage); + this.connection.on('othello_invited', this.onOthelloInvited); + this.connection.on('othello_no_invites', this.onOthelloNoInvites); // Fetch count of unread notifications (this as any).api('notifications/get_unread_count').then(res => { @@ -107,6 +110,8 @@ export default Vue.extend({ this.connection.off('unread_notification', this.onUnreadNotification); this.connection.off('read_all_messaging_messages', this.onReadAllMessagingMessages); this.connection.off('unread_messaging_message', this.onUnreadMessagingMessage); + this.connection.off('othello_invited', this.onOthelloInvited); + this.connection.off('othello_no_invites', this.onOthelloNoInvites); (this as any).os.stream.dispose(this.connectionId); } }, @@ -122,6 +127,12 @@ export default Vue.extend({ }, onUnreadMessagingMessage() { this.hasUnreadMessagingMessages = true; + }, + onOthelloInvited() { + this.hasGameInvitations = true; + }, + onOthelloNoInvites() { + this.hasGameInvitations = false; } } }); diff --git a/src/web/app/mobile/views/components/ui.nav.vue b/src/web/app/mobile/views/components/ui.nav.vue index ba35a2783d..b8bc2fb040 100644 --- a/src/web/app/mobile/views/components/ui.nav.vue +++ b/src/web/app/mobile/views/components/ui.nav.vue @@ -18,7 +18,7 @@ <li><router-link to="/">%fa:home%%i18n:mobile.tags.mk-ui-nav.home%%fa:angle-right%</router-link></li> <li><router-link to="/i/notifications">%fa:R bell%%i18n:mobile.tags.mk-ui-nav.notifications%<template v-if="hasUnreadNotifications">%fa:circle%</template>%fa:angle-right%</router-link></li> <li><router-link to="/i/messaging">%fa:R comments%%i18n:mobile.tags.mk-ui-nav.messaging%<template v-if="hasUnreadMessagingMessages">%fa:circle%</template>%fa:angle-right%</router-link></li> - <li><router-link to="/othello">%fa:gamepad%ゲーム%fa:angle-right%</router-link></li> + <li><router-link to="/othello">%fa:gamepad%ゲーム<template v-if="hasGameInvitations">%fa:circle%</template>%fa:angle-right%</router-link></li> </ul> <ul> <li><a :href="chUrl" target="_blank">%fa:tv%%i18n:mobile.tags.mk-ui-nav.ch%%fa:angle-right%</a></li> @@ -47,6 +47,7 @@ export default Vue.extend({ return { hasUnreadNotifications: false, hasUnreadMessagingMessages: false, + hasGameInvitations: false, connection: null, connectionId: null, aboutUrl: `${docsUrl}/${lang}/about`, @@ -62,6 +63,8 @@ export default Vue.extend({ this.connection.on('unread_notification', this.onUnreadNotification); this.connection.on('read_all_messaging_messages', this.onReadAllMessagingMessages); this.connection.on('unread_messaging_message', this.onUnreadMessagingMessage); + this.connection.on('othello_invited', this.onOthelloInvited); + this.connection.on('othello_no_invites', this.onOthelloNoInvites); // Fetch count of unread notifications (this as any).api('notifications/get_unread_count').then(res => { @@ -84,6 +87,8 @@ export default Vue.extend({ this.connection.off('unread_notification', this.onUnreadNotification); this.connection.off('read_all_messaging_messages', this.onReadAllMessagingMessages); this.connection.off('unread_messaging_message', this.onUnreadMessagingMessage); + this.connection.off('othello_invited', this.onOthelloInvited); + this.connection.off('othello_no_invites', this.onOthelloNoInvites); (this as any).os.stream.dispose(this.connectionId); } }, @@ -104,6 +109,12 @@ export default Vue.extend({ }, onUnreadMessagingMessage() { this.hasUnreadMessagingMessages = true; + }, + onOthelloInvited() { + this.hasGameInvitations = true; + }, + onOthelloNoInvites() { + this.hasGameInvitations = false; } } }); |