You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by ag...@apache.org on 2007/04/30 21:10:14 UTC
svn commit: r533830 - in /roller/trunk:
src/org/apache/roller/ui/admin/struts2/
src/org/apache/roller/ui/authoring/struts2/
src/org/apache/roller/ui/common/ src/org/apache/roller/ui/common/struts2/
web/WEB-INF/ web/WEB-INF/classes/ web/WEB-INF/jsps/adm...
Author: agilliland
Date: Mon Apr 30 12:10:12 2007
New Revision: 533830
URL: http://svn.apache.org/viewvc?view=rev&rev=533830
Log:
struts2 versions of ping target controls, both common and custom.
Added:
roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetAdd.java
roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetEdit.java
roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargets.java
roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetAdd.java
roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetEdit.java
roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargets.java
roller/trunk/src/org/apache/roller/ui/common/
roller/trunk/src/org/apache/roller/ui/common/struts2/
roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetAddBase.java
roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetEditBase.java
roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetFormBean.java
roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetsBase.java
roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetAdd.jsp
roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetConfirm.jsp
roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetEdit.jsp
roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargets.jsp
roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetAdd.jsp
roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetConfirm.jsp
roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetEdit.jsp
roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargets.jsp
Modified:
roller/trunk/src/org/apache/roller/ui/admin/struts2/admin-menu.xml
roller/trunk/src/org/apache/roller/ui/authoring/struts2/editor-menu.xml
roller/trunk/web/WEB-INF/classes/struts.xml
roller/trunk/web/WEB-INF/tiles.xml
Added: roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetAdd.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetAdd.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetAdd.java (added)
+++ roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetAdd.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,67 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.admin.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.pojos.PingTargetData;
+import org.apache.roller.ui.common.struts2.PingTargetAddBase;
+
+
+/**
+ * Action for adding a common ping target.
+ */
+public class CommonPingTargetAdd extends PingTargetAddBase {
+
+ private static Log log = LogFactory.getLog(CommonPingTargetAdd.class);
+
+
+ public CommonPingTargetAdd() {
+ this.actionName = "commonPingTargetAdd";
+ this.desiredMenu = "admin";
+ this.pageTitle = "pingTarget.pingTarget";
+ }
+
+
+ public String requiredUserRole() {
+ return "admin";
+ }
+
+ // no weblog required
+ public boolean isWeblogRequired() {
+ return false;
+ }
+
+
+ protected Log getLogger() {
+ return log;
+ }
+
+
+ protected PingTargetData createPingTarget() {
+
+ return new PingTargetData(
+ null,
+ getBean().getName(),
+ getBean().getPingUrl(),
+ null,
+ false);
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetEdit.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetEdit.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetEdit.java (added)
+++ roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargetEdit.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,55 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.admin.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.ui.common.struts2.PingTargetEditBase;
+
+
+/**
+ * Action for modifying a common ping target.
+ */
+public class CommonPingTargetEdit extends PingTargetEditBase {
+
+ private static Log log = LogFactory.getLog(CommonPingTargetEdit.class);
+
+
+ public CommonPingTargetEdit() {
+ this.actionName = "commonPingTargetEdit";
+ this.desiredMenu = "admin";
+ this.pageTitle = "pingTarget.pingTarget";
+ }
+
+
+ public String requiredUserRole() {
+ return "admin";
+ }
+
+ // no weblog required
+ public boolean isWeblogRequired() {
+ return false;
+ }
+
+
+ protected Log getLogger() {
+ return log;
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargets.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargets.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargets.java (added)
+++ roller/trunk/src/org/apache/roller/ui/admin/struts2/CommonPingTargets.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,122 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.admin.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.RollerException;
+import org.apache.roller.business.RollerFactory;
+import org.apache.roller.business.pings.PingTargetManager;
+import org.apache.roller.ui.common.struts2.PingTargetsBase;
+
+
+/**
+ * Admin action for managing global ping targets.
+ */
+public class CommonPingTargets extends PingTargetsBase {
+
+ private static Log log = LogFactory.getLog(CommonPingTargets.class);
+
+
+ public CommonPingTargets() {
+ this.actionName = "commonPingTargets";
+ this.desiredMenu = "admin";
+ this.pageTitle = "commonPingTargets.commonPingTargets";
+ }
+
+
+ public String requiredUserRole() {
+ return "admin";
+ }
+
+ // no weblog required
+ public boolean isWeblogRequired() {
+ return false;
+ }
+
+
+ protected Log getLogger() {
+ return log;
+ }
+
+
+ public void loadPingTargets() {
+ try {
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ setPingTargets(pingTargetMgr.getCommonPingTargets());
+ } catch (RollerException ex) {
+ log.error("Error loading common ping targets", ex);
+ // TODO: i18n
+ addError("Error loading common ping targets");
+ }
+ }
+
+
+ /**
+ * Set a ping target auto enabled to true.
+ */
+ public String enable() {
+
+ if(getPingTarget() != null) {
+ try {
+ getPingTarget().setAutoEnabled(true);
+
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ pingTargetMgr.savePingTarget(getPingTarget());
+ RollerFactory.getRoller().flush();
+ } catch (Exception ex) {
+ getLogger().error("Error saving ping target", ex);
+ // TODO: i18n
+ addError("Error saving ping target.");
+ }
+ } else {
+ // TODO: i18n
+ addError("Cannot enable ping target - "+getPingTargetId());
+ }
+
+ return LIST;
+ }
+
+
+ /**
+ * Set a ping target auto-enable to false.
+ */
+ public String disable() {
+
+ if(getPingTarget() != null) {
+ try {
+ getPingTarget().setAutoEnabled(false);
+
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ pingTargetMgr.savePingTarget(getPingTarget());
+ RollerFactory.getRoller().flush();
+ } catch (Exception ex) {
+ getLogger().error("Error saving ping target", ex);
+ // TODO: i18n
+ addError("Error saving ping target.");
+ }
+ } else {
+ // TODO: i18n
+ addError("Cannot disable ping target - "+getPingTargetId());
+ }
+
+ return LIST;
+ }
+
+}
Modified: roller/trunk/src/org/apache/roller/ui/admin/struts2/admin-menu.xml
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/admin/struts2/admin-menu.xml?view=diff&rev=533830&r1=533829&r2=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/admin/struts2/admin-menu.xml (original)
+++ roller/trunk/src/org/apache/roller/ui/admin/struts2/admin-menu.xml Mon Apr 30 12:10:12 2007
@@ -24,7 +24,8 @@
<menu-item action="commonPingTargets"
name="tabbedmenu.admin.pingTargets"
- roles="admin" />
+ roles="admin"
+ subactions="commonPingTargetAdd,commonPingTargetEdit" />
<menu-item action="cacheInfo"
name="tabbedmenu.admin.cacheInfo"
Added: roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetAdd.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetAdd.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetAdd.java (added)
+++ roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetAdd.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,55 @@
+/*
+ * CustomPingTargetAdd.java
+ *
+ * Created on April 30, 2007, 9:52 AM
+ *
+ * To change this template, choose Tools | Template Manager
+ * and open the template in the editor.
+ */
+
+package org.apache.roller.ui.authoring.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.pojos.PermissionsData;
+import org.apache.roller.pojos.PingTargetData;
+import org.apache.roller.ui.common.struts2.PingTargetAddBase;
+
+
+/**
+ * Action for adding a custom weblog ping target.
+ */
+public class CustomPingTargetAdd extends PingTargetAddBase {
+
+ private static Log log = LogFactory.getLog(CustomPingTargetAdd.class);
+
+
+ public CustomPingTargetAdd() {
+ this.actionName = "customPingTargetAdd";
+ this.desiredMenu = "editor";
+ this.pageTitle = "pingTarget.pingTarget";
+ }
+
+
+ // admin perms required
+ public short requiredWeblogPermission() {
+ return PermissionsData.ADMIN;
+ }
+
+
+ protected Log getLogger() {
+ return log;
+ }
+
+
+ protected PingTargetData createPingTarget() {
+
+ return new PingTargetData(
+ null,
+ getBean().getName(),
+ getBean().getPingUrl(),
+ getActionWeblog(),
+ false);
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetEdit.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetEdit.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetEdit.java (added)
+++ roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargetEdit.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,52 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.authoring.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.pojos.PermissionsData;
+import org.apache.roller.ui.common.struts2.PingTargetEditBase;
+
+
+/**
+ * Action for modifying a weblog custom ping target.
+ */
+public class CustomPingTargetEdit extends PingTargetEditBase {
+
+ private static Log log = LogFactory.getLog(CustomPingTargetEdit.class);
+
+
+ public CustomPingTargetEdit() {
+ this.actionName = "customPingTargetEdit";
+ this.desiredMenu = "editor";
+ this.pageTitle = "pingTarget.pingTarget";
+ }
+
+
+ // admin perms required
+ public short requiredWeblogPermissions() {
+ return PermissionsData.ADMIN;
+ }
+
+
+ protected Log getLogger() {
+ return log;
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargets.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargets.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargets.java (added)
+++ roller/trunk/src/org/apache/roller/ui/authoring/struts2/CustomPingTargets.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,73 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.authoring.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.RollerException;
+import org.apache.roller.business.RollerFactory;
+import org.apache.roller.business.pings.PingTargetManager;
+import org.apache.roller.config.PingConfig;
+import org.apache.roller.pojos.PermissionsData;
+import org.apache.roller.ui.common.struts2.PingTargetsBase;
+
+
+/**
+ * Action for managing weblog custom ping targets.
+ */
+public class CustomPingTargets extends PingTargetsBase {
+
+ private static Log log = LogFactory.getLog(CustomPingTargets.class);
+
+
+ public CustomPingTargets() {
+ this.actionName = "customPingTargets";
+ this.desiredMenu = "editor";
+ this.pageTitle = "customPingTargets.customPingTargets";
+ }
+
+
+ // no weblog required
+ public boolean isWeblogRequired() {
+ return true;
+ }
+
+ public short requiredWeblogPermissions() {
+ return PermissionsData.ADMIN;
+ }
+
+
+ protected Log getLogger() {
+ return log;
+ }
+
+
+ public void loadPingTargets() {
+
+ if(!PingConfig.getDisallowCustomTargets()) try {
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ setPingTargets(pingTargetMgr.getCustomPingTargets(getActionWeblog()));
+ } catch (RollerException ex) {
+ log.error("Error loading common ping targets", ex);
+ // TODO: i18n
+ addError("Error loading common ping targets");
+ }
+ }
+
+}
Modified: roller/trunk/src/org/apache/roller/ui/authoring/struts2/editor-menu.xml
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/authoring/struts2/editor-menu.xml?view=diff&rev=533830&r1=533829&r2=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/authoring/struts2/editor-menu.xml (original)
+++ roller/trunk/src/org/apache/roller/ui/authoring/struts2/editor-menu.xml Mon Apr 30 12:10:12 2007
@@ -95,10 +95,11 @@
perms="admin"
disabledProperty="pings.disablePingUsage" />
- <menu-item action="pingTargets"
+ <menu-item action="customPingTargets"
name="tabbedmenu.weblog.customPingTargets"
roles="editor"
perms="admin"
+ subactions="customPingTargetAdd,customPingTargetEdit"
disabledProperty="pings.disallowCustomTargets" />
<menu-item action="maintenance"
Added: roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetAddBase.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetAddBase.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetAddBase.java (added)
+++ roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetAddBase.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,113 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.common.struts2;
+
+import org.apache.commons.logging.Log;
+import org.apache.roller.RollerException;
+import org.apache.roller.business.RollerFactory;
+import org.apache.roller.business.pings.PingTargetManager;
+import org.apache.roller.pojos.PingTargetData;
+import org.apache.roller.ui.core.util.struts2.UIAction;
+
+
+/**
+ * Base implementation for action that can add a new ping target.
+ */
+public abstract class PingTargetAddBase extends UIAction {
+
+ // a bean for managing submitted data
+ private PingTargetFormBean bean = new PingTargetFormBean();
+
+
+ // get logger
+ protected abstract Log getLogger();
+
+ // create a new ping target
+ protected abstract PingTargetData createPingTarget();
+
+
+ public String execute() {
+ return INPUT;
+ }
+
+
+ /**
+ * Save a new ping target.
+ */
+ public String save() {
+
+ PingTargetData pingTarget = createPingTarget();
+
+ // Call private helper to validate ping target
+ // If there are errors, go back to the target edit page.
+ myValidate(pingTarget);
+
+ if(!hasActionErrors()) try {
+ // Appears to be ok. Save it and flush.
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ pingTargetMgr.savePingTarget(pingTarget);
+ RollerFactory.getRoller().flush();
+
+ addMessage("pingTarget.saved");
+
+ return SUCCESS;
+
+ } catch (RollerException ex) {
+ getLogger().error("Error adding ping target", ex);
+ // TODO: i18n
+ addError("Error adding ping target.");
+ }
+
+ return INPUT;
+ }
+
+
+ /**
+ * Private helper to validate a ping target.
+ */
+ protected void myValidate(PingTargetData pingTarget) {
+
+ try {
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ if (!pingTargetMgr.isNameUnique(pingTarget)) {
+ addError("pingTarget.nameNotUnique");
+ }
+
+ if (!pingTargetMgr.isUrlWellFormed(pingTarget)) {
+ addError("pingTarget.malformedUrl");
+ } else if (!pingTargetMgr.isHostnameKnown(pingTarget)) {
+ addError("pingTarget.unknownHost");
+ }
+ } catch (RollerException ex) {
+ getLogger().error("Error validating ping target", ex);
+ // TODO: i18n
+ addError("Error doing ping target validation");
+ }
+ }
+
+
+ public PingTargetFormBean getBean() {
+ return bean;
+ }
+
+ public void setBean(PingTargetFormBean bean) {
+ this.bean = bean;
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetEditBase.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetEditBase.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetEditBase.java (added)
+++ roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetEditBase.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,163 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.common.struts2;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.roller.RollerException;
+import org.apache.roller.business.RollerFactory;
+import org.apache.roller.business.pings.PingTargetManager;
+import org.apache.roller.pojos.PingTargetData;
+import org.apache.roller.ui.core.util.struts2.UIAction;
+
+
+/**
+ * Base implementation for action that can edit an existing ping target.
+ */
+public abstract class PingTargetEditBase extends UIAction {
+
+ // ping target we are working on, if any
+ private PingTargetData pingTarget = null;
+
+ // a bean for managing submitted data
+ private PingTargetFormBean bean = new PingTargetFormBean();
+
+
+ // get logger
+ protected abstract Log getLogger();
+
+
+ /**
+ * Prepare action by loading ping target to work on.
+ */
+ public void myPrepare() {
+
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ if(!StringUtils.isEmpty(getBean().getId())) {
+
+ try {
+ setPingTarget(pingTargetMgr.getPingTarget(getBean().getId()));
+ } catch (RollerException ex) {
+ getLogger().error("Error looking up ping target - "+getBean().getId());
+ }
+
+ if(getPingTarget() == null) {
+ // TODO: i18n
+ addError("No such ping target id: " + getBean().getId());
+ }
+
+ } else {
+ // TODO: i18n
+ addError("Missing ping target id: " + getBean().getId());
+ }
+ }
+
+
+ public String execute() {
+
+ if(!hasActionErrors()) {
+ // load bean with data from ping target
+ getBean().copyFrom(getPingTarget());
+ } else {
+ // if we already have an error then that means we couldn't load
+ // an existing ping target to work on, so return ERROR result
+ return ERROR;
+ }
+
+ return INPUT;
+ }
+
+
+ /**
+ * Save ping target.
+ */
+ public String save() {
+
+ if(hasActionErrors()) {
+ // if we already have an error then that means we couldn't load
+ // an existing ping target to work on, so return ERROR result
+ return INPUT;
+ }
+
+ // copy data from form into ping target
+ getBean().copyTo(getPingTarget());
+
+ // Call private helper to validate ping target
+ // If there are errors, go back to the target edit page.
+ myValidate(getPingTarget());
+
+ if(!hasActionErrors()) try {
+ // Appears to be ok. Save it and flush.
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ pingTargetMgr.savePingTarget(getPingTarget());
+ RollerFactory.getRoller().flush();
+
+ addMessage("pingTarget.saved");
+
+ } catch (RollerException ex) {
+ getLogger().error("Error saving ping target", ex);
+ // TODO: i18n
+ addError("Error saving ping target.");
+ }
+
+ return INPUT;
+ }
+
+
+ /**
+ * Private helper to validate a ping target.
+ */
+ protected void myValidate(PingTargetData pingTarget) {
+
+ try {
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ if (!pingTargetMgr.isNameUnique(pingTarget)) {
+ addError("pingTarget.nameNotUnique");
+ }
+
+ if (!pingTargetMgr.isUrlWellFormed(pingTarget)) {
+ addError("pingTarget.malformedUrl");
+ } else if (!pingTargetMgr.isHostnameKnown(pingTarget)) {
+ addError("pingTarget.unknownHost");
+ }
+ } catch (RollerException ex) {
+ getLogger().error("Error validating ping target", ex);
+ // TODO: i18n
+ addError("Error doing ping target validation");
+ }
+ }
+
+
+ public PingTargetData getPingTarget() {
+ return pingTarget;
+ }
+
+ public void setPingTarget(PingTargetData pingTarget) {
+ this.pingTarget = pingTarget;
+ }
+
+ public PingTargetFormBean getBean() {
+ return bean;
+ }
+
+ public void setBean(PingTargetFormBean bean) {
+ this.bean = bean;
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetFormBean.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetFormBean.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetFormBean.java (added)
+++ roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetFormBean.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,73 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.common.struts2;
+
+import org.apache.roller.pojos.PingTargetData;
+
+
+/**
+ * Form bean used by ping target actions.
+ */
+public class PingTargetFormBean {
+
+ private String id = null;
+ private String name = null;
+ private String pingUrl = null;
+
+
+ public String getId() {
+ return this.id;
+ }
+
+ public void setId( String id ) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public void setName( String name ) {
+ this.name = name;
+ }
+
+ public String getPingUrl() {
+ return this.pingUrl;
+ }
+
+ public void setPingUrl( String pingUrl ) {
+ this.pingUrl = pingUrl;
+ }
+
+
+ public void copyTo(PingTargetData dataHolder) {
+
+ dataHolder.setName(this.name);
+ dataHolder.setPingUrl(this.pingUrl);
+ }
+
+
+ public void copyFrom(PingTargetData dataHolder) {
+
+ this.id = dataHolder.getId();
+ this.name = dataHolder.getName();
+ this.pingUrl = dataHolder.getPingUrl();
+ }
+
+}
Added: roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetsBase.java
URL: http://svn.apache.org/viewvc/roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetsBase.java?view=auto&rev=533830
==============================================================================
--- roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetsBase.java (added)
+++ roller/trunk/src/org/apache/roller/ui/common/struts2/PingTargetsBase.java Mon Apr 30 12:10:12 2007
@@ -0,0 +1,155 @@
+/*
+ * 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.
+ */
+
+package org.apache.roller.ui.common.struts2;
+
+import java.util.Collections;
+import java.util.List;
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.roller.RollerException;
+import org.apache.roller.business.RollerFactory;
+import org.apache.roller.business.pings.PingTargetManager;
+import org.apache.roller.pojos.PingTargetData;
+import org.apache.roller.ui.core.util.struts2.UIAction;
+
+
+/**
+ * Base implementation for action that lists available ping targets and can
+ * handle deletion of a single ping target (with confirmation).
+ */
+public abstract class PingTargetsBase extends UIAction {
+
+ // list of available ping targets
+ private List pingTargets = Collections.EMPTY_LIST;
+
+ // ping target we are working on, if any
+ private PingTargetData pingTarget = null;
+
+ // id of the ping target to work on
+ private String pingTargetId = null;
+
+
+ // get logger
+ protected abstract Log getLogger();
+
+ // load up list of ping targets
+ protected abstract void loadPingTargets();
+
+
+ // prepare method needs to set ping targets list
+ public void myPrepare() {
+
+ // load list of ping targets
+ loadPingTargets();
+
+ // load specified ping target if possible
+ if(!StringUtils.isEmpty(getPingTargetId())) {
+ try {
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ setPingTarget(pingTargetMgr.getPingTarget(getPingTargetId()));
+ } catch (RollerException ex) {
+ getLogger().error("Error looking up ping target - "+getPingTargetId(), ex);
+ }
+ }
+ }
+
+
+ /**
+ * Display the ping targets.
+ */
+ public String execute() {
+ return LIST;
+ }
+
+
+ /**
+ * Delete a ping target (load delete confirmation view).
+ */
+ public String deleteConfirm() {
+
+ if(getPingTarget() != null) {
+ setPageTitle("pingTarget.confirmRemoveTitle");
+
+ return "confirm";
+ } else {
+ // TODO: i18n
+ addError("Cannot delete ping target: " + getPingTargetId());
+ }
+
+ return LIST;
+ }
+
+
+ /**
+ * Delete a ping target.
+ */
+ public String delete() {
+
+ if(getPingTarget() != null) {
+
+ try {
+ PingTargetManager pingTargetMgr = RollerFactory.getRoller().getPingTargetManager();
+ pingTargetMgr.removePingTarget(getPingTarget());
+ RollerFactory.getRoller().flush();
+
+ // remove deleted target from list
+ getPingTargets().remove(getPingTarget());
+
+ // TODO: i18n
+ addMessage("Successfully deleted ping target: "+getPingTarget().getName());
+
+ } catch (RollerException ex) {
+ getLogger().error("Error deleting ping target - "+getPingTargetId(), ex);
+ // TODO: i18n
+ addError("Error deleting ping target - "+getPingTargetId());
+ }
+ } else {
+ // TODO: i18n
+ addError("Cannot delete ping target: " + getPingTargetId());
+ }
+
+ return LIST;
+ }
+
+
+ public List getPingTargets() {
+ return pingTargets;
+ }
+
+ public void setPingTargets(List pingTargets) {
+ this.pingTargets = pingTargets;
+ }
+
+ public PingTargetData getPingTarget() {
+ return pingTarget;
+ }
+
+ public void setPingTarget(PingTargetData pingTarget) {
+ this.pingTarget = pingTarget;
+ }
+
+ public String getPingTargetId() {
+ return pingTargetId;
+ }
+
+ public void setPingTargetId(String pingTargetId) {
+ this.pingTargetId = pingTargetId;
+ }
+
+}
Modified: roller/trunk/web/WEB-INF/classes/struts.xml
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/classes/struts.xml?view=diff&rev=533830&r1=533829&r2=533830
==============================================================================
--- roller/trunk/web/WEB-INF/classes/struts.xml (original)
+++ roller/trunk/web/WEB-INF/classes/struts.xml Mon Apr 30 12:10:12 2007
@@ -116,6 +116,23 @@
<result name="success" type="tiles">.CacheInfo</result>
</action>
+ <action name="commonPingTargets!*" method="{1}"
+ class="org.apache.roller.ui.admin.struts2.CommonPingTargets">
+ <result name="list" type="tiles">.CommonPingTargets</result>
+ <result name="confirm" type="tiles">.CommonPingTargetConfirm</result>
+ </action>
+
+ <action name="commonPingTargetAdd!*" method="{1}"
+ class="org.apache.roller.ui.admin.struts2.CommonPingTargetAdd">
+ <result name="input" type="tiles">.CommonPingTargetAdd</result>
+ <result name="success" type="chain">commonPingTargets</result>
+ </action>
+
+ <action name="commonPingTargetEdit!*" method="{1}"
+ class="org.apache.roller.ui.admin.struts2.CommonPingTargetEdit">
+ <result name="input" type="tiles">.CommonPingTargetEdit</result>
+ <result name="error" type="chain">commonPingTargets</result>
+ </action>
<!--
<action name="commentManagement!*" method="{1}"
@@ -130,13 +147,6 @@
<result name="commentManagementGlobal.page">.CommentManagementGlobal</result>
</action>
- <action name="commonPingTargets!*" method="{1}"
- class="org.apache.roller.ui.admin.struts2.CommonPingTargetsAction">
- <result name="pingTargets.page">.CommonPingTargets</result>
- <result name="pingTargetEdit.page">.CommonPingTargetEdit</result>
- <result name="pingTargetDeleteOK.page">.CommonPingTargetDeleteOK</result>
- </action>
-
<action name="planetConfig!*" method="{1}"
class="org.apache.roller.planet.ui.admin.struts2.PlanetConfigAction">
<result name="planetConfig.page">.PlanetConfig</result>
@@ -226,8 +236,22 @@
<result>/roller-ui/authoring/pingSetup.do</result>
</action>
- <action name="pingTargets">
- <result>/roller-ui/authoring/customPingTargets.do</result>
+ <action name="customPingTargets!*" method="{1}"
+ class="org.apache.roller.ui.authoring.struts2.CustomPingTargets">
+ <result name="list" type="tiles">.CustomPingTargets</result>
+ <result name="confirm" type="tiles">.CustomPingTargetConfirm</result>
+ </action>
+
+ <action name="customPingTargetAdd!*" method="{1}"
+ class="org.apache.roller.ui.authoring.struts2.CustomPingTargetAdd">
+ <result name="input" type="tiles">.CustomPingTargetAdd</result>
+ <result name="success" type="chain">customPingTargets</result>
+ </action>
+
+ <action name="customPingTargetEdit!*" method="{1}"
+ class="org.apache.roller.ui.authoring.struts2.CustomPingTargetEdit">
+ <result name="input" type="tiles">.CustomPingTargetEdit</result>
+ <result name="error" type="chain">customPingTargets</result>
</action>
<action name="maintenance">
@@ -240,12 +264,6 @@
class="org.apache.roller.ui.authoring.struts2.PingSetupAction">
<result name="pingSetup.page">.Pings</result>
<result name="pingResult.page">.PingResult</result>
- </action>
- <action name="customPingTargets!*" method="{1}"
- class="org.apache.roller.ui.authoring.struts2.CustomPingTargetsAction">
- <result name="pingTargets.page">.CustomPingTargets</result>
- <result name="pingTargetEdit.page">.CustomPingTargetEdit</result>
- <result name="pingTargetDeleteOK.page">.CustomPingTargetDeleteOK</result>
</action>
<action name="importBookmarks!*" method="{1}"
Added: roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetAdd.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetAdd.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetAdd.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetAdd.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,42 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+<s:text name="commonPingTarget.subtitle"/>
+</p>
+
+<s:form action="commonPingTargetAdd!save" >
+
+ <div class="formrow">
+ <label for="name" class="formrow"><s:text name="pingTarget.name" /></label>
+ <s:textfield name="bean.name" size="30" maxlength="30" />
+ </div>
+
+ <div class="formrow">
+ <label for="pingUrl" class="formrow"><s:text name="pingTarget.pingUrl" /></label>
+ <s:textfield name="bean.pingUrl" size="100" maxlength="255" />
+ </div>
+
+ <p/>
+ <div class="formrow">
+ <label for="" class="formrow"> </label>
+ <s:submit key="pingTarget.save" />
+ </div>
+
+</s:form>
Added: roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetConfirm.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetConfirm.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetConfirm.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetConfirm.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,43 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<br />
+<h1><s:text name="" /></h1>
+
+<p/>
+<s:text name="pingTarget.confirmCommonRemove" />
+<p/>
+
+<table>
+ <tr><td><s:text name="pingTarget.name" /> </td><td><b><s:property value="pingTarget.name" /></b></td></tr>
+ <tr><td><s:text name="pingTarget.pingUrl" /> </td><td><b><s:property value="pingTarget.pingUrl" /></b></td></tr>
+</table>
+
+<br/>
+
+<div class="control">
+ <s:form action="commonPingTargets!delete">
+ <s:hidden name="pingTargetId" />
+ <s:submit key="pingTarget.removeOK" />
+ </s:form>
+
+ <s:form action="commonPingTargets">
+ <s:submit key="pingTarget.cancel" />
+ </s:form>
+</div>
Added: roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetEdit.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetEdit.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetEdit.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargetEdit.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,44 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+<s:text name="commonPingTarget.subtitle"/>
+</p>
+
+<s:form action="commonPingTargetEdit!save" >
+ <s:hidden name="bean.id" />
+
+ <div class="formrow">
+ <label for="name" class="formrow"><s:text name="pingTarget.name" /></label>
+ <s:textfield name="bean.name" size="30" maxlength="30" />
+ </div>
+
+ <div class="formrow">
+ <label for="pingUrl" class="formrow"><s:text name="pingTarget.pingUrl" /></label>
+ <s:textfield name="bean.pingUrl" size="100" maxlength="255" />
+ </div>
+
+ <p/>
+ <div class="formrow">
+ <label for="" class="formrow"> </label>
+ <s:submit key="pingTarget.save" />
+ <s:submit key="pingTarget.cancel" action="commonPingTargets" />
+ </div>
+
+</s:form>
Added: roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargets.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargets.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargets.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/admin/struts2/CommonPingTargets.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,105 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+ <s:text name="commonPingTargets.subtitle" />
+</p>
+
+<p/><s:text name="commonPingTargets.explanation"/><p/>
+
+<table class="rollertable">
+
+<%-- Headings --%>
+<tr class="rollertable">
+ <th class="rollertable" width="20%%"><s:text name="pingTarget.name" /></th>
+ <th class="rollertable" width="55%"><s:text name="pingTarget.pingUrl" /></th>
+ <th class="rollertable" width="15%" colspan="2"><s:text name="pingTarget.autoEnabled" /></th>
+ <th class="rollertable" width="5%"><s:text name="pingTarget.edit" /></th>
+ <th class="rollertable" width="5%"><s:text name="pingTarget.remove" /></th>
+</tr>
+
+<%-- Listing of current common targets --%>
+<s:iterator id="pingTarget" value="pingTargets" status="rowstatus">
+
+ <s:if test="#rowstatus.odd == true">
+ <tr class="rollertable_odd">
+ </s:if>
+ <s:else>
+ <tr class="rollertable_even">
+ </s:else>
+
+ <td class="rollertable"><s:property value="#pingTarget.name" /></td>
+
+ <td class="rollertable"><s:property value="#pingTarget.pingUrl" /></td>
+
+ <!-- TODO: Use icons here -->
+ <td class="rollertable" align="center" >
+ <s:if test="#pingTarget.autoEnabled">
+ <span style="{color: #00aa00; font-weight: bold;}"><s:text name="pingTarget.enabled"/></span>
+ </s:if>
+ <s:else>
+ <span style="{color: #aaaaaa; font-weight: bold;}"><s:text name="pingTarget.disabled"/></span>
+ </s:else>
+ </td>
+
+ <!-- TODO: Use icons here -->
+ <td class="rollertable" align="center" >
+ <s:if test="#pingTarget.autoEnabled">
+ <s:url id="disablePing" action="commonPingTargets!disable">
+ <s:param name="pingTargetId" value="#pingTarget.id" />
+ </s:url>
+ <a href="<s:url value="%{disablePing}"/>"><s:text name="pingTarget.disable"/></a>
+ </s:if>
+ <s:else>
+ <s:url id="enablePing" action="commonPingTargets!enable">
+ <s:param name="pingTargetId" value="#pingTarget.id" />
+ </s:url>
+ <a href="<s:url value="%{enablePing}"/>"><s:text name="pingTarget.enable"/></a>
+ </s:else>
+ </td>
+
+ <td class="rollertable" align="center">
+ <s:url id="editPing" action="commonPingTargetEdit">
+ <s:param name="bean.id" value="#pingTarget.id" />
+ </s:url>
+ <a href="<s:url value="%{editPing}"/>">
+ <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="<s:text name="pingTarget.edit" />" />
+ </a>
+ </td>
+
+ <td class="rollertable" align="center">
+ <s:url id="removePing" action="commonPingTargets!deleteConfirm">
+ <s:param name="pingTargetId" value="#pingTarget.id" />
+ </s:url>
+ <a href="<s:url value="%{removePing}"/>">
+ <img src='<c:url value="/images/delete.png"/>' border="0" alt="<s:text name="pingTarget.remove" />" />
+ </a>
+ </td>
+
+ </tr>
+</s:iterator>
+
+</table>
+
+<br />
+
+<div class="control">
+ <s:url id="addPing" action="commonPingTargetAdd" />
+ <s:a href="%{addPing}">Add Ping Target</s:a>
+</div>
Added: roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetAdd.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetAdd.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetAdd.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetAdd.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,45 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+ <s:text name="customPingTarget.subtitle">
+ <s:param value="actionWeblog.handle"/>
+ </s:text>
+</p>
+
+<s:form action="customPingTargetAdd!save" >
+ <s:hidden name="weblog" value="%{actionWeblog.handle}" />
+
+ <div class="formrow">
+ <label for="name" class="formrow"><s:text name="pingTarget.name" /></label>
+ <s:textfield name="bean.name" size="30" maxlength="30" />
+ </div>
+
+ <div class="formrow">
+ <label for="pingUrl" class="formrow"><s:text name="pingTarget.pingUrl" /></label>
+ <s:textfield name="bean.pingUrl" size="100" maxlength="255" />
+ </div>
+
+ <p/>
+ <div class="formrow">
+ <label for="" class="formrow"> </label>
+ <s:submit key="pingTarget.save" />
+ </div>
+
+</s:form>
Added: roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetConfirm.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetConfirm.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetConfirm.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetConfirm.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,45 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<br />
+<h1><s:text name="" /></h1>
+
+<p/>
+<s:text name="pingTarget.confirmCustomRemove" />
+<p/>
+
+<table>
+ <tr><td><s:text name="pingTarget.name" /> </td><td><b><s:property value="pingTarget.name" /></b></td></tr>
+ <tr><td><s:text name="pingTarget.pingUrl" /> </td><td><b><s:property value="pingTarget.pingUrl" /></b></td></tr>
+</table>
+
+<br/>
+
+<div class="control">
+ <s:form action="customPingTargets!delete">
+ <s:hidden name="pingTargetId" />
+ <s:hidden name="weblog" value="%{actionWeblog.handle}" />
+ <s:submit key="pingTarget.removeOK" />
+ </s:form>
+
+ <s:form action="customPingTargets">
+ <s:hidden name="weblog" value="%{actionWeblog.handle}" />
+ <s:submit key="pingTarget.cancel" />
+ </s:form>
+</div>
Added: roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetEdit.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetEdit.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetEdit.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargetEdit.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,47 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+ <s:text name="customPingTarget.subtitle">
+ <s:param value="actionWeblog.handle"/>
+ </s:text>
+</p>
+
+<s:form action="customPingTargetEdit!save" >
+ <s:hidden name="bean.id" />
+ <s:hidden name="weblog" value="%{actionWeblog.handle}" />
+
+ <div class="formrow">
+ <label for="name" class="formrow"><s:text name="pingTarget.name" /></label>
+ <s:textfield name="bean.name" size="30" maxlength="30" />
+ </div>
+
+ <div class="formrow">
+ <label for="pingUrl" class="formrow"><s:text name="pingTarget.pingUrl" /></label>
+ <s:textfield name="bean.pingUrl" size="100" maxlength="255" />
+ </div>
+
+ <p/>
+ <div class="formrow">
+ <label for="" class="formrow"> </label>
+ <s:submit key="pingTarget.save" />
+ <s:submit key="pingTarget.cancel" action="customPingTargets" />
+ </div>
+
+</s:form>
Added: roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargets.jsp
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargets.jsp?view=auto&rev=533830
==============================================================================
--- roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargets.jsp (added)
+++ roller/trunk/web/WEB-INF/jsps/authoring/struts2/CustomPingTargets.jsp Mon Apr 30 12:10:12 2007
@@ -0,0 +1,95 @@
+<%--
+ 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.
+--%>
+<%@ include file="/WEB-INF/jsps/taglibs-struts2.jsp" %>
+
+<p class="subtitle">
+ <s:text name="customPingTargets.subtitle" >
+ <s:param value="actionWeblog.handle" />
+ </s:text>
+</p>
+
+<s:if test="getProp('pings.disallowCustomTargets')">
+ <!-- Otherwise custom targets are not allowed; explain the situation to the user -->
+ <p class="pagetip">
+ <s:text name="customPingTargets.disAllowedExplanation"/>
+ </p>
+</s:if>
+<s:else>
+<!-- Only show the form if custom targets are allowed -->
+<p class="pagetip">
+ <s:text name="customPingTargets.explanation"/>
+</p>
+
+<table class="rollertable">
+
+<%-- Headings --%>
+<tr class="rollertable">
+ <th class="rollertable" width="20%%"><s:text name="pingTarget.name" /></th>
+ <th class="rollertable" width="70%"><s:text name="pingTarget.pingUrl" /></th>
+ <th class="rollertable" width="5%"><s:text name="pingTarget.edit" /></th>
+ <th class="rollertable" width="5%"><s:text name="pingTarget.remove" /></th>
+</tr>
+
+<%-- Listing of current common targets --%>
+<s:iterator id="pingTarget" value="pingTargets" status="rowstatus">
+
+ <s:if test="#rowstatus.odd == true">
+ <tr class="rollertable_odd">
+ </s:if>
+ <s:else>
+ <tr class="rollertable_even">
+ </s:else>
+
+ <td class="rollertable"><s:property value="#pingTarget.name" /></td>
+
+ <td class="rollertable"><s:property value="#pingTarget.pingUrl" /></td>
+
+ <td class="rollertable" align="center">
+ <s:url id="editPing" action="customPingTargetEdit">
+ <s:param name="bean.id" value="#pingTarget.id" />
+ <s:param name="weblog" value="actionWeblog.handle" />
+ </s:url>
+ <s:a href="%{editPing}">
+ <img src='<c:url value="/images/page_white_edit.png"/>' border="0" alt="<s:text name="pingTarget.edit" />" />
+ </s:a>
+ </td>
+
+ <td class="rollertable" align="center">
+ <s:url id="removePing" action="customPingTargets!deleteConfirm">
+ <s:param name="pingTargetId" value="#pingTarget.id" />
+ <s:param name="weblog" value="actionWeblog.handle" />
+ </s:url>
+ <s:a href="%{removePing}">
+ <img src='<c:url value="/images/delete.png"/>' border="0" alt="<s:text name="pingTarget.remove" />" />
+ </s:a>
+ </td>
+
+ </tr>
+</s:iterator>
+
+</table>
+
+<br />
+
+<div class="control">
+ <s:url id="addPing" action="customPingTargetAdd">
+ <s:param name="weblog" value="actionWeblog.handle" />
+ </s:url>
+ <s:a href="%{addPing}">Add Ping Target</s:a>
+</div>
+</s:else>
Modified: roller/trunk/web/WEB-INF/tiles.xml
URL: http://svn.apache.org/viewvc/roller/trunk/web/WEB-INF/tiles.xml?view=diff&rev=533830&r1=533829&r2=533830
==============================================================================
--- roller/trunk/web/WEB-INF/tiles.xml (original)
+++ roller/trunk/web/WEB-INF/tiles.xml Mon Apr 30 12:10:12 2007
@@ -81,168 +81,195 @@
</definition>
- <!-- weblog design pages -->
- <definition name=".Templates" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/struts2/Templates.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
+ <!-- global admin pages (and associates) -->
+ <definition name=".GlobalConfig" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/GlobalConfig.jsp" />
</definition>
- <definition name=".TemplateEditForm" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/struts2/TemplateEdit.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
+
+ <definition name=".UserAdmin" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/UserAdmin.jsp" />
</definition>
- <definition name=".ThemeEdit" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/struts2/ThemeEdit.jsp" />
+ <definition name=".CreateUser" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/CreateUser.jsp" />
</definition>
+ <definition name=".ModifyUser" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/ModifyUser.jsp" />
+ </definition>
+
+ <definition name=".CommonPingTargets" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/CommonPingTargets.jsp" />
+ </definition>
+
+ <definition name=".CommonPingTargetConfirm" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/CommonPingTargetConfirm.jsp" />
+ </definition>
+
+ <definition name=".CommonPingTargetAdd" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/CommonPingTargetAdd.jsp" />
+ </definition>
+
+ <definition name=".CommonPingTargetEdit" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/CommonPingTargetEdit.jsp" />
+ </definition>
+
+ <definition name=".CacheInfo" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/struts2/CacheInfo.jsp" />
+ </definition>
+
+ <definition name=".PlanetSubscriptions" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/PlanetSubscriptions.jsp" />
+ </definition>
+
+ <definition name=".PlanetConfig" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/PlanetConfig.jsp" />
+ </definition>
+
+ <definition name=".PlanetGroups" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/admin/PlanetGroups.jsp" />
+ </definition>
+
+
<!-- weblog editor pages (and associates) -->
<definition name=".WeblogEdit" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/WeblogEdit.jsp" />
<put name="sidebar" value="/WEB-INF/jsps/authoring/WeblogEditSidebar.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
</definition>
+
+ <definition name=".WeblogEntryRemove" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/WeblogEntryRemove.jsp" />
+ <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
+ </definition>
+
<definition name=".WeblogEntryManagement" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/WeblogEntryManagement.jsp" />
<put name="sidebar" value="/WEB-INF/jsps/authoring/WeblogEntryManagementSidebar.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
</definition>
+
<definition name=".CommentManagement" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/CommentManagement.jsp" />
<put name="sidebar" value="/WEB-INF/jsps/authoring/CommentManagementSidebar.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
</definition>
+
+ <definition name=".CommentManagementGlobal" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/CommentManagement.jsp" />
+ <put name="sidebar" value="/WEB-INF/jsps/authoring/CommentManagementSidebar.jsp" />
+ <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
+ </definition>
+
<definition name=".CategoriesForm" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/CategoriesForm.jsp" />
<put name="sidebar" value="/WEB-INF/jsps/authoring/CategoriesSidebar.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
</definition>
- <definition name=".referers" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/referers.jsp" />
- </definition>
- <definition name=".BookmarksForm" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/BookmarksForm.jsp" />
- <put name="sidebar" value="/WEB-INF/jsps/authoring/BookmarksSidebar.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
- </definition>
- <definition name=".upload-file" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/UploadFile.jsp" />
- </definition>
- <!-- subpages -->
- <definition name=".WeblogEntryRemove" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/WeblogEntryRemove.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
- </definition>
<definition name=".CategoryForm" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/CategoryForm.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
+
<definition name=".CategoryDeleteOK" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/CategoryDeleteOK.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
+
+ <definition name=".BookmarksForm" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/BookmarksForm.jsp" />
+ <put name="sidebar" value="/WEB-INF/jsps/authoring/BookmarksSidebar.jsp" />
+ <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
+ </definition>
+
<definition name=".BookmarkForm" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/BookmarkForm.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
+
<definition name=".FolderForm" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/FolderForm.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
+
<definition name=".import" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/import.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
+ <definition name=".upload-file" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/UploadFile.jsp" />
+ </definition>
+
+ <definition name=".referers" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/referers.jsp" />
+ </definition>
+
+
<!-- weblog admin pages (and associates) -->
<definition name=".edit-website" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/edit-website.jsp" />
</definition>
- <definition name=".CommentManagementGlobal" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/CommentManagement.jsp" />
- <put name="sidebar" value="/WEB-INF/jsps/authoring/CommentManagementSidebar.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
- </definition>
- <definition name=".MemberPermissions" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/MemberPermissions.jsp" />
- <put name="sidebar" value="/WEB-INF/jsps/authoring/MemberPermissionsSidebar.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
- </definition>
- <definition name=".CustomPingTargets" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/CustomPingTargets.jsp" />
- </definition>
- <definition name=".PingResult" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/PingResult.jsp" />
- </definition>
- <definition name=".Pings" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/Pings.jsp" />
- </definition>
- <definition name=".Maintenance" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/Maintenance.jsp" />
- </definition>
- <!-- subpages -->
<definition name=".WebsiteRemove" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/WebsiteRemove.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
- <definition name=".InviteMember" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/InviteMember.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
+
+ <definition name=".ThemeEdit" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/ThemeEdit.jsp" />
</definition>
- <definition name=".InviteMemberDone" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/InviteMemberDone.jsp" />
+
+ <definition name=".Templates" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/Templates.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
- <definition name=".CustomPingTargetDeleteOK" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/CustomPingTargetDeleteOK.jsp" />
+
+ <definition name=".TemplateEditForm" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/TemplateEdit.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
- <definition name=".CustomPingTargetEdit" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/authoring/CustomPingTargetEdit.jsp" />
- <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
+
+ <definition name=".MemberPermissions" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/MemberPermissions.jsp" />
+ <put name="sidebar" value="/WEB-INF/jsps/authoring/MemberPermissionsSidebar.jsp" />
+ <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-sidebar.jsp" />
</definition>
+
<definition name=".Invitations" extends=".tiles-tabbedpage" >
<put name="content" value="/WEB-INF/jsps/authoring/Invitations.jsp" />
<put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
-
- <!-- global admin pages (and associates) -->
- <definition name=".GlobalConfig" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/struts2/GlobalConfig.jsp" />
- </definition>
- <definition name=".UserAdmin" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/struts2/UserAdmin.jsp" />
- </definition>
- <definition name=".CreateUser" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/struts2/CreateUser.jsp" />
- </definition>
- <definition name=".ModifyUser" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/struts2/ModifyUser.jsp" />
- </definition>
- <definition name=".CommonPingTargets" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/CommonPingTargets.jsp" />
+ <definition name=".InviteMember" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/InviteMember.jsp" />
+ <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
- <definition name=".CacheInfo" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/struts2/CacheInfo.jsp" />
+
+ <definition name=".InviteMemberDone" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/InviteMemberDone.jsp" />
+ <put name="styles" value="/WEB-INF/jsps/tiles/struts2/css-nosidebar.jsp" />
</definition>
- <definition name=".CommonPingTargetDeleteOK" extends=".tiles-simplepage" >
- <put name="content" value="/WEB-INF/jsps/admin/CommonPingTargetDeleteOK.jsp" />
+ <definition name=".CustomPingTargets" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/CustomPingTargets.jsp" />
</definition>
- <definition name=".CommonPingTargetEdit" extends=".tiles-simplepage" >
- <put name="content" value="/WEB-INF/jsps/admin/CommonPingTargetEdit.jsp" />
+
+ <definition name=".CustomPingTargetConfirm" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/CustomPingTargetConfirm.jsp" />
</definition>
- <definition name=".PlanetSubscriptions" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/PlanetSubscriptions.jsp" />
+ <definition name=".CustomPingTargetAdd" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/CustomPingTargetAdd.jsp" />
</definition>
- <definition name=".PlanetConfig" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/PlanetConfig.jsp" />
+
+ <definition name=".CustomPingTargetEdit" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/struts2/CustomPingTargetEdit.jsp" />
</definition>
- <definition name=".PlanetGroups" extends=".tiles-tabbedpage" >
- <put name="content" value="/WEB-INF/jsps/admin/PlanetGroups.jsp" />
+
+ <definition name=".Maintenance" extends=".tiles-tabbedpage" >
+ <put name="content" value="/WEB-INF/jsps/authoring/Maintenance.jsp" />
</definition>