X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FGetSoneStatusPage.java;h=47d377a3eff8bf00f971d511ca7cbbc2d8bd6a8b;hb=728eb9dfab6b9284dbb69701fa8ba4a9b072e7ca;hp=e5385fa9bd4e04757b7d4fc9f15772bec13eee7a;hpb=ac9fbc286812077feb8a5207448a011727843b80;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/ajax/GetSoneStatusPage.java b/src/main/java/net/pterodactylus/sone/web/ajax/GetSoneStatusPage.java index e5385fa..47d377a 100644 --- a/src/main/java/net/pterodactylus/sone/web/ajax/GetSoneStatusPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ajax/GetSoneStatusPage.java @@ -23,39 +23,49 @@ import java.util.Date; import net.pterodactylus.sone.core.Core; import net.pterodactylus.sone.core.Core.SoneStatus; import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.sone.template.SoneAccessor; +import net.pterodactylus.sone.web.WebInterface; import net.pterodactylus.util.json.JsonObject; /** * AJAX page that reeturns the status of a sone, as a) a {@link SoneStatus} name - * and b) a “modified” boolean (as per {@link Sone#getModificationCounter()}). + * and b) a “modified” boolean (as per {@link Core#isModifiedSone(Sone)}). * * @author David ‘Bombe’ Roden */ public class GetSoneStatusPage extends JsonPage { - /** The Sone core. */ - private final Core core; - /** * Creates a new AJAX sone status handler. * - * @param core - * The Sone core + * @param webInterface + * The Sone web interface */ - public GetSoneStatusPage(Core core) { - super("ajax/getSoneStatus.ajax"); - this.core = core; + public GetSoneStatusPage(WebInterface webInterface) { + super("ajax/getSoneStatus.ajax", webInterface); } + // + // JSONPAGE METHODS + // + /** * {@inheritDoc} */ @Override protected JsonObject createJsonObject(Request request) { String soneId = request.getHttpRequest().getParam("sone"); - Sone sone = core.getSone(soneId); - SoneStatus soneStatus = core.getSoneStatus(sone); - return new JsonObject().put("status", soneStatus.name()).put("modified", sone.getModificationCounter() > 0).put("lastUpdated", new SimpleDateFormat("MMM d, yyyy, HH:mm:ss").format(new Date(sone.getTime()))); + Sone sone = webInterface.getCore().getSone(soneId); + SoneStatus soneStatus = webInterface.getCore().getSoneStatus(sone); + return createSuccessJsonObject().put("status", soneStatus.name()).put("name", SoneAccessor.getNiceName(sone)).put("modified", webInterface.getCore().isModifiedSone(sone)).put("locked", webInterface.getCore().isLocked(sone)).put("lastUpdated", new SimpleDateFormat("MMM d, yyyy, HH:mm:ss").format(new Date(sone.getTime()))).put("age", (System.currentTimeMillis() - sone.getTime()) / 1000); + } + + /** + * {@inheritDoc} + */ + @Override + protected boolean needsFormPassword() { + return false; } }