X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FSoneAccessor.java;h=0cb92fff48628e7b455169b2d3c6fa32e20c10d2;hb=1f70b96444f309fbbf338d474af395ff615d244b;hp=e22738aa1f05b9d48ed44e27b125742e3ea7ca30;hpb=b1660609f6574ed43afd61d332be9f3764900405;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java b/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java index e22738a..0cb92ff 100644 --- a/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java +++ b/src/main/java/net/pterodactylus/sone/template/SoneAccessor.java @@ -21,6 +21,7 @@ import net.pterodactylus.sone.core.Core; import net.pterodactylus.sone.core.Core.SoneStatus; import net.pterodactylus.sone.data.Profile; import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.sone.freenet.wot.Trust; import net.pterodactylus.util.template.Accessor; import net.pterodactylus.util.template.DataProvider; import net.pterodactylus.util.template.ReflectionAccessor; @@ -65,25 +66,36 @@ public class SoneAccessor extends ReflectionAccessor { Sone sone = (Sone) object; if (member.equals("niceName")) { return getNiceName(sone); + } else if (member.equals("local")) { + return sone.getInsertUri() != null; } else if (member.equals("friend")) { Sone currentSone = (Sone) dataProvider.getData("currentSone"); - return currentSone.hasFriend(sone) ? true : null; + return (currentSone != null) && currentSone.hasFriend(sone.getId()); } else if (member.equals("current")) { Sone currentSone = (Sone) dataProvider.getData("currentSone"); - return currentSone.equals(sone); - } else if (member.equals("blocked")) { - Sone currentSone = (Sone) dataProvider.getData("currentSone"); - return currentSone.isSoneBlocked(sone.getId()); + return (currentSone != null) && currentSone.equals(sone); } else if (member.equals("modified")) { - return sone.getModificationCounter() > 0; + return core.isModifiedSone(sone); } else if (member.equals("status")) { - return core.getSoneStatus(sone).toString(); + return core.getSoneStatus(sone); + } else if (member.equals("unknown")) { + return core.getSoneStatus(sone) == SoneStatus.unknown; } else if (member.equals("idle")) { return core.getSoneStatus(sone) == SoneStatus.idle; } else if (member.equals("inserting")) { return core.getSoneStatus(sone) == SoneStatus.inserting; } else if (member.equals("downloading")) { return core.getSoneStatus(sone) == SoneStatus.downloading; + } else if (member.equals("new")) { + return core.isNewSone(sone); + } else if (member.equals("locked")) { + return core.isLocked(sone); + } else if (member.equals("trust")) { + Sone currentSone = (Sone) dataProvider.getData("currentSone"); + Trust trust = core.getTrust(currentSone, sone); + if (trust == null) { + return new Trust(null, null, null); + } } return super.get(dataProvider, object, member); } @@ -106,7 +118,7 @@ public class SoneAccessor extends ReflectionAccessor { String lastName = profile.getLastName(); if (firstName == null) { if (lastName == null) { - return sone.getName(); + return String.valueOf(sone.getName()); } return lastName; }