Author: toad
Date: 2009-01-07 22:38:24 +0000 (Wed, 07 Jan 2009)
New Revision: 24977

Modified:
   trunk/freenet/src/freenet/clients/http/PageMaker.java
   trunk/freenet/src/freenet/clients/http/SimpleToadletServer.java
   trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java
Log:
Fix PageMaker for plugins, pass in the LinkFixer on construction.


Modified: trunk/freenet/src/freenet/clients/http/PageMaker.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/PageMaker.java       2009-01-07 
22:31:06 UTC (rev 24976)
+++ trunk/freenet/src/freenet/clients/http/PageMaker.java       2009-01-07 
22:38:24 UTC (rev 24977)
@@ -75,17 +75,20 @@
        
        private final FredPluginL10n plugin; 
        private final boolean pluginMode;
+       private final LinkFixer fixer;
        
-       public PageMaker(FredPluginL10n plug, THEME t) {
+       public PageMaker(FredPluginL10n plug, THEME t, LinkFixer fixer) {
                setTheme(t);
                plugin = plug;
                pluginMode = true;
+               this.fixer = fixer;
        }
        
-       protected PageMaker(THEME t) {
+       protected PageMaker(THEME t, LinkFixer fixer) {
                setTheme(t);
                plugin = null;
                pluginMode = false;
+               this.fixer = fixer;
        }
        
        void setOverride(File f) {
@@ -140,7 +143,7 @@
 
        public HTMLNode getPageNode(String title, boolean 
renderNavigationLinks, ToadletContext ctx) {
                boolean fullAccess = ctx == null ? false : 
ctx.isAllowedFullAccess();
-               LinkFixer fixer = ctx.getContainer();
+               LinkFixer fixer = ctx == null ? this.fixer : ctx.getContainer();
                HTMLNode pageNode = new HTMLNode.HTMLDoctype("html", 
"-//W3C//DTD XHTML 1.1//EN");
                HTMLNode htmlNode = pageNode.addChild("html", "xml:lang", 
L10n.getSelectedLanguage().isoCode);
                HTMLNode headNode = htmlNode.addChild("head");

Modified: trunk/freenet/src/freenet/clients/http/SimpleToadletServer.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/SimpleToadletServer.java     
2009-01-07 22:31:06 UTC (rev 24976)
+++ trunk/freenet/src/freenet/clients/http/SimpleToadletServer.java     
2009-01-07 22:38:24 UTC (rev 24977)
@@ -538,7 +538,7 @@
                if((cssName.indexOf(':') != -1) || (cssName.indexOf('/') != -1))
                        throw new InvalidConfigValueException("CSS name must 
not contain slashes or colons!");
                cssTheme = THEME.themeFromName(cssName);
-               pageMaker = new PageMaker(cssTheme);
+               pageMaker = new PageMaker(cssTheme, this);
        
                if(!fproxyConfig.getOption("CSSOverride").isDefault()) {
                        cssOverride = new 
File(fproxyConfig.getString("CSSOverride"));

Modified: trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java
===================================================================
--- trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java       
2009-01-07 22:31:06 UTC (rev 24976)
+++ trunk/freenet/src/freenet/pluginmanager/PluginRespirator.java       
2009-01-07 22:38:24 UTC (rev 24977)
@@ -24,9 +24,9 @@
                this.plugin = plug;
                this.pluginManager = pm;
                if (plugin instanceof FredPluginL10n)
-                       pageMaker = new PageMaker((FredPluginL10n)plugin, 
pluginManager.getFProxyTheme());
+                       pageMaker = new PageMaker((FredPluginL10n)plugin, 
pluginManager.getFProxyTheme(), node.getLinkFilter());
                else
-                       pageMaker = new PageMaker(null, 
pluginManager.getFProxyTheme());
+                       pageMaker = new PageMaker(null, 
pluginManager.getFProxyTheme(), node.getLinkFilter());
        }
        
        //public HighLevelSimpleClient getHLSimpleClient() throws 
PluginSecurityException {

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to