From 3238dff5b3beca228359b370bc104f48d6247632 Mon Sep 17 00:00:00 2001 From: INOPIAE Date: Wed, 8 Feb 2017 16:18:54 +0100 Subject: [PATCH] Highlight expired nucleus bonus verifications in points overview fixes issue #123 Change-Id: I796e0e2f81897c35307fcdc64255127f058696a2 --- src/org/cacert/gigi/dbObjects/Assurance.java | 23 +++++++++++++++++-- src/org/cacert/gigi/dbObjects/User.java | 2 +- .../cacert/gigi/output/AssurancesDisplay.java | 3 +++ .../gigi/output/AssurancesDisplay.templ | 5 ++-- 4 files changed, 28 insertions(+), 5 deletions(-) diff --git a/src/org/cacert/gigi/dbObjects/Assurance.java b/src/org/cacert/gigi/dbObjects/Assurance.java index 33dbf1ed..07c3a39b 100644 --- a/src/org/cacert/gigi/dbObjects/Assurance.java +++ b/src/org/cacert/gigi/dbObjects/Assurance.java @@ -1,5 +1,7 @@ package org.cacert.gigi.dbObjects; +import java.util.Date; + import org.cacert.gigi.database.DBEnum; import org.cacert.gigi.dbObjects.wrappers.DataContainer; @@ -41,7 +43,9 @@ public class Assurance { private Country country; - public Assurance(int id, User from, Name to, String location, String method, int points, String date, Country country) { + private Date expireDate; + + public Assurance(int id, User from, Name to, String location, String method, int points, String date, Country country, Date expireDate) { this.id = id; this.from = from; this.to = to; @@ -50,7 +54,7 @@ public class Assurance { this.points = points; this.date = date; this.country = country; - + this.expireDate = expireDate; } public User getFrom() { @@ -84,4 +88,19 @@ public class Assurance { public Country getCountry() { return country; } + + public Date getExpireDate() { + return expireDate; + } + + public boolean isExpired() { + boolean expired = false; + if (expireDate == null) { + expired = false; + } else { + Date now = new Date(); + expired = expireDate.before(now); + } + return expired; + } } diff --git a/src/org/cacert/gigi/dbObjects/User.java b/src/org/cacert/gigi/dbObjects/User.java index fa02012a..ad2d3867 100644 --- a/src/org/cacert/gigi/dbObjects/User.java +++ b/src/org/cacert/gigi/dbObjects/User.java @@ -617,7 +617,7 @@ public class User extends CertificateOwner { private Assurance assuranceByRes(GigiResultSet res) { try { - return new Assurance(res.getInt("id"), User.getById(res.getInt("from")), Name.getById(res.getInt("to")), res.getString("location"), res.getString("method"), res.getInt("points"), res.getString("date"), res.getString("country") == null ? null : Country.getCountryByCode(res.getString("country"), CountryCodeType.CODE_2_CHARS)); + return new Assurance(res.getInt("id"), User.getById(res.getInt("from")), Name.getById(res.getInt("to")), res.getString("location"), res.getString("method"), res.getInt("points"), res.getString("date"), res.getString("country") == null ? null : Country.getCountryByCode(res.getString("country"), CountryCodeType.CODE_2_CHARS), res.getTimestamp("expire")); } catch (GigiApiException e) { throw new Error(e); } diff --git a/src/org/cacert/gigi/output/AssurancesDisplay.java b/src/org/cacert/gigi/output/AssurancesDisplay.java index 356a0349..86034158 100644 --- a/src/org/cacert/gigi/output/AssurancesDisplay.java +++ b/src/org/cacert/gigi/output/AssurancesDisplay.java @@ -31,9 +31,11 @@ public class AssurancesDisplay implements Outputable { final Assurance[] assurances = (Assurance[]) vars.get(assuranceArray); if (assurer) { vars.put("verb", l.getTranslation("To (User Id)")); + vars.put("info", ""); } else { vars.put("verb", l.getTranslation("From")); vars.put("myName", "yes"); + vars.put("info", l.getTranslation("Coloured rows show expired nucleus bonus verifications which are not counted to the total of verification points.")); } IterableDataset assuranceGroup = new IterableDataset() { @@ -62,6 +64,7 @@ public class AssurancesDisplay implements Outputable { vars.put("date", assurance.getDate()); vars.put("location", assurance.getLocation() + " (" + (assurance.getCountry() == null ? l.getTranslation("not given") : assurance.getCountry().getName()) + ")"); vars.put("points", assurance.getPoints()); + vars.put("expired", assurance.isExpired()); i++; return true; } diff --git a/src/org/cacert/gigi/output/AssurancesDisplay.templ b/src/org/cacert/gigi/output/AssurancesDisplay.templ index b7c0e4fc..41f9fd87 100644 --- a/src/org/cacert/gigi/output/AssurancesDisplay.templ +++ b/src/org/cacert/gigi/output/AssurancesDisplay.templ @@ -12,7 +12,7 @@ - + class="info" > @@ -28,4 +28,5 @@ - \ No newline at end of file + + \ No newline at end of file -- 2.39.2