Only allow local Sones to log in.
[Sone.git] / src / main / java / net / pterodactylus / sone / web / LoginPage.java
index 4a3e2b1..6c3e5c5 100644 (file)
@@ -63,24 +63,18 @@ public class LoginPage extends SoneTemplatePage {
        protected void processTemplate(Request request, Template template) throws RedirectException {
                super.processTemplate(request, template);
                /* get all own identities. */
-               List<Sone> localSones = new ArrayList<Sone>(webInterface.core().getLocalSones());
+               List<Sone> localSones = new ArrayList<Sone>(webInterface.getCore().getLocalSones());
                Collections.sort(localSones, Sone.NICE_NAME_COMPARATOR);
                template.set("sones", localSones);
                if (request.getMethod() == Method.POST) {
                        String soneId = request.getHttpRequest().getPartAsStringFailsafe("sone-id", 100);
-                       Sone selectedSone = null;
-                       for (Sone sone : webInterface.core().getSones()) {
-                               if (sone.getId().equals(soneId)) {
-                                       selectedSone = sone;
-                                       break;
-                               }
-                       }
+                       Sone selectedSone = webInterface.getCore().getLocalSone(soneId);
                        if (selectedSone != null) {
                                setCurrentSone(request.getToadletContext(), selectedSone);
                                throw new RedirectException("index.html");
                        }
                }
-               List<OwnIdentity> ownIdentitiesWithoutSone = CreateSonePage.getOwnIdentitiesWithoutSone(webInterface.core());
+               List<OwnIdentity> ownIdentitiesWithoutSone = CreateSonePage.getOwnIdentitiesWithoutSone(webInterface.getCore());
                template.set("identitiesWithoutSone", ownIdentitiesWithoutSone);
        }