import net.pterodactylus.sone.freenet.L10nFilter;
import net.pterodactylus.sone.freenet.wot.Identity;
import net.pterodactylus.sone.main.SonePlugin;
+import net.pterodactylus.sone.notify.NewPostNotification;
+import net.pterodactylus.sone.notify.NewReplyNotification;
import net.pterodactylus.sone.notify.NewSoneNotification;
import net.pterodactylus.sone.template.CollectionAccessor;
import net.pterodactylus.sone.template.CssClassNameFilter;
/** The “new Sone” notification. */
private final NewSoneNotification newSoneNotification;
+ /** The “new post” notification. */
+ private final NewPostNotification newPostNotification;
+
+ /** The “new reply” notification. */
+ private final NewReplyNotification newReplyNotification;
+
/**
* Creates a new web interface.
*
/* create notifications. */
Template newSoneNotificationTemplate = templateFactory.createTemplate(createReader("/templates/notify/newSoneNotification.html"));
newSoneNotification = new NewSoneNotification(newSoneNotificationTemplate);
+
+ Template newPostNotificationTemplate = templateFactory.createTemplate(createReader("/templates/notify/newPostNotification.html"));
+ newPostNotification = new NewPostNotification(newPostNotificationTemplate);
+
+ Template newReplyNotificationTemplate = templateFactory.createTemplate(createReader("/templates/notify/newReplyNotification.html"));
+ newReplyNotification = new NewReplyNotification(newReplyNotificationTemplate);
}
//
*/
@Override
public void newPostFound(Post post) {
- /* TODO */
+ newPostNotification.addPost(post);
+ notificationManager.addNotification(newPostNotification);
}
/**
*/
@Override
public void newReplyFound(Reply reply) {
- /* TODO */
+ newReplyNotification.addReply(reply);
+ notificationManager.addNotification(newReplyNotification);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void markSoneKnown(Sone sone) {
+ newSoneNotification.removeSone(sone);
+ if (newSoneNotification.isEmpty()) {
+ newSoneNotification.dismiss();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void markPostKnown(Post post) {
+ newPostNotification.removePost(post);
+ if (newPostNotification.isEmpty()) {
+ newPostNotification.dismiss();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void markReplyKnown(Reply reply) {
+ newReplyNotification.removeReply(reply);
+ if (newReplyNotification.isEmpty()) {
+ newReplyNotification.dismiss();
+ }
}
/**