Show notification only if there is no first-start notification.
[Sone.git] / src / main / java / net / pterodactylus / sone / web / WebInterface.java
index 5865f1d..4497019 100644 (file)
@@ -269,7 +269,7 @@ public class WebInterface implements CoreListener {
         *            {@code false} if the existing configuration could be read
         */
        public void setNewConfig(boolean newConfig) {
-               if (newConfig && (notificationManager.getNotification("first-start-notification") == null)) {
+               if (newConfig && !hasFirstStartNotification()) {
                        Template configNotReadNotificationTemplate = new Template(createReader("/templates/notify/configNotReadNotification.html"));
                        Notification configNotReadNotification = new TemplateNotification("config-not-read-notification", configNotReadNotificationTemplate);
                        notificationManager.addNotification(configNotReadNotification);
@@ -277,6 +277,20 @@ public class WebInterface implements CoreListener {
        }
 
        //
+       // PRIVATE ACCESSORS
+       //
+
+       /**
+        * Returns whether the first start notification is currently displayed.
+        *
+        * @return {@code true} if the first-start notification is currently
+        *         displayed, {@code false} otherwise
+        */
+       private boolean hasFirstStartNotification() {
+               return notificationManager.getNotification("first-start-notification") != null;
+       }
+
+       //
        // ACTIONS
        //
 
@@ -474,7 +488,9 @@ public class WebInterface implements CoreListener {
        @Override
        public void newSoneFound(Sone sone) {
                newSoneNotification.add(sone);
-               notificationManager.addNotification(newSoneNotification);
+               if (!hasFirstStartNotification()) {
+                       notificationManager.addNotification(newSoneNotification);
+               }
        }
 
        /**
@@ -483,7 +499,9 @@ public class WebInterface implements CoreListener {
        @Override
        public void newPostFound(Post post) {
                newPostNotification.add(post);
-               notificationManager.addNotification(newPostNotification);
+               if (!hasFirstStartNotification()) {
+                       notificationManager.addNotification(newPostNotification);
+               }
        }
 
        /**
@@ -495,7 +513,9 @@ public class WebInterface implements CoreListener {
                        return;
                }
                newReplyNotification.add(reply);
-               notificationManager.addNotification(newReplyNotification);
+               if (!hasFirstStartNotification()) {
+                       notificationManager.addNotification(newReplyNotification);
+               }
        }
 
        /**