projects
/
Sone.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Return an error code if form password is wrong.
[Sone.git]
/
src
/
main
/
java
/
net
/
pterodactylus
/
sone
/
web
/
WebInterface.java
diff --git
a/src/main/java/net/pterodactylus/sone/web/WebInterface.java
b/src/main/java/net/pterodactylus/sone/web/WebInterface.java
index
40da956
..
0f6e21a
100644
(file)
--- a/
src/main/java/net/pterodactylus/sone/web/WebInterface.java
+++ b/
src/main/java/net/pterodactylus/sone/web/WebInterface.java
@@
-33,9
+33,12
@@
import net.pterodactylus.sone.data.Post;
import net.pterodactylus.sone.data.Sone;
import net.pterodactylus.sone.freenet.L10nFilter;
import net.pterodactylus.sone.main.SonePlugin;
import net.pterodactylus.sone.data.Sone;
import net.pterodactylus.sone.freenet.L10nFilter;
import net.pterodactylus.sone.main.SonePlugin;
+import net.pterodactylus.sone.template.GetPagePlugin;
import net.pterodactylus.sone.template.PostAccessor;
import net.pterodactylus.sone.template.PostAccessor;
+import net.pterodactylus.sone.template.RequestChangeFilter;
import net.pterodactylus.sone.template.SoneAccessor;
import net.pterodactylus.sone.template.SubstringFilter;
import net.pterodactylus.sone.template.SoneAccessor;
import net.pterodactylus.sone.template.SubstringFilter;
+import net.pterodactylus.sone.web.ajax.GetSoneStatusPage;
import net.pterodactylus.sone.web.ajax.GetTranslationPage;
import net.pterodactylus.sone.web.page.PageToadlet;
import net.pterodactylus.sone.web.page.PageToadletFactory;
import net.pterodactylus.sone.web.ajax.GetTranslationPage;
import net.pterodactylus.sone.web.page.PageToadlet;
import net.pterodactylus.sone.web.page.PageToadletFactory;
@@
-44,11
+47,13
@@
import net.pterodactylus.util.logging.Logging;
import net.pterodactylus.util.service.AbstractService;
import net.pterodactylus.util.template.DateFilter;
import net.pterodactylus.util.template.DefaultTemplateFactory;
import net.pterodactylus.util.service.AbstractService;
import net.pterodactylus.util.template.DateFilter;
import net.pterodactylus.util.template.DefaultTemplateFactory;
+import net.pterodactylus.util.template.PaginationPlugin;
import net.pterodactylus.util.template.ReflectionAccessor;
import net.pterodactylus.util.template.Template;
import net.pterodactylus.util.template.TemplateException;
import net.pterodactylus.util.template.TemplateFactory;
import net.pterodactylus.util.template.TemplateProvider;
import net.pterodactylus.util.template.ReflectionAccessor;
import net.pterodactylus.util.template.Template;
import net.pterodactylus.util.template.TemplateException;
import net.pterodactylus.util.template.TemplateFactory;
import net.pterodactylus.util.template.TemplateProvider;
+import net.pterodactylus.util.template.XmlFilter;
import freenet.clients.http.SessionManager;
import freenet.clients.http.ToadletContainer;
import freenet.l10n.BaseL10n;
import freenet.clients.http.SessionManager;
import freenet.clients.http.ToadletContainer;
import freenet.l10n.BaseL10n;
@@
-70,6
+75,9
@@
public class WebInterface extends AbstractService {
/** The registered toadlets. */
private final List<PageToadlet> pageToadlets = new ArrayList<PageToadlet>();
/** The registered toadlets. */
private final List<PageToadlet> pageToadlets = new ArrayList<PageToadlet>();
+ /** The form password. */
+ private final String formPassword;
+
/**
* Creates a new web interface.
*
/**
* Creates a new web interface.
*
@@
-79,6
+87,7
@@
public class WebInterface extends AbstractService {
public WebInterface(SonePlugin sonePlugin) {
super("Sone Web Interface", false);
this.sonePlugin = sonePlugin;
public WebInterface(SonePlugin sonePlugin) {
super("Sone Web Interface", false);
this.sonePlugin = sonePlugin;
+ formPassword = sonePlugin.pluginRespirator().getToadletContainer().getFormPassword();
}
//
}
//
@@
-117,6
+126,15
@@
public class WebInterface extends AbstractService {
}
}
}
}
+ /**
+ * Returns the node’s form password.
+ *
+ * @return The form password
+ */
+ public String formPassword() {
+ return formPassword;
+ }
+
//
// SERVICE METHODS
//
//
// SERVICE METHODS
//
@@
-152,8
+170,12
@@
public class WebInterface extends AbstractService {
templateFactory.addFilter("date", new DateFilter());
templateFactory.addFilter("l10n", new L10nFilter(l10n()));
templateFactory.addFilter("substring", new SubstringFilter());
templateFactory.addFilter("date", new DateFilter());
templateFactory.addFilter("l10n", new L10nFilter(l10n()));
templateFactory.addFilter("substring", new SubstringFilter());
+ templateFactory.addFilter("xml", new XmlFilter());
+ templateFactory.addFilter("change", new RequestChangeFilter());
+ templateFactory.addPlugin("getpage", new GetPagePlugin());
+ templateFactory.addPlugin("paginate", new PaginationPlugin());
templateFactory.setTemplateProvider(new ClassPathTemplateProvider(templateFactory));
templateFactory.setTemplateProvider(new ClassPathTemplateProvider(templateFactory));
- templateFactory.addTemplateObject("formPassword",
sonePlugin.pluginRespirator().getToadletContainer().getFormPassword()
);
+ templateFactory.addTemplateObject("formPassword",
formPassword
);
Template loginTemplate = templateFactory.createTemplate(createReader("/templates/login.html"));
Template indexTemplate = templateFactory.createTemplate(createReader("/templates/index.html"));
Template loginTemplate = templateFactory.createTemplate(createReader("/templates/login.html"));
Template indexTemplate = templateFactory.createTemplate(createReader("/templates/index.html"));
@@
-203,6
+225,7
@@
public class WebInterface extends AbstractService {
pageToadlets.add(pageToadletFactory.createPageToadlet(new StaticPage("javascript/", "/static/javascript/", "text/javascript")));
pageToadlets.add(pageToadletFactory.createPageToadlet(new StaticPage("images/", "/static/images/", "image/png")));
pageToadlets.add(pageToadletFactory.createPageToadlet(new GetTranslationPage(this)));
pageToadlets.add(pageToadletFactory.createPageToadlet(new StaticPage("javascript/", "/static/javascript/", "text/javascript")));
pageToadlets.add(pageToadletFactory.createPageToadlet(new StaticPage("images/", "/static/images/", "image/png")));
pageToadlets.add(pageToadletFactory.createPageToadlet(new GetTranslationPage(this)));
+ pageToadlets.add(pageToadletFactory.createPageToadlet(new GetSoneStatusPage(this)));
ToadletContainer toadletContainer = sonePlugin.pluginRespirator().getToadletContainer();
toadletContainer.getPageMaker().addNavigationCategory("/Sone/index.html", "Navigation.Menu.Name", "Navigation.Menu.Tooltip", sonePlugin);
ToadletContainer toadletContainer = sonePlugin.pluginRespirator().getToadletContainer();
toadletContainer.getPageMaker().addNavigationCategory("/Sone/index.html", "Navigation.Menu.Name", "Navigation.Menu.Tooltip", sonePlugin);