Merge branch 'release/0.9-rc1'
[Sone.git] / src / main / java / net / pterodactylus / sone / template / ProfileAccessor.java
index 36fa42d..762bc14 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Sone - ProfileAccessor.java - Copyright © 2011 David Roden
+ * Sone - ProfileAccessor.java - Copyright © 2011–2013 David Roden
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,6 +21,7 @@ import net.pterodactylus.sone.core.Core;
 import net.pterodactylus.sone.data.Profile;
 import net.pterodactylus.sone.data.Sone;
 import net.pterodactylus.sone.data.Sone.ShowCustomAvatars;
+import net.pterodactylus.sone.freenet.wot.OwnIdentity;
 import net.pterodactylus.sone.freenet.wot.Trust;
 import net.pterodactylus.util.template.Accessor;
 import net.pterodactylus.util.template.ReflectionAccessor;
@@ -61,28 +62,29 @@ public class ProfileAccessor extends ReflectionAccessor {
                                return null;
                        }
                        String avatarId = profile.getAvatar();
-                       if (avatarId != null) {
-                               if (core.getImage(avatarId, false) == null) {
-                                       /* avatar ID but no matching image? show nothing. */
-                                       return null;
-                               }
+                       if (avatarId == null) {
+                               return null;
+                       }
+                       if (core.getImage(avatarId, false) == null) {
+                               /* avatar ID but no matching image? show nothing. */
+                               return null;
                        }
                        Sone remoteSone = profile.getSone();
-                       if (core.isLocalSone(remoteSone)) {
+                       if (remoteSone.isLocal()) {
                                /* always show your own avatars. */
                                return avatarId;
                        }
-                       ShowCustomAvatars showCustomAvatars = currentSone.getOptions().<ShowCustomAvatars> getEnumOption("ShowCustomAvatars").get();
+                       ShowCustomAvatars showCustomAvatars = currentSone.getOptions().getShowCustomAvatars();
                        if (showCustomAvatars == ShowCustomAvatars.NEVER) {
                                return null;
                        }
-                       if ((showCustomAvatars == ShowCustomAvatars.ALWAYS) || (avatarId == null)) {
+                       if (showCustomAvatars == ShowCustomAvatars.ALWAYS) {
                                return avatarId;
                        }
-                       if ((showCustomAvatars == ShowCustomAvatars.FOLLOWED) && currentSone.hasFriend(remoteSone.getId())) {
-                               return avatarId;
+                       if (showCustomAvatars == ShowCustomAvatars.FOLLOWED) {
+                               return currentSone.hasFriend(remoteSone.getId()) ? avatarId : null;
                        }
-                       Trust trust = core.getTrust(currentSone, remoteSone);
+                       Trust trust = remoteSone.getIdentity().getTrust((OwnIdentity) currentSone.getIdentity());
                        if (trust == null) {
                                return null;
                        }