You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2007/02/20 18:49:32 UTC
svn commit: r509685 [2/2] - in /incubator/roller/branches/roller_4.0: ./
apps/planet/ apps/planet/src/java/org/apache/roller/planet/business/
apps/planet/src/java/org/apache/roller/planet/business/datamapper/
apps/planet/src/java/org/apache/roller/plan...
Modified: incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetConfigAction.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetConfigAction.java?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetConfigAction.java (original)
+++ incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetConfigAction.java Tue Feb 20 09:49:24 2007
@@ -16,6 +16,8 @@
package org.apache.roller.planet.ui.admin.struts.actions;
import java.io.IOException;
+import java.util.Iterator;
+import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@@ -23,8 +25,8 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.roller.planet.tasks.RefreshEntriesTask;
-import org.apache.roller.planet.tasks.SyncWebsitesTask;
+import org.apache.roller.RollerException;
+import org.apache.roller.RollerPermissionsException;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
@@ -33,13 +35,10 @@
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;
-import org.apache.roller.config.RollerRuntimeConfig;
import org.apache.roller.planet.business.Planet;
import org.apache.roller.planet.business.PlanetFactory;
-import org.apache.roller.planet.business.PlanetManager;
-import org.apache.roller.business.Roller;
-import org.apache.roller.business.RollerFactory;
-import org.apache.roller.planet.pojos.PlanetGroupData;
+import org.apache.roller.planet.business.PropertiesManager;
+import org.apache.roller.planet.pojos.PropertyData;
import org.apache.roller.ui.core.BasePageModel;
import org.apache.roller.ui.core.RollerRequest;
import org.apache.roller.ui.core.RollerSession;
@@ -59,8 +58,142 @@
private static Log logger =
LogFactory.getFactory().getInstance(PlanetConfigAction.class);
-// /** Populate config form and forward to config page */
-// public ActionForward getConfig(ActionMapping mapping,
+ public ActionForward unspecified(
+ ActionMapping mapping,
+ ActionForm actionForm,
+ HttpServletRequest request,
+ HttpServletResponse response)
+ throws IOException, ServletException {
+
+ // make "edit" our default action
+ return this.edit(mapping, actionForm, request, response);
+ }
+
+
+ public ActionForward edit(
+ ActionMapping mapping,
+ ActionForm actionForm,
+ HttpServletRequest request,
+ HttpServletResponse response)
+ throws IOException, ServletException {
+
+ logger.debug("Handling edit request");
+
+ ActionForward forward = mapping.findForward("planetConfig.page");
+ try {
+ BasePageModel pageModel = new BasePageModel(
+ "planetConfig.title", request, response, mapping);
+ request.setAttribute("model",pageModel);
+ RollerRequest rreq = RollerRequest.getRollerRequest(request);
+ RollerSession rollerSession = RollerSession.getRollerSession(request);
+ if (rollerSession.isGlobalAdminUser() ) {
+
+ // just grab our properties map and put it in the request
+ Planet planet = PlanetFactory.getPlanet();
+ PropertiesManager propsManager = planet.getPropertiesManager();
+ Map props = propsManager.getProperties();
+ request.setAttribute("PlanetProps", props);
+
+ } else {
+ forward = mapping.findForward("access-denied");
+ }
+ } catch (Exception e) {
+ logger.error("ERROR in action",e);
+ throw new ServletException(e);
+ }
+ return forward;
+ }
+
+
+ public ActionForward update(
+ ActionMapping mapping,
+ ActionForm actionForm,
+ HttpServletRequest request,
+ HttpServletResponse response)
+ throws IOException, ServletException {
+
+ logger.debug("Handling update request");
+
+ ActionForward forward = mapping.findForward("planetConfig.page");
+ ActionErrors errors = new ActionErrors();
+ try {
+ RollerRequest rreq = RollerRequest.getRollerRequest(request);
+ RollerSession rollerSession = RollerSession.getRollerSession(request);
+ BasePageModel pageModel = new BasePageModel(
+ "planetConfig.title", request, response, mapping);
+ request.setAttribute("model",pageModel);
+ if (rollerSession.isGlobalAdminUser()) {
+
+ // just grab our properties map and put it in the request
+ Planet planet = PlanetFactory.getPlanet();
+ PropertiesManager propsManager = planet.getPropertiesManager();
+ Map props = propsManager.getProperties();
+ request.setAttribute("PlanetProps", props);
+
+ // only set values for properties that are already defined
+ String propName = null;
+ PropertyData updProp = null;
+ String incomingProp = null;
+ Iterator propsIT = props.keySet().iterator();
+ while(propsIT.hasNext()) {
+ propName = (String) propsIT.next();
+ updProp = (PropertyData) props.get(propName);
+ incomingProp = request.getParameter(updProp.getName());
+
+ logger.debug("Checking property ["+propName+"]");
+
+ // some special treatment for booleans
+ // this is a bit hacky since we are assuming that any prop
+ // with a value of "true" or "false" is meant to be a boolean
+ // it may not always be the case, but we should be okay for now
+ if( updProp.getValue() != null // null check needed w/Oracle
+ && (updProp.getValue().equals("true") || updProp.getValue().equals("false"))) {
+
+ if(incomingProp == null || !incomingProp.equals("on"))
+ incomingProp = "false";
+ else
+ incomingProp = "true";
+ }
+
+ // only work on props that were submitted with the request
+ if(incomingProp != null) {
+ logger.debug("Setting new value for ["+propName+"]");
+
+ // NOTE: the old way had some locale sensitive way to do this??
+ updProp.setValue(incomingProp.trim());
+ }
+ }
+
+ // save it
+ propsManager.saveProperties(props);
+ planet.flush();
+
+ ActionMessages uiMessages = new ActionMessages();
+ uiMessages.add(null, new ActionMessage("weblogEdit.changesSaved"));
+ saveMessages(request, uiMessages);
+
+ } else {
+ forward = mapping.findForward("access-denied");
+ }
+
+ } catch (RollerPermissionsException e) {
+ errors.add(null, new ActionError("error.permissions.deniedSave"));
+ saveErrors(request, errors);
+ forward = mapping.findForward("access-denied");
+
+ } catch (RollerException e) {
+ logger.error(e);
+ errors.add(ActionErrors.GLOBAL_ERROR, new ActionError(
+ "error.update.rollerConfig",e.getClass().getName()));
+ saveErrors(request,errors);
+ }
+
+ return forward;
+ }
+
+
+// /** Refresh entries in backgrounded thread (for testing) */
+// public ActionForward refreshEntries(ActionMapping mapping,
// ActionForm actionForm, HttpServletRequest request,
// HttpServletResponse response) throws IOException, ServletException
// {
@@ -73,20 +206,14 @@
// BasePageModel pageModel = new BasePageModel(
// "planetConfig.pageTitle", request, response, mapping);
// request.setAttribute("model",pageModel);
-// PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
-// // TODO 4.0 PlanetConfigData config = planet.getConfiguration();
-// PlanetConfigForm form = (PlanetConfigForm)actionForm;
-// // TODO 4.0 if (config != null)
-// //{
-// //form.copyFrom(config, request.getLocale());
-// //}
-// //else
-// {
-// form.setTitle("Planet Roller");
-// form.setAdminEmail(RollerRuntimeConfig.getProperty("site.adminemail"));
-// form.setSiteURL(RollerRuntimeConfig.getProperty("site.absoluteurl"));
-// form.setCacheDir("/tmp");
-// }
+// Roller roller = RollerFactory.getRoller();
+// RefreshEntriesTask task = new RefreshEntriesTask();
+// roller.getThreadManager().executeInBackground(task);
+//
+// ActionMessages messages = new ActionMessages();
+// messages.add(null,
+// new ActionMessage("planetConfig.success.refreshed"));
+// saveMessages(request, messages);
// }
// else
// {
@@ -100,9 +227,9 @@
// }
// return forward;
// }
-
-// /** Save posted config form data */
-// public ActionForward saveConfig(ActionMapping mapping,
+//
+// /** Sync websites in backgrounded thread (for testing) */
+// public ActionForward syncWebsites(ActionMapping mapping,
// ActionForm actionForm, HttpServletRequest request,
// HttpServletResponse response) throws IOException, ServletException
// {
@@ -115,42 +242,14 @@
// BasePageModel pageModel = new BasePageModel(
// "planetConfig.pageTitle", request, response, mapping);
// request.setAttribute("model",pageModel);
-// PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
-// // TODO 4.0 PlanetConfigData config = planet.getConfiguration();
-// //if (config == null)
-// //{
-// //config = new PlanetConfigData();
-// //}
-// PlanetConfigForm form = (PlanetConfigForm) actionForm;
-// ActionErrors errors = validate(form);
-// if (errors.isEmpty())
-// {
-// // TODO 4.0 form.copyTo(config, request.getLocale());
-//
-// // the form copy is a little dumb and will set the id value
-// // to empty string if it didn't have a value before, which means
-// // that this object would not be considered new
-// // TODO 4.0 if(config.getId() != null && config.getId().trim().equals("")) {
-// //config.setId(null);
-// //}
-//
-// //planet.saveConfiguration(config);
-// if (planet.getGroup("external") == null)
-// {
-// PlanetGroupData group = new PlanetGroupData();
-// group.setHandle("external");
-// group.setTitle("external");
-// planet.saveGroup(group);
-// }
-// PlanetFactory.getPlanet().flush();
-// ActionMessages messages = new ActionMessages();
-// messages.add(null, new ActionMessage("planetConfig.success.saved"));
-// saveMessages(request, messages);
-// }
-// else
-// {
-// saveErrors(request, errors);
-// }
+// Roller roller = (Roller)RollerFactory.getRoller();
+// SyncWebsitesTask task = new SyncWebsitesTask();
+// task.init();
+// roller.getThreadManager().executeInBackground(task);
+// ActionMessages messages = new ActionMessages();
+// messages.add(null,
+// new ActionMessage("planetConfig.success.synced"));
+// saveMessages(request, messages);
// }
// else
// {
@@ -164,92 +263,7 @@
// }
// return forward;
// }
-
- /** Refresh entries in backgrounded thread (for testing) */
- public ActionForward refreshEntries(ActionMapping mapping,
- ActionForm actionForm, HttpServletRequest request,
- HttpServletResponse response) throws IOException, ServletException
- {
- ActionForward forward = mapping.findForward("planetConfig.page");
- try
- {
- RollerRequest rreq = RollerRequest.getRollerRequest(request);
- if (RollerSession.getRollerSession(request).isGlobalAdminUser())
- {
- BasePageModel pageModel = new BasePageModel(
- "planetConfig.pageTitle", request, response, mapping);
- request.setAttribute("model",pageModel);
- Roller roller = RollerFactory.getRoller();
- RefreshEntriesTask task = new RefreshEntriesTask();
- roller.getThreadManager().executeInBackground(task);
-
- ActionMessages messages = new ActionMessages();
- messages.add(null,
- new ActionMessage("planetConfig.success.refreshed"));
- saveMessages(request, messages);
- }
- else
- {
- forward = mapping.findForward("access-denied");
- }
- }
- catch (Exception e)
- {
- request.getSession().getServletContext().log("ERROR", e);
- throw new ServletException(e);
- }
- return forward;
- }
-
- /** Sync websites in backgrounded thread (for testing) */
- public ActionForward syncWebsites(ActionMapping mapping,
- ActionForm actionForm, HttpServletRequest request,
- HttpServletResponse response) throws IOException, ServletException
- {
- ActionForward forward = mapping.findForward("planetConfig.page");
- try
- {
- RollerRequest rreq = RollerRequest.getRollerRequest(request);
- if (RollerSession.getRollerSession(request).isGlobalAdminUser())
- {
- BasePageModel pageModel = new BasePageModel(
- "planetConfig.pageTitle", request, response, mapping);
- request.setAttribute("model",pageModel);
- Roller roller = (Roller)RollerFactory.getRoller();
- SyncWebsitesTask task = new SyncWebsitesTask();
- task.init();
- roller.getThreadManager().executeInBackground(task);
- ActionMessages messages = new ActionMessages();
- messages.add(null,
- new ActionMessage("planetConfig.success.synced"));
- saveMessages(request, messages);
- }
- else
- {
- forward = mapping.findForward("access-denied");
- }
- }
- catch (Exception e)
- {
- request.getSession().getServletContext().log("ERROR", e);
- throw new ServletException(e);
- }
- return forward;
- }
-// /** Validate config form, returns empty collection if all OK */
-// public ActionErrors validate(PlanetConfigForm form)
-// {
-// ActionErrors errors = new ActionErrors();
-// if (form.getProxyHost()!=null && form.getProxyHost().trim().length()>0)
-// {
-// if (form.getProxyPort()<1)
-// {
-// errors.add(null, new ActionError(
-// "planetConfig.error.badProxyPort"));
-// }
-// }
-// return errors;
-// }
+
}
Modified: incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetGroupsAction.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetGroupsAction.java?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetGroupsAction.java (original)
+++ incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetGroupsAction.java Tue Feb 20 09:49:24 2007
@@ -35,11 +35,9 @@
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;
import org.apache.roller.RollerException;
-import org.apache.roller.planet.business.Planet;
import org.apache.roller.planet.business.PlanetFactory;
import org.apache.roller.planet.business.PlanetManager;
-import org.apache.roller.business.Roller;
-import org.apache.roller.business.RollerFactory;
+import org.apache.roller.planet.pojos.PlanetData;
import org.apache.roller.planet.pojos.PlanetGroupData;
import org.apache.roller.planet.ui.admin.struts.forms.PlanetGroupForm;
import org.apache.roller.ui.core.BasePageModel;
@@ -73,12 +71,13 @@
RollerRequest rreq = RollerRequest.getRollerRequest(request);
if (RollerSession.getRollerSession(request).isGlobalAdminUser())
{
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
PlanetGroupForm form = (PlanetGroupForm)actionForm;
if (request.getParameter("groupHandle") != null)
{
- String feedUrl = request.getParameter("groupHandle");
- PlanetGroupData group = planet.getGroup(feedUrl);
+ String handle = request.getParameter("groupHandle");
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData group = pmgr.getGroup(defaultPlanet, handle);
form.copyFrom(group, request.getLocale());
}
else
@@ -141,12 +140,13 @@
RollerRequest rreq = RollerRequest.getRollerRequest(request);
if (RollerSession.getRollerSession(request).isGlobalAdminUser())
{
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
PlanetGroupForm form = (PlanetGroupForm)actionForm;
if (form.getHandle() != null)
{
- PlanetGroupData group = planet.getGroup(form.getHandle());
- planet.deleteGroup(group);
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData group = pmgr.getGroup(defaultPlanet, form.getHandle());
+ pmgr.deleteGroup(group);
PlanetFactory.getPlanet().flush();
// TODO: why release here?
PlanetFactory.getPlanet().release();
@@ -188,18 +188,20 @@
if (RollerSession.getRollerSession(request).isGlobalAdminUser())
{
PlanetGroupForm form = (PlanetGroupForm)actionForm;
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
- ActionErrors errors = validate(planet, form);
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ ActionErrors errors = validate(pmgr, form);
if (errors.isEmpty())
{
PlanetGroupData group = null;
if (form.getId() == null || form.getId().trim().length() == 0)
{
group = new PlanetGroupData();
+ group.setPlanet(defaultPlanet);
}
else
{
- group = planet.getGroupById(form.getId());
+ group = pmgr.getGroupById(form.getId());
}
form.copyTo(group, request.getLocale());
@@ -210,7 +212,7 @@
group.setId(null);
}
- planet.saveGroup(group);
+ pmgr.saveGroup(group);
PlanetFactory.getPlanet().flush();
ActionMessages messages = new ActionMessages();
@@ -275,33 +277,23 @@
{
super("planetGroups.pagetitle", request, response, mapping);
RollerRequest rreq = RollerRequest.getRollerRequest(request);
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
- PlanetGroupData externalGroup = planet.getGroup("external");
- if (externalGroup != null)
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData externalGroup = pmgr.getGroup("external");
+ Iterator allgroups = pmgr.getGroups(defaultPlanet).iterator();
+ while (allgroups.hasNext())
{
- Iterator allgroups = planet.getGroups().iterator();
- while (allgroups.hasNext())
- {
- PlanetGroupData agroup = (PlanetGroupData)allgroups.next();
- if ( !agroup.getHandle().equals("external")
- && !agroup.getHandle().equals("all"))
- {
- groups.add(agroup);
- }
- }
- }
- else
- {
- unconfigured = true;
+ PlanetGroupData agroup = (PlanetGroupData)allgroups.next();
+ if ( !agroup.getHandle().equals("external")
+ && !agroup.getHandle().equals("all"))
+ {
+ groups.add(agroup);
+ }
}
}
public List getGroups()
{
return groups;
- }
- public boolean isUnconfigured()
- {
- return unconfigured;
}
}
}
Modified: incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetSubscriptionsAction.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetSubscriptionsAction.java?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetSubscriptionsAction.java (original)
+++ incubator/roller/branches/roller_4.0/src/org/apache/roller/planet/ui/admin/struts/actions/PlanetSubscriptionsAction.java Tue Feb 20 09:49:24 2007
@@ -27,6 +27,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.roller.planet.business.PropertiesManager;
import org.apache.roller.planet.ui.admin.struts.forms.PlanetSubscriptionFormEx;
import org.apache.struts.action.ActionError;
import org.apache.struts.action.ActionErrors;
@@ -37,15 +38,13 @@
import org.apache.struts.action.ActionMessages;
import org.apache.struts.actions.DispatchAction;
import org.apache.roller.RollerException;
-import org.apache.roller.planet.business.Planet;
import org.apache.roller.planet.business.PlanetFactory;
import org.apache.roller.planet.business.PlanetManager;
+import org.apache.roller.planet.pojos.PlanetData;
import org.apache.roller.planet.util.Technorati;
-import org.apache.roller.business.Roller;
-import org.apache.roller.business.RollerFactory;
-// TODO 4.0 import org.apache.roller.planet.pojos.PlanetConfigData;
import org.apache.roller.planet.pojos.PlanetGroupData;
import org.apache.roller.planet.pojos.PlanetSubscriptionData;
+import org.apache.roller.planet.pojos.PropertyData;
import org.apache.roller.ui.core.BasePageModel;
import org.apache.roller.ui.core.RollerSession;
@@ -73,12 +72,12 @@
ActionForward forward = mapping.findForward("planetSubscriptions.page");
try {
if (RollerSession.getRollerSession(request).isGlobalAdminUser()) {
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
PlanetSubscriptionFormEx form = (PlanetSubscriptionFormEx)actionForm;
if (request.getParameter("feedUrl") != null) {
String feedUrl = request.getParameter("feedUrl");
PlanetSubscriptionData sub =
- planet.getSubscription(feedUrl);
+ pmgr.getSubscription(feedUrl);
form.copyFrom(sub, request.getLocale());
} else {
form.doReset(mapping, request);
@@ -88,7 +87,8 @@
groupHandle = (groupHandle == null) ? form.getGroupHandle() : groupHandle;
groupHandle = (groupHandle == null) ? "external" : groupHandle;
- PlanetGroupData targetGroup = planet.getGroup(groupHandle);
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData targetGroup = pmgr.getGroup(defaultPlanet, groupHandle);
form.setGroupHandle(groupHandle);
request.setAttribute("model",
new SubscriptionsPageModel(
@@ -110,7 +110,7 @@
ActionForward forward = mapping.findForward("planetSubscriptions.page");
try {
if (RollerSession.getRollerSession(request).isGlobalAdminUser()) {
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
PlanetSubscriptionFormEx form = (PlanetSubscriptionFormEx)actionForm;
form.doReset(mapping, request);
@@ -119,7 +119,8 @@
groupHandle = (groupHandle == null) ? form.getGroupHandle() : groupHandle;
groupHandle = (groupHandle == null) ? "external" : groupHandle;
- PlanetGroupData targetGroup = planet.getGroup(groupHandle);
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData targetGroup = pmgr.getGroup(defaultPlanet, groupHandle);
form.setGroupHandle(groupHandle);
request.setAttribute("model",
new SubscriptionsPageModel(
@@ -142,20 +143,21 @@
try {
//RollerRequest rreq = RollerRequest.getRollerRequest(request);
if (RollerSession.getRollerSession(request).isGlobalAdminUser()) {
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
PlanetSubscriptionFormEx form = (PlanetSubscriptionFormEx)actionForm;
if (form.getId() != null) {
PlanetSubscriptionData sub =
- planet.getSubscriptionById(form.getId());
+ pmgr.getSubscriptionById(form.getId());
String groupHandle = request.getParameter("groupHandle");
groupHandle = (groupHandle == null) ? form.getGroupHandle() : groupHandle;
groupHandle = (groupHandle == null) ? "external" : groupHandle;
- PlanetGroupData targetGroup = planet.getGroup(groupHandle);
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData targetGroup = pmgr.getGroup(defaultPlanet, groupHandle);
targetGroup.getSubscriptions().remove(sub);
- planet.deleteSubscription(sub);
+ pmgr.deleteSubscription(sub);
PlanetFactory.getPlanet().flush();
// TODO: why release here?
PlanetFactory.getPlanet().release();
@@ -189,26 +191,27 @@
HttpServletResponse response) throws IOException, ServletException {
ActionForward forward = mapping.findForward("planetSubscriptions.page");
try {
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager pmgr = PlanetFactory.getPlanet().getPlanetManager();
PlanetSubscriptionFormEx form = (PlanetSubscriptionFormEx)actionForm;
String groupHandle = request.getParameter("groupHandle");
groupHandle = (groupHandle == null) ? form.getGroupHandle() : groupHandle;
groupHandle = (groupHandle == null) ? "external" : groupHandle;
- PlanetGroupData targetGroup = planet.getGroup(groupHandle);
+ PlanetData defaultPlanet = pmgr.getPlanet("default_planet");
+ PlanetGroupData targetGroup = pmgr.getGroup(defaultPlanet, groupHandle);
if (RollerSession.getRollerSession(request).isGlobalAdminUser()) {
ActionMessages messages = new ActionMessages();
PlanetSubscriptionData sub = null;
- ActionErrors errors = validate(planet, form);
+ ActionErrors errors = validate(pmgr, form);
if (errors.isEmpty()) {
if (form.getId() == null || form.getId().trim().length() == 0) {
// Adding new subscription to group
// But, does subscription to that feed already exist?
if (form.getFeedURL() != null) {
- sub = planet.getSubscription(form.getFeedURL());
+ sub = pmgr.getSubscription(form.getFeedURL());
}
if (sub != null) {
// Yes, we'll use it instead
@@ -226,17 +229,17 @@
sub.setId(null);
}
- planet.saveSubscription(sub);
+ pmgr.saveSubscription(sub);
}
targetGroup.getSubscriptions().add(sub);
} else {
// User editing an existing subscription within a group
- sub = planet.getSubscriptionById(form.getId());
+ sub = pmgr.getSubscriptionById(form.getId());
form.copyTo(sub, request.getLocale());
}
form.setGroupHandle(groupHandle);
- planet.saveGroup(targetGroup);
+ pmgr.saveGroup(targetGroup);
PlanetFactory.getPlanet().flush();
messages.add(null,
@@ -252,32 +255,39 @@
request.setAttribute("model",
new SubscriptionsPageModel(
targetGroup, request, response, mapping, form));
- } catch (RollerException e) {
+ } catch (RollerException re) {
ActionErrors errors = new ActionErrors();
errors.add(null, new ActionError(
- "planetSubscriptions.error.duringSave",e.getRootCauseMessage()));
+ "planetSubscriptions.error.duringSave", re.getRootCauseMessage()));
saveErrors(request, errors);
+ } catch (Exception e) {
+ ActionErrors errors = new ActionErrors();
+ errors.add(null, new ActionError(
+ "planetSubscriptions.error.duringSave", e.getMessage()));
+ saveErrors(request, errors);
+ logger.error("Unexpected error saving subscription", e);
}
return forward;
}
/** Validate posted subscription, fill in blanks via Technorati */
private ActionErrors validate(
- PlanetManager planet, PlanetSubscriptionFormEx form) {
+ PlanetManager pmgr, PlanetSubscriptionFormEx form) {
String technoratiTitle = null;
String technoratiFeedUrl = null;
int inboundlinks = -1;
int inboundblogs = -1;
if (form.getSiteURL()!=null && form.getSiteURL().trim().length() > 0) {
try {
- // TODO 4.0 PlanetConfigData config = planet.getConfiguration();
+ PropertiesManager props = PlanetFactory.getPlanet().getPropertiesManager();
Technorati technorati = null;
- //if (config.getProxyHost()!=null && config.getProxyPort() > 0) {
- //technorati = new Technorati(
- //config.getProxyHost(), config.getProxyPort());
- //} else {
+ PropertyData proxyHostProp = props.getProperty("proxyHost");
+ PropertyData proxyPortProp = props.getProperty("proxyPort");
+ if (proxyHostProp != null && proxyPortProp != null) {
+ technorati = new Technorati(proxyHostProp.getValue(), Integer.parseInt(proxyPortProp.getValue()));
+ } else {
technorati = new Technorati();
- //}
+ }
Technorati.Result result =
technorati.getBloginfo(form.getSiteURL());
technoratiTitle = result.getWeblog().getName();
@@ -347,10 +357,6 @@
public List getSubscriptions() {
return subscriptions;
- }
-
- public boolean isUnconfigured() {
- return unconfigured;
}
}
}
Modified: incubator/roller/branches/roller_4.0/src/org/apache/roller/ui/core/struts/actions/CreateWebsiteAction.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/src/org/apache/roller/ui/core/struts/actions/CreateWebsiteAction.java?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/src/org/apache/roller/ui/core/struts/actions/CreateWebsiteAction.java (original)
+++ incubator/roller/branches/roller_4.0/src/org/apache/roller/ui/core/struts/actions/CreateWebsiteAction.java Tue Feb 20 09:49:24 2007
@@ -142,14 +142,14 @@
} else try {
RollerContext rollerContext = RollerContext.getRollerContext();
UserData user =
- RollerSession.getRollerSession(request).getAuthenticatedUser();
+ RollerSession.getRollerSession(request).getAuthenticatedUser();
UserManager mgr = roller.getUserManager();
if (!RollerConfig.getBooleanProperty("groupblogging.enabled")) {
List permissions = roller.getUserManager().getAllPermissions(user);
if (permissions.size() > 0) {
- // sneaky user trying to get around 1 blog limit that applies
- // only when group blogging is disabled
+ // sneaky user trying to get around 1 blog limit that
+ // applies only when group blogging is disabled
return mapping.findForward("access-denied");
}
}
@@ -184,8 +184,7 @@
new ActionMessage("createWebsite.created", form.getHandle()));
saveMessages(request, msgs);
} catch (RollerException e) {
- errors.add(ActionErrors.GLOBAL_ERROR,
- new ActionError(e.getMessage()));
+ errors.add(ActionErrors.GLOBAL_ERROR, new ActionError("application.unexpectedError"));
saveErrors(request, errors);
mLogger.error("ERROR in createWebsite", e);
}
Modified: incubator/roller/branches/roller_4.0/testdata/JPAEMF.properties
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/testdata/JPAEMF.properties?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/testdata/JPAEMF.properties (original)
+++ incubator/roller/branches/roller_4.0/testdata/JPAEMF.properties Tue Feb 20 09:49:24 2007
@@ -1,6 +1,6 @@
-toplink.jdbc.driver=org.hsqldb.jdbcDriver
-toplink.jdbc.url=jdbc:hsqldb:hsql://localhost:3219
-toplink.jdbc.user=sa
-toplink.jdbc.password=
+toplink.jdbc.driver=org.apache.derby.jdbc.ClientDriver
+toplink.jdbc.url=jdbc:derby://localhost:3219/roller
+toplink.jdbc.user=APP
+toplink.jdbc.password=APP
#toplink.ddl-generation=drop-and-create-tables
toplink.logging.level=FINEST
Modified: incubator/roller/branches/roller_4.0/tests/org/apache/roller/business/CommentTest.java
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/tests/org/apache/roller/business/CommentTest.java?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/tests/org/apache/roller/business/CommentTest.java (original)
+++ incubator/roller/branches/roller_4.0/tests/org/apache/roller/business/CommentTest.java Tue Feb 20 09:49:24 2007
@@ -18,6 +18,8 @@
package org.apache.roller.business;
+import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.List;
import junit.framework.Test;
import junit.framework.TestCase;
@@ -26,8 +28,6 @@
import org.apache.commons.logging.LogFactory;
import org.apache.roller.RollerException;
import org.apache.roller.TestUtils;
-import org.apache.roller.business.RollerFactory;
-import org.apache.roller.business.WeblogManager;
import org.apache.roller.pojos.CommentData;
import org.apache.roller.pojos.UserData;
import org.apache.roller.pojos.WeblogEntryData;
@@ -244,6 +244,9 @@
umgr.removeWebsite(TestUtils.getManagedWebsite(weblog));
TestUtils.endSession(true);
} catch (RollerException e) {
+ PrintWriter pw = new PrintWriter(new StringWriter());
+ e.printStackTrace(pw);
+ log.info(pw.toString());
ex = e;
}
assertNull(ex);
Modified: incubator/roller/branches/roller_4.0/tools/roller-core/roller-core.jar
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/tools/roller-core/roller-core.jar?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
Binary files - no diff available.
Modified: incubator/roller/branches/roller_4.0/tools/roller-planet/roller-planet-business.jar
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/tools/roller-planet/roller-planet-business.jar?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
Binary files - no diff available.
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/classes/ApplicationResources.properties
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/classes/ApplicationResources.properties?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/classes/ApplicationResources.properties (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/classes/ApplicationResources.properties Tue Feb 20 09:49:24 2007
@@ -22,6 +22,7 @@
application.no=No
application.true=True
application.false=False
+application.unexpectedError=Unexpected error. Exception has been recorded in log file.
# ------------------------------------------------------------- BookmarkForm.jsp
@@ -1024,43 +1025,17 @@
planet.title.unconfigured=Planet Aggregator (unconfigured)
planet.description.unconfigured=Planet aggregator is enabled but has not yet been configured.
-planetConfig.pageTitle=Planet Configuration
+planetConfig.title=Planet configuration
planetConfig.subtitle=Configure Roller's built-in newsfeed aggregator.
-planetConfig.prompt=Set the title, description, email address and site URL \
-to be included in newsfeeds produced by the aggregator. You can also setup a \
-proxy if one is required required by your network.
-planetConfig.description=Description
-planetConfig.title=Planet Configuration
-planetConfig.adminEmail=Admin E-mail
-planetConfig.cacheDir=Cache Directory
-planetConfig.siteUrl=Site URL
-planetConfig.proxyHost=Proxy Host URL
-planetConfig.proxyPort=Proxy Host Port
-
-planetConfig.title.control=Experimental Planet Control
-planetConfig.prompt.control=Launch background tasks (for testing purposes only)
-
-planetConfig.numWebsites=Number of Roller hosted weblogs
-planetConfig.numSubscrtions=Number of Roller hosted subscriptions
-
-planetConfig.button.post=Save
-planetConfig.button.refreshEntries=Refresh Entries
-planetConfig.button.syncWebsites=Synchronize Roller weblogs
-
-planetConfig.success.saved=Configuration saved
-planetConfig.success.refreshed=Refresh operation started
-planetConfig.success.synced=weblog synchronization started
-planetConfig.error.cacheDirNotFound=Cache directory not found
-planetConfig.error.cacheDirNotWritable=Cache directory not writable
-planetConfig.error.badProxyPort=Proxy port is invalid
-
-planetConfig.tip.title=Title to be used in newsfeed header
-planetConfig.tip.description=Description to be used in newsfeed header
-planetConfig.tip.adminEmail=E-mail address to be used in newsfeed header
-planetConfig.tip.cacheDir=Directory where newsfeed data will be cached
-planetConfig.tip.siteUrl=URL to be used in newsfeed header
-planetConfig.tip.proxyHost=URL of proxy host (if required)
-planetConfig.tip.proxyPort=Port of proxy host (if required)
+
+ConfigForm.siteSettings=Planet Configuration
+ConfigForm.title=Title of Planet site
+ConfigForm.description=Desrcription of Planet site
+ConfigForm.adminName=Name of Planet site administrator
+ConfigForm.adminEmail=Email address of Planet site adminsitrator
+ConfigForm.absoluteUrl=Absolute URL of Planet-site
+ConfigForm.proxyHost=Proxy Host URL
+ConfigForm.proxyPort=Proxy Host Port
# ----------------------------------------------------- PlanetSubscriptions.jsp
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/classes/JPAEMF.properties
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/classes/JPAEMF.properties?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/classes/JPAEMF.properties (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/classes/JPAEMF.properties Tue Feb 20 09:49:24 2007
@@ -1,7 +1,5 @@
toplink.jdbc.driver=org.apache.derby.jdbc.ClientDriver
-toplink.jdbc.url=jdbc:derby://localhost:3219/roller
-#toplink.jdbc.url=jdbc:derby://localhost:1527/roller-jpa
+toplink.jdbc.url=jdbc:derby://localhost:1527/roller-jpa
toplink.jdbc.user=APP
toplink.jdbc.password=APP
toplink.logging.level=FINE
-
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planet-hibernate.cfg.xml
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planet-hibernate.cfg.xml?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planet-hibernate.cfg.xml (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planet-hibernate.cfg.xml Tue Feb 20 09:49:24 2007
@@ -22,7 +22,7 @@
<hibernate-configuration>
<session-factory>
- <!-- You can override this via the jdbc.XXX properties in roller-custom.properties -->
+ <!-- You can override this via the jdbc.XXX properties in planet-custom.properties -->
<property name="connection.datasource">java:comp/env/jdbc/rollerdb</property>
<!-- You can override this via the hibernate.dialect property in roller-custom.properties -->
@@ -42,7 +42,8 @@
<!-- Map Planet pojo classes -->
- <mapping resource="org/apache/roller/planet/pojos/PlanetConfigData.hbm.xml" />
+ <mapping resource="org/apache/roller/planet/pojos/PlanetData.hbm.xml" />
+ <mapping resource="org/apache/roller/planet/pojos/PropertyData.hbm.xml" />
<mapping resource="org/apache/roller/planet/pojos/PlanetGroupData.hbm.xml" />
<mapping resource="org/apache/roller/planet/pojos/PlanetEntryData.hbm.xml" />
<mapping resource="org/apache/roller/planet/pojos/PlanetSubscriptionData.hbm.xml" />
Added: incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planetRuntimeConfigDefs.xml
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planetRuntimeConfigDefs.xml?view=auto&rev=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planetRuntimeConfigDefs.xml (added)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/classes/planetRuntimeConfigDefs.xml Tue Feb 20 09:49:24 2007
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. The ASF licenses this file to You
+ under the Apache License, Version 2.0 (the "License"); you may not
+ use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License. For additional information regarding
+ copyright in this work, please see the NOTICE file in the top level
+ directory of this distribution.
+-->
+
+<!--
+ STOP!!!! This is NOT a Roller configuration file!!
+ Users of Roller should never need to edit this file. The properties listed
+ here are changed on the Roller Admin Settings page.
+
+ This file defines what properties are made available to get/set
+ during the running of the Roller application. These properties
+ are stored in the database and the code *must* be able to make
+ use of changed values during runtime.
+
+ Also included in this file is meta-data which defines what class
+ of property we are dealing with, it's default value, and information
+ on how to populate the display that allows for changing the value.
+
+ NOTE: order does matter!! the display is populated in a linear fashion
+ starting from the first display-group and moving down.
+-->
+
+<runtime-configs>
+
+ <!--
+ The global-properties represents the base set of roller runtime properties.
+ In *most* cases you should be putting your properties here and they can
+ then be changed from the admin configuration page at ...
+ /admin/rollerConfig.do
+ -->
+ <config-def name="global-properties">
+
+ <!-- Site Settings Group -->
+ <display-group name="siteSettings" key="ConfigForm.siteSettings" >
+
+ <property-def name="site.name" key="ConfigForm.title">
+ <type>string</type>
+ <default-value>Roller Planet</default-value>
+ </property-def>
+ <property-def name="site.description" key="ConfigForm.description">
+ <type>string</type>
+ <default-value>A default install of the Roller Planet open source aggregation server</default-value>
+ </property-def>
+ <property-def name="site.adminname" key="ConfigForm.adminName">
+ <type>string</type>
+ <default-value></default-value>
+ </property-def>
+ <property-def name="site.adminemail" key="ConfigForm.adminEmail">
+ <type>string</type>
+ <default-value></default-value>
+ </property-def>
+ <property-def name="site.absoluteurl" key="ConfigForm.absoluteUrl">
+ <type>string</type>
+ <default-value></default-value>
+ </property-def>
+ <property-def name="site.proxyhost" key="ConfigForm.proxyHost">
+ <type>string</type>
+ <default-value></default-value>
+ </property-def>
+ <property-def name="site.proxyport" key="ConfigForm.proxyPort">
+ <type>string</type>
+ <default-value>0</default-value>
+ </property-def>
+
+ </display-group >
+
+ </config-def>
+
+</runtime-configs>
Added: incubator/roller/branches/roller_4.0/web/WEB-INF/classes/struts.properties
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/classes/struts.properties?view=auto&rev=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/classes/struts.properties (added)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/classes/struts.properties Tue Feb 20 09:49:24 2007
@@ -0,0 +1,4 @@
+struts.objectFactory = spring
+struts.devMode = false
+#struts.action.extension = do
+struts.enable.DynamicMethodInvocation = false
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetConfig.jsp Tue Feb 20 09:49:24 2007
@@ -15,92 +15,90 @@
copyright in this work, please see the NOTICE file in the top level
directory of this distribution.
-->
+<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="x" %>
<%@ include file="/WEB-INF/jsps/taglibs.jsp" %>
-<script type="text/javascript">
-<!--
-function refreshEntries()
-{
- document.planetConfigForm.method.value = "refreshEntries";
- document.planetConfigForm.submit();
-}
-function syncWebsites()
-{
- document.planetConfigForm.method.value = "syncWebsites";
- document.planetConfigForm.submit();
-}
-// -->
-</script>
-
-<html:form action="/roller-ui/admin/planetConfig" method="post">
- <html:hidden property="id" />
- <html:hidden property="cacheDir" />
- <html:hidden property="templateDir" />
- <html:hidden property="outputDir" />
- <html:hidden property="method" value="saveConfig" />
-
- <p class="subtitle"><fmt:message key="planetConfig.subtitle" /></p>
- <p><fmt:message key="planetConfig.prompt" /></p>
-
- <table class="formtable">
- <tr>
- <td class="label"><label for="title" /><fmt:message key="planetConfig.title" /></label></td>
- <td class="field"><html:text property="title" size="40" maxlength="255" /></td>
- <td class="description"><fmt:message key="planetConfig.tip.title" /></td>
- </tr>
-
- <tr>
- <td class="label"><label for="description" /><fmt:message key="planetConfig.description" /></label></td>
- <td class="field"><html:text property="description" size="40" maxlength="255" /></td>
- <td class="description"><fmt:message key="planetConfig.tip.description" /></td>
- </tr>
-
- <tr>
- <td class="label"><label for="siteURL" /><fmt:message key="planetConfig.siteUrl" /></label></td>
- <td class="field"><html:text property="siteURL" size="40" maxlength="255" /></td>
- <td class="description"><fmt:message key="planetConfig.tip.siteUrl" /></td>
- </tr>
-
- <tr>
- <td class="label"><label for="adminEmail" /><fmt:message key="planetConfig.adminEmail" /></label></td>
- <td class="field"><html:text property="adminEmail" size="40" maxlength="255" /></td>
- <td class="description"><fmt:message key="planetConfig.tip.adminEmail" /></td>
- </tr>
-
- <tr>
- <td class="label"><label for="proxyHost" /><fmt:message key="planetConfig.proxyHost" /></label></td>
- <td class="field"><html:text property="proxyHost" size="40" maxlength="255" /></td>
- <td class="description"><fmt:message key="planetConfig.tip.proxyHost" /></td>
- </tr>
-
- <tr>
- <td class="label"><label for="proxyPort" /><fmt:message key="planetConfig.proxyPort" /></label></td>
- <td class="field"><html:text property="proxyPort" size="6" maxlength="6" /></td>
- <td class="description"><fmt:message key="planetConfig.tip.proxyPort" /></td>
- </tr>
+<%-- Start by parsing our config defs using the jstl xml toolkit --%>
+<%-- Then we'll progress through the config defs and print out the form --%>
+<x:parse var="configDefs">
+ <%= org.apache.roller.planet.config.PlanetRuntimeConfig.getRuntimeConfigDefsAsString() %>
+</x:parse>
- </table>
- <br />
- <div class="control">
- <input type="submit" value='<fmt:message key="planetConfig.button.post" />' />
- </div>
-
- <br />
- <h3><fmt:message key="planetConfig.title.control" /></h3>
- <p><i><fmt:message key="planetConfig.prompt.control" /></i></p>
-
- <input type="button" name="refresh"
- value='<fmt:message key="planetConfig.button.refreshEntries" />'
- onclick="refreshEntries()" />
-
- <input type="button" name="sync"
- value='<fmt:message key="planetConfig.button.syncWebsites" />'
- onclick="syncWebsites()" />
+<roller:StatusMessage/>
-</html:form>
+<p class="subtitle"><fmt:message key="planetConfig.subtitle" /></a>
+<p><fmt:message key="configForm.prompt" /></a>
+<form action="planetConfig.do" method="post">
+<input type="hidden" name="method" value="update">
+ <table class="formtableNoDesc">
+
+ <x:forEach select="$configDefs//config-def[@name='global-properties']/display-group">
+ <c:set var="displayGroupKey"><x:out select="@key"/></c:set>
+
+ <tr>
+ <td colspan="3"><h2><fmt:message key="${displayGroupKey}" /></h2></td>
+ </tr>
+
+ <x:forEach select="property-def">
+ <c:set var="propLabelKey"><x:out select="@key"/></c:set>
+ <c:set var="name"><x:out select="@name"/></c:set>
+
+ <tr>
+ <td class="label"><fmt:message key="${propLabelKey}" /></td>
+
+ <%-- choose the right html input element for the display --%>
+ <x:choose>
+
+ <%-- "string" type means use a simple textbox --%>
+ <x:when select="type='string'">
+ <td class="field"><input type="text" name='<c:out value="${name}"/>' value='<c:out value="${PlanetProps[name].value}"/>' size="35" /></td>
+ </x:when>
+
+ <%-- "text" type means use a full textarea --%>
+ <x:when select="type='text'">
+ <td class="field">
+ <textarea name='<c:out value="${name}"/>' rows="<x:out select="rows"/>" cols="<x:out select="cols"/>"><c:out value="${PlanetProps[name].value}"/></textarea>
+ </td>
+ </x:when>
+
+ <%-- "boolean" type means use a checkbox --%>
+ <x:when select="type='boolean'">
+ <c:choose>
+ <c:when test="${PlanetProps[name].value eq 'true'}">
+ <td class="field"><input type="checkbox" name='<c:out value="${name}"/>' CHECKED></td>
+ </c:when>
+ <c:otherwise>
+ <td class="field"><input type="checkbox" name='<c:out value="${name}"/>'></td>
+ </c:otherwise>
+ </c:choose>
+ </x:when>
+
+ <%-- if it's something we don't understand then use textbox --%>
+ <x:otherwise>
+ <td class="field"><input type="text" name='<c:out value="${name}"/>' size="50" /></td>
+ </x:otherwise>
+ </x:choose>
+
+ <td class="description"><%-- <fmt:message key="" /> --%></td>
+ </tr>
+
+ </x:forEach>
+
+ <tr>
+ <td colspan="2"> </td>
+ </tr>
+
+ </x:forEach>
+ </table>
+
+ <div class="control">
+ <input class="buttonBox" type="submit" value="<fmt:message key="configForm.save"/>"/>
+ </div>
+
+<form>
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetGroups.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetGroups.jsp?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetGroups.jsp (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetGroups.jsp Tue Feb 20 09:49:24 2007
@@ -30,118 +30,114 @@
}
// -->
</script>
-<c:if test="${!(model.unconfigured)}" >
- <p class="subtitle"><fmt:message key="planetGroups.subtitle" /></p>
+<p class="subtitle"><fmt:message key="planetGroups.subtitle" /></p>
- <p>
- <c:if test="${empty planetSubscriptionForm.id}" >
- <fmt:message key="planetGroups.prompt.add" />
- </c:if>
- <c:if test="${!empty planetSubscriptionForm.id}" >
- <fmt:message key="planetGroups.prompt.edit" />
- </c:if>
- </p>
-
- <html:form action="/roller-ui/admin/planetGroups" method="post">
- <html:hidden property="method" value="saveGroup" />
- <html:hidden property="id" />
-
- <div class="formrow">
- <label for="title" class="formrow" />
- <fmt:message key="planetGroups.title" /></label>
- <html:text property="title" size="40" maxlength="255" />
- <img src="../images/help.png" alt="help"
- title='<fmt:message key="planetGroups.tip.title" />' />
- </div>
-
- <div class="formrow">
- <label for="handle" class="formrow" />
- <fmt:message key="planetGroups.handle" /></label>
- <html:text property="handle" size="40" maxlength="255" />
- <img src="../images/help.png" alt="help"
- title='<fmt:message key="planetGroups.tip.handle" />' />
- </div>
-
- <p />
- <div class="formrow">
- <label class="formrow" /> </label>
- <input type="submit"
- value='<fmt:message key="planetGroups.button.save" />' />
-
- <input type="button"
- value='<fmt:message key="planetGroups.button.cancel" />'
- onclick="cancelEditing()"/>
- <c:if test="${!empty planetGroupForm.id}" >
-
- <input type="button"
- value='<fmt:message key="planetGroups.button.delete" />'
- onclick="deleteGroup()" />
- </c:if>
- </div>
-
- </html:form>
-
- <br style="clear:left" />
-
- <h2><fmt:message key="planetGroups.existingTitle" /></h2>
- <p><i><fmt:message key="planetGroups.existingPrompt" /></i></p>
-
- <table class="rollertable">
- <tr class="rHeaderTr">
- <th class="rollertable" width="30%">
- <fmt:message key="planetGroups.column.title" />
- </th>
- <th class="rollertable" width="50%">
- <fmt:message key="planetGroups.column.handle" />
- </th>
- <th class="rollertable" width="10%">
- <fmt:message key="planetGroups.column.edit" />
- </th>
- <th class="rollertable" width="10%">
- <fmt:message key="planetGroups.column.subscriptions" />
- </th>
- </tr>
- <c:forEach var="group" items="${model.groups}" >
- <roller:row oddStyleClass="rollertable_odd" evenStyleClass="rollertable_even">
-
- <td class="rollertable">
- <c:out value="${group.title}" />
- </td>
-
- <td class="rollertable">
- <c:out value="${group.handle}" />
- </td>
-
- <td class="rollertable">
- <roller:link page="/roller-ui/admin/planetGroups.do">
- <roller:linkparam
- id="method" value="getGroups" />
- <roller:linkparam
- id="groupHandle" name="group" property="handle" />
- <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon"
- title="<fmt:message key='planetGroups.edit.tip' />" />
- </roller:link>
- </td>
-
- <td class="rollertable">
- <roller:link page="/roller-ui/admin/planetSubscriptions.do">
- <roller:linkparam
- id="method" value="getSubscriptions" />
- <roller:linkparam
- id="groupHandle" name="group" property="handle" />
- <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon"
- title="<fmt:message key='planetGroups.subscriptions.tip' />" />
- </roller:link>
- </td>
-
- </roller:row>
- </c:forEach>
- </table>
+<p>
+<c:if test="${empty planetSubscriptionForm.id}" >
+ <fmt:message key="planetGroups.prompt.add" />
</c:if>
-<c:if test="${model.unconfigured}" >
- <fmt:message key="planetGroups.unconfigured" />
+<c:if test="${!empty planetSubscriptionForm.id}" >
+ <fmt:message key="planetGroups.prompt.edit" />
</c:if>
+</p>
+
+<html:form action="/roller-ui/admin/planetGroups" method="post">
+ <html:hidden property="method" value="saveGroup" />
+ <html:hidden property="id" />
+
+ <div class="formrow">
+ <label for="title" class="formrow" />
+ <fmt:message key="planetGroups.title" /></label>
+ <html:text property="title" size="40" maxlength="255" />
+ <img src="../images/help.png" alt="help"
+ title='<fmt:message key="planetGroups.tip.title" />' />
+ </div>
+
+ <div class="formrow">
+ <label for="handle" class="formrow" />
+ <fmt:message key="planetGroups.handle" /></label>
+ <html:text property="handle" size="40" maxlength="255" />
+ <img src="../images/help.png" alt="help"
+ title='<fmt:message key="planetGroups.tip.handle" />' />
+ </div>
+
+ <p />
+ <div class="formrow">
+ <label class="formrow" /> </label>
+ <input type="submit"
+ value='<fmt:message key="planetGroups.button.save" />' />
+
+ <input type="button"
+ value='<fmt:message key="planetGroups.button.cancel" />'
+ onclick="cancelEditing()"/>
+ <c:if test="${!empty planetGroupForm.id}" >
+
+ <input type="button"
+ value='<fmt:message key="planetGroups.button.delete" />'
+ onclick="deleteGroup()" />
+ </c:if>
+ </div>
+
+</html:form>
+
+<br style="clear:left" />
+
+<h2><fmt:message key="planetGroups.existingTitle" /></h2>
+<p><i><fmt:message key="planetGroups.existingPrompt" /></i></p>
+
+<table class="rollertable">
+ <tr class="rHeaderTr">
+ <th class="rollertable" width="30%">
+ <fmt:message key="planetGroups.column.title" />
+ </th>
+ <th class="rollertable" width="50%">
+ <fmt:message key="planetGroups.column.handle" />
+ </th>
+ <th class="rollertable" width="10%">
+ <fmt:message key="planetGroups.column.edit" />
+ </th>
+ <th class="rollertable" width="10%">
+ <fmt:message key="planetGroups.column.subscriptions" />
+ </th>
+ </tr>
+ <c:forEach var="group" items="${model.groups}" >
+ <roller:row oddStyleClass="rollertable_odd" evenStyleClass="rollertable_even">
+
+ <td class="rollertable">
+ <c:out value="${group.title}" />
+ </td>
+
+ <td class="rollertable">
+ <c:out value="${group.handle}" />
+ </td>
+
+ <td class="rollertable">
+ <roller:link page="/roller-ui/admin/planetGroups.do">
+ <roller:linkparam
+ id="method" value="getGroups" />
+ <roller:linkparam
+ id="groupHandle" name="group" property="handle" />
+ <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon"
+ title="<fmt:message key='planetGroups.edit.tip' />" />
+ </roller:link>
+ </td>
+
+ <td class="rollertable">
+ <roller:link page="/roller-ui/admin/planetSubscriptions.do">
+ <roller:linkparam
+ id="method" value="getSubscriptions" />
+ <roller:linkparam
+ id="groupHandle" name="group" property="handle" />
+ <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon"
+ title="<fmt:message key='planetGroups.subscriptions.tip' />" />
+ </roller:link>
+ </td>
+
+ </roller:row>
+ </c:forEach>
+</table>
+
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/admin/PlanetSubscriptions.jsp Tue Feb 20 09:49:24 2007
@@ -30,141 +30,133 @@
}
// -->
</script>
-<c:if test="${!(model.unconfigured)}" >
- <h1>
- <fmt:message key="planetSubscriptions.title" />
+<h1>
+ <fmt:message key="planetSubscriptions.title" />
+ <c:if test='${planetSubscriptionFormEx.groupHandle != "external"}' >
+ [group: <c:out value="${planetSubscriptionFormEx.groupHandle}" />]
+ </c:if>
+</h1>
+
+<c:choose>
+ <c:when test='${empty planetSubscriptionFormEx.id && planetSubscriptionFormEx.groupHandle == "external"}' >
+ <p class="subtitle"><fmt:message key="planetSubscriptions.subtitle.addMain" /></p>
+ <p><fmt:message key="planetSubscriptions.prompt.addMain" /></p>
+ </c:when>
+ <c:when test='${empty planetSubscriptionFormEx.id && planetSubscriptionFormEx.groupHandle != "external"}' >
+ <p class="subtitle">
+ <fmt:message key="planetSubscriptions.subtitle.add" >
+ <fmt:param value="${planetSubscriptionFormEx.groupHandle}" />
+ </fmt:message>
+ </p>
+ <p><fmt:message key="planetSubscriptions.prompt.add" /></p>
+ </c:when>
+ <c:when test="${!empty planetSubscriptionFormEx.id}" >
+ <p class="subtitle"><fmt:message key="planetSubscriptions.subtitle.edit" /></p>
+ <p><fmt:message key="planetSubscriptions.prompt.edit" /></p>
+ </c:when>
+</c:choose>
+
+<html:form action="/roller-ui/admin/planetSubscriptions" method="post">
+ <html:hidden property="method" value="saveSubscription" />
+ <html:hidden property="id" />
+ <html:hidden property="groupHandle" />
+ <html:hidden property="inboundlinks" />
+ <html:hidden property="inboundblogs" />
+
+ <div class="formrow">
+ <label for="title" class="formrow" />
+ <fmt:message key="planetSubscription.title" /></label>
+ <html:text property="title" size="40" maxlength="255" />
+ <img src="../images/help.png" alt="help"
+ title='<fmt:message key="planetSubscription.tip.title" />' />
+ </div>
+
+ <div class="formrow">
+ <label for="feedURL" class="formrow" />
+ <fmt:message key="planetSubscription.feedUrl" /></label>
+ <html:text property="feedURL" size="40" maxlength="255" />
+ <img src="../images/help.png" alt="help"
+ title='<fmt:message key="planetSubscription.tip.feedUrl" />' />
+ </div>
+
+ <div class="formrow">
+ <label for="siteURL" class="formrow" />
+ <fmt:message key="planetSubscription.siteUrl" /></label>
+ <html:text property="siteURL" size="40" maxlength="255" />
+ <img src="../images/help.png" alt="help"
+ title='<fmt:message key="planetSubscription.tip.siteUrl" />' />
+ </div>
+
+ <p />
+ <div class="formrow">
+ <label class="formrow" /> </label>
+ <input type="submit"
+ value='<fmt:message key="planetSubscriptions.button.save" />' />
+
+ <input type="button"
+ value='<fmt:message key="planetSubscriptions.button.cancel" />'
+ onclick="cancelEditing()"/>
+ <c:if test="${!empty planetSubscriptionFormEx.id}" >
+
+ <input type="button"
+ value='<fmt:message key="planetSubscriptions.button.delete" />'
+ onclick="deleteSubscription()" />
+ </c:if>
+ </div>
+
+ <br style="clear:left" />
+
+ <h2>
+ <fmt:message key="planetSubscriptions.existingTitle" />
<c:if test='${planetSubscriptionFormEx.groupHandle != "external"}' >
[group: <c:out value="${planetSubscriptionFormEx.groupHandle}" />]
- </c:if>
- </h1>
-
- <c:choose>
- <c:when test='${empty planetSubscriptionFormEx.id && planetSubscriptionFormEx.groupHandle == "external"}' >
- <p class="subtitle"><fmt:message key="planetSubscriptions.subtitle.addMain" /></p>
- <p><fmt:message key="planetSubscriptions.prompt.addMain" /></p>
- </c:when>
- <c:when test='${empty planetSubscriptionFormEx.id && planetSubscriptionFormEx.groupHandle != "external"}' >
- <p class="subtitle">
- <fmt:message key="planetSubscriptions.subtitle.add" >
- <fmt:param value="${planetSubscriptionFormEx.groupHandle}" />
- </fmt:message>
- </p>
- <p><fmt:message key="planetSubscriptions.prompt.add" /></p>
- </c:when>
- <c:when test="${!empty planetSubscriptionFormEx.id}" >
- <p class="subtitle"><fmt:message key="planetSubscriptions.subtitle.edit" /></p>
- <p><fmt:message key="planetSubscriptions.prompt.edit" /></p>
- </c:when>
- </c:choose>
-
- <html:form action="/roller-ui/admin/planetSubscriptions" method="post">
- <html:hidden property="method" value="saveSubscription" />
- <html:hidden property="id" />
- <html:hidden property="groupHandle" />
- <html:hidden property="inboundlinks" />
- <html:hidden property="inboundblogs" />
-
- <div class="formrow">
- <label for="title" class="formrow" />
- <fmt:message key="planetSubscription.title" /></label>
- <html:text property="title" size="40" maxlength="255" />
- <img src="../images/help.png" alt="help"
- title='<fmt:message key="planetSubscription.tip.title" />' />
- </div>
-
- <div class="formrow">
- <label for="feedURL" class="formrow" />
- <fmt:message key="planetSubscription.feedUrl" /></label>
- <html:text property="feedURL" size="40" maxlength="255" />
- <img src="../images/help.png" alt="help"
- title='<fmt:message key="planetSubscription.tip.feedUrl" />' />
- </div>
-
- <div class="formrow">
- <label for="siteURL" class="formrow" />
- <fmt:message key="planetSubscription.siteUrl" /></label>
- <html:text property="siteURL" size="40" maxlength="255" />
- <img src="../images/help.png" alt="help"
- title='<fmt:message key="planetSubscription.tip.siteUrl" />' />
- </div>
-
- <p />
- <div class="formrow">
- <label class="formrow" /> </label>
- <input type="submit"
- value='<fmt:message key="planetSubscriptions.button.save" />' />
-
- <input type="button"
- value='<fmt:message key="planetSubscriptions.button.cancel" />'
- onclick="cancelEditing()"/>
- <c:if test="${!empty planetSubscriptionFormEx.id}" >
-
- <input type="button"
- value='<fmt:message key="planetSubscriptions.button.delete" />'
- onclick="deleteSubscription()" />
- </c:if>
- </div>
-
- <br style="clear:left" />
-
- <h2>
- <fmt:message key="planetSubscriptions.existingTitle" />
- <c:if test='${planetSubscriptionFormEx.groupHandle != "external"}' >
- [group: <c:out value="${planetSubscriptionFormEx.groupHandle}" />]
- </c:if>
- </h2>
- <p><i><fmt:message key="planetSubscriptions.existingPrompt" /></i></p>
-
- <table class="rollertable">
- <tr class="rHeaderTr">
- <th class="rollertable" width="30%">
- <fmt:message key="planetSubscriptions.column.title" />
- </th>
- <th class="rollertable" width="60%">
- <fmt:message key="planetSubscriptions.column.feedUrl" />
- </th>
- <th class="rollertable" width="10%">
- <fmt:message key="planetSubscriptions.column.edit" />
- </th>
- </tr>
- <c:forEach var="subscription" items="${model.subscriptions}" >
- <roller:row oddStyleClass="rollertable_odd" evenStyleClass="rollertable_even">
-
- <td class="rollertable">
- <c:out value="${subscription.title}" />
- </td>
-
- <td class="rollertable">
- <str:left count="100" >
- <c:out value="${subscription.feedURL}" />
- </str:left>
- </td>
-
- <td class="rollertable">
- <roller:link page="/roller-ui/admin/planetSubscriptions.do">
- <roller:linkparam
- id="method" value="getSubscriptions" />
- <roller:linkparam
- id="groupHandle"
- name="planetSubscriptionFormEx"
- property="groupHandle" />
- <roller:linkparam
- id="feedUrl" name="subscription" property="feedURL" />
- <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon"
- title="<fmt:message key='planetSubscription.edit.tip' />" />
- </roller:link>
- </td>
-
- </roller:row>
- </c:forEach>
- </table>
-
- </html:form>
-
-
-</c:if>
-<c:if test="${model.unconfigured}" >
- <fmt:message key="planetSubscriptions.unconfigured" />
-</c:if>
+ </c:if>
+ </h2>
+ <p><i><fmt:message key="planetSubscriptions.existingPrompt" /></i></p>
+
+ <table class="rollertable">
+ <tr class="rHeaderTr">
+ <th class="rollertable" width="30%">
+ <fmt:message key="planetSubscriptions.column.title" />
+ </th>
+ <th class="rollertable" width="60%">
+ <fmt:message key="planetSubscriptions.column.feedUrl" />
+ </th>
+ <th class="rollertable" width="10%">
+ <fmt:message key="planetSubscriptions.column.edit" />
+ </th>
+ </tr>
+ <c:forEach var="subscription" items="${model.subscriptions}" >
+ <roller:row oddStyleClass="rollertable_odd" evenStyleClass="rollertable_even">
+
+ <td class="rollertable">
+ <c:out value="${subscription.title}" />
+ </td>
+
+ <td class="rollertable">
+ <str:left count="100" >
+ <c:out value="${subscription.feedURL}" />
+ </str:left>
+ </td>
+
+ <td class="rollertable">
+ <roller:link page="/roller-ui/admin/planetSubscriptions.do">
+ <roller:linkparam
+ id="method" value="getSubscriptions" />
+ <roller:linkparam
+ id="groupHandle"
+ name="planetSubscriptionFormEx"
+ property="groupHandle" />
+ <roller:linkparam
+ id="feedUrl" name="subscription" property="feedURL" />
+ <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="icon"
+ title="<fmt:message key='planetSubscription.edit.tip' />" />
+ </roller:link>
+ </td>
+
+ </roller:row>
+ </c:forEach>
+ </table>
+</html:form>
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/core/login.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/core/login.jsp?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/core/login.jsp (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/core/login.jsp Tue Feb 20 09:49:24 2007
@@ -30,7 +30,7 @@
<form method="post"
id="loginForm"
- action="<c:url value="/j_security_check"/>"
+ action="<c:url value="/roller_j_security_check"/>"
onsubmit="saveUsername(this)">
<table>
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/tiles/tiles-errorpage.jsp
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/tiles/tiles-errorpage.jsp?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/tiles/tiles-errorpage.jsp (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/jsps/tiles/tiles-errorpage.jsp Tue Feb 20 09:49:24 2007
@@ -22,9 +22,6 @@
<title><c:out value="${model.title}" /></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<tiles:insert page="/WEB-INF/jsps/tiles/head.jsp" />
-<style type="text/css">
-<tiles:insert page="/WEB-INF/jsps/tiles/styles.jsp" />
-</style>
</head>
<body>
Modified: incubator/roller/branches/roller_4.0/web/WEB-INF/security.xml
URL: http://svn.apache.org/viewvc/incubator/roller/branches/roller_4.0/web/WEB-INF/security.xml?view=diff&rev=509685&r1=509684&r2=509685
==============================================================================
--- incubator/roller/branches/roller_4.0/web/WEB-INF/security.xml (original)
+++ incubator/roller/branches/roller_4.0/web/WEB-INF/security.xml Tue Feb 20 09:49:24 2007
@@ -178,7 +178,7 @@
<property name="authenticationManager" ref="authenticationManager"/>
<property name="authenticationFailureUrl" value="/roller-ui/login.do?error=true"/>
<property name="defaultTargetUrl" value="/"/>
- <property name="filterProcessesUrl" value="/j_security_check"/>
+ <property name="filterProcessesUrl" value="/roller_j_security_check"/>
<property name="rememberMeServices" ref="rememberMeServices"/>
</bean>