1   package net.sourceforge.blogentis.modules.actions;
2   
3   
4   
5   
6   
7   
8   
9   
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  import net.sourceforge.blogentis.om.Blog;
26  import net.sourceforge.blogentis.trackback.TrackbackPostEditExtension;
27  import net.sourceforge.blogentis.turbine.BlogParameterParser;
28  import net.sourceforge.blogentis.turbine.SecureBlogAction;
29  import net.sourceforge.blogentis.utils.BlogConstants;
30  import net.sourceforge.blogentis.utils.MappedConfiguration;
31  
32  import org.apache.turbine.util.RunData;
33  import org.apache.velocity.context.Context;
34  
35  public class BlogTrackbackMod
36          extends SecureBlogAction {
37      protected String[] getPermissions() {
38          return new String[] {BlogConstants.PERM_ADMIN_BLOG};
39      }
40  
41      public void doPerform(RunData data, Context context)
42              throws Exception {
43          BlogParameterParser pp = (BlogParameterParser)data.getParameters();
44          Blog blog = pp.getBlog();
45  
46          MappedConfiguration conf = blog.getConfiguration();
47  
48          conf.setProperty(TrackbackPostEditExtension.T_BLOG_SEND, pp
49              .getBooleanObject("sendTrackbacks", new Boolean(true)));
50          conf.setProperty(TrackbackPostEditExtension.T_BLOG_WEBLOGS_COM, pp
51              .getBooleanObject("pingWeblogsCom", new Boolean(true)));
52          conf.setProperty(TrackbackPostEditExtension.T_BLOG_EXTRA_LINKS, pp
53              .getString("additionalTrackbacks", ""));
54          conf.setProperty(TrackbackPostEditExtension.T_BLOG_RECEIVE, pp
55              .getBooleanObject("receiveTrackbacks", new Boolean(true)));
56          conf.setProperty(TrackbackPostEditExtension.T_BLOG_IGNORE_FROM_SELF, pp
57              .getBooleanObject("ignoreBlogTrackbacks", new Boolean(true)));
58          conf.setProperty(TrackbackPostEditExtension.T_BLOG_IGNORE_FROM_SERVER,
59                           pp.getBooleanObject("ignoreServerTrackbacks",
60                                               new Boolean(false)));
61  
62          conf.save();
63      }
64  }