announcement fix

This commit is contained in:
Branislav Stojkovic
2016-10-28 00:37:06 +02:00
parent ad4716cd79
commit 21815584ac
2 changed files with 5 additions and 5 deletions
@@ -37,13 +37,13 @@ public class AnnouncementProvider {
service = factory.createProxy(IAnnouncementService.class, serviceUrl); service = factory.createProxy(IAnnouncementService.class, serviceUrl);
} }
public String getCurrentAnnouncements() throws ParseException { public String getCurrentAnnouncements(boolean forceLast) throws ParseException {
announcements = service.getAnnouncements(); announcements = service.getAnnouncements();
boolean hasUnread = false; boolean hasUnread = false;
StringBuilder sb = new StringBuilder("<html>"); StringBuilder sb = new StringBuilder("<html>");
for (int i = 0; i < announcements.size(); i++) { for (int i = 0; i < announcements.size(); i++) {
Date date = dateFormat.parse(announcements.get(i).getDate()); Date date = dateFormat.parse(announcements.get(i).getDate());
if (lastDate == null || lastDate.before(date)) { if (lastDate == null || lastDate.before(date) || (forceLast && i == announcements.size() - 1)) {
sb.append("<font size='4'><b>").append(announcements.get(i).getTitle()).append("</b> on ") sb.append("<font size='4'><b>").append(announcements.get(i).getTitle()).append("</b> on ")
.append(announcements.get(i).getDate()).append("</font>").append("<p>") .append(announcements.get(i).getDate()).append("</font>").append("<p>")
.append(announcements.get(i).getText()).append("</p>"); .append(announcements.get(i).getText()).append("</p>");
@@ -95,7 +95,7 @@ public class StatusBar extends JPanel implements IPlugIn {
@Override @Override
public String doInBackground() throws Exception { public String doInBackground() throws Exception {
Thread.sleep(1000); Thread.sleep(1000);
return announcementProvider.getCurrentAnnouncements(); return announcementProvider.getCurrentAnnouncements(false);
} }
@Override @Override
@@ -145,7 +145,7 @@ public class StatusBar extends JPanel implements IPlugIn {
public JLabel getAnnouncementLabel() { public JLabel getAnnouncementLabel() {
if (announcementLabel == null) { if (announcementLabel == null) {
announcementLabel = new JLabel(IconLoader.Megaphone.getIcon()); announcementLabel = new JLabel(IconLoader.Megaphone.getIcon());
announcementLabel.setToolTipText("Check for public announcements"); announcementLabel.setToolTipText("Click to fetch the most recent public announcement");
announcementLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); announcementLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
announcementLabel.addMouseListener(new MouseAdapter() { announcementLabel.addMouseListener(new MouseAdapter() {
@@ -155,7 +155,7 @@ public class StatusBar extends JPanel implements IPlugIn {
@Override @Override
public String doInBackground() throws Exception { public String doInBackground() throws Exception {
return announcementProvider.getCurrentAnnouncements(); return announcementProvider.getCurrentAnnouncements(true);
} }
@Override @Override