From 63650aec29effef1e5c78d953d078ae4a12cb09f Mon Sep 17 00:00:00 2001
From: Henry Jameson <me@hjkos.com>
Date: Sun, 12 Aug 2018 14:14:34 +0300
Subject: Added support for qvitter api fetching of notifications

---
 src/components/notifications/notifications.vue | 6 ++++++
 1 file changed, 6 insertions(+)

(limited to 'src/components/notifications/notifications.vue')

diff --git a/src/components/notifications/notifications.vue b/src/components/notifications/notifications.vue
index 4fa6e925..859730ed 100644
--- a/src/components/notifications/notifications.vue
+++ b/src/components/notifications/notifications.vue
@@ -11,6 +11,12 @@
           <notification :notification="notification"></notification>
         </div>
       </div>
+      <div class="panel-footer">
+        <a href="#" v-on:click.prevent='fetchOlderNotifications()' v-if="!notifications.loading">
+          <div class="new-status-notification text-center panel-footer">{{$t('notifications.load_older')}}</div>
+        </a>
+        <div class="new-status-notification text-center panel-footer" v-else>...</div>
+      </div>
     </div>
   </div>
 </template>
-- 
cgit v1.2.3-70-g09d2


From b97db4912dacca3cfcf91fc0843e631666a47d1c Mon Sep 17 00:00:00 2001
From: Henry Jameson <me@hjkos.com>
Date: Mon, 20 Aug 2018 20:45:54 +0300
Subject: error display

---
 src/components/notifications/notifications.js   |  3 +++
 src/components/notifications/notifications.scss | 19 +++++++++++++++++++
 src/components/notifications/notifications.vue  |  5 ++++-
 src/modules/statuses.js                         |  3 ++-
 4 files changed, 28 insertions(+), 2 deletions(-)

(limited to 'src/components/notifications/notifications.vue')

diff --git a/src/components/notifications/notifications.js b/src/components/notifications/notifications.js
index 55a9b0ab..b24250b0 100644
--- a/src/components/notifications/notifications.js
+++ b/src/components/notifications/notifications.js
@@ -14,6 +14,9 @@ const Notifications = {
     notifications () {
       return this.$store.state.statuses.notifications.data
     },
+    error () {
+      return this.$store.state.statuses.notifications.error
+    },
     unseenNotifications () {
       return filter(this.notifications, ({seen}) => !seen)
     },
diff --git a/src/components/notifications/notifications.scss b/src/components/notifications/notifications.scss
index 5881fbaa..5b09685b 100644
--- a/src/components/notifications/notifications.scss
+++ b/src/components/notifications/notifications.scss
@@ -4,6 +4,10 @@
   // a bit of a hack to allow scrolling below notifications
   padding-bottom: 15em;
 
+  .title {
+    display: inline-block;
+  }
+
   .panel {
     background: $fallback--bg;
     background: var(--bg, $fallback--bg)
@@ -22,6 +26,8 @@
     background: var(--btn, $fallback--btn);
     color: $fallback--fg;
     color: var(--fg, $fallback--fg);
+    display: flex;
+    align-items: baseline;
     .read-button {
       position: absolute;
       right: 0.7em;
@@ -44,6 +50,19 @@
     line-height: 1.3em;
   }
 
+  .loadmore-error {
+    position: absolute;
+    right: 0.6em;
+    font-size: 14px;
+    min-width: 6em;
+    font-family: sans-serif;
+    text-align: center;
+    padding: 0 0.25em 0 0.25em;
+    margin: 0;
+    color: $fallback--fg;
+    color: var(--fg, $fallback--fg);
+  }
+
   .unseen {
     box-shadow: inset 4px 0 0 var(--cRed, $fallback--cRed);
     padding-left: 0;
diff --git a/src/components/notifications/notifications.vue b/src/components/notifications/notifications.vue
index 859730ed..a0b0e5f5 100644
--- a/src/components/notifications/notifications.vue
+++ b/src/components/notifications/notifications.vue
@@ -3,7 +3,10 @@
     <div class="panel panel-default">
       <div class="panel-heading">
         <span class="unseen-count" v-if="unseenCount">{{unseenCount}}</span>
-        {{$t('notifications.notifications')}}
+        <div class="title"> {{$t('notifications.notifications')}}</div>
+        <div @click.prevent class="loadmore-error alert error" v-if="error">
+          {{$t('timeline.error_fetching')}}
+        </div>
         <button v-if="unseenCount" @click.prevent="markAsSeen" class="read-button">{{$t('notifications.read')}}</button>
       </div>
       <div class="panel-body">
diff --git a/src/modules/statuses.js b/src/modules/statuses.js
index 063f5f9c..8e1e7fe7 100644
--- a/src/modules/statuses.js
+++ b/src/modules/statuses.js
@@ -29,6 +29,7 @@ export const defaultState = {
     maxSavedId: 0,
     minId: Number.POSITIVE_INFINITY,
     data: [],
+    error: false,
     brokenFavorites: {}
   },
   favorites: new Set(),
@@ -364,7 +365,7 @@ export const mutations = {
     state.error = value
   },
   setNotificationsError (state, { value }) {
-    state.notificationsError = value
+    state.notifications.error = value
   },
   setNotificationsSilence (state, { value }) {
     state.notifications.desktopNotificationSilence = value
-- 
cgit v1.2.3-70-g09d2

