[jboss-svn-commits] JBL Code SVN: r15544 - in labs/jbosslabs/trunk/portal-extensions/forge-portlets/src: web/WEB-INF and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Oct 3 11:44:12 EDT 2007


Author: wrzep
Date: 2007-10-03 11:44:11 -0400 (Wed, 03 Oct 2007)
New Revision: 15544

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java
   labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java
   labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java
   labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml
Log:
JBLAB-869
project admin panel - new page / rename issue fix


Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java	2007-10-03 15:39:47 UTC (rev 15543)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java	2007-10-03 15:44:11 UTC (rev 15544)
@@ -44,6 +44,8 @@
 	private List<String> selectedContent;
 	
 	private String selectedPageContent;
+	private String newPageName = PagesAdminConstants.NEW_PAGE_NAME;
+	private String renamedPage;
 	
 	List<PreferenceBean> preferences;
 	
@@ -84,18 +86,25 @@
 		return "";
 	}
 	
-	public synchronized String addPage() {
+	public synchronized String newPage() {
 		
-		String name = PagesAdminTools.newPageName(pages); 
-		page = PagesAdminTools.newPage(pages, name);
+		if (PagesAdminTools.findPage(pages, newPageName) != null) {
+			FacesTools.addMessage("Cannot create page '" + newPageName + 
+								  "'. Page already exists.");
+			return "";
+		}
+		
+		page = PagesAdminTools.newPage(pages, newPageName);
 		selectedPage = page.getName();
 		
 		editPage();
 		
-		return "";
+		newPageName = PagesAdminConstants.NEW_PAGE_NAME;
+		
+		return PagesAdminConstants.EDIT_PAGES;
 	}
 	
-	public String deletePage() {
+	public synchronized String deletePage() {
 		
 		if (PagesAdminConstants.DEFAULT_PAGE.equals(selectedPage)) {
 			
@@ -112,6 +121,34 @@
 		return PagesAdminConstants.EDIT_PAGES;
 	}
 	
+	public synchronized String renamePage() {
+		
+		if (PagesAdminTools.findPage(pages, renamedPage) != null) {
+			FacesTools.addMessage("Cannot rename page '" + selectedPage + "' to '"
+								+ renamedPage +  "'. Page already exists.");
+			return "";
+		}
+	
+		PagesAdminTools.renamePage(pages, selectedPage, renamedPage);
+	
+		selectedPage = renamedPage;
+		
+		editPage();
+		
+		return PagesAdminConstants.EDIT_PAGES;
+	}
+	
+	public String renamePageStart() {
+		
+		if (PagesAdminConstants.DEFAULT_PAGE.equals(selectedPage)) {
+			FacesTools.addMessage("Cannot rename page '" + PagesAdminConstants.DEFAULT_PAGE + "'.");
+			return "";
+		}
+		
+		renamedPage = selectedPage;
+		return PagesAdminConstants.RENAME_PAGE;
+	}
+	
 	/* content */
 	
 	public String addContent() {
@@ -163,14 +200,6 @@
 	
 	/* getters and setters */
 		
-	public String getTitle() {
-		return PagesAdminTools.convertCMSTitle(page.getName());
-	}
-
-	public void setTitle(String title) {
-		page.setName(PagesAdminTools.convertJSFTitle(title));
-	}
-
 	public List<SelectItem> getProjectPages() {
 		
 		return PagesAdminTools.getPages(pages);
@@ -180,6 +209,22 @@
 		return PagesAdminTools.getPageContent(page);
 	}
 	
+	public String getNewPageName() {
+		return newPageName;
+	}
+
+	public void setNewPageName(String newPageName) {
+		this.newPageName = newPageName;
+	}
+
+	public String getRenamedPage() {
+		return renamedPage;
+	}
+
+	public void setRenamedPage(String renamedPage) {
+		this.renamedPage = renamedPage;
+	}
+
 	/******************************/
 	
 	public List<PreferenceBean> getPreferences() {

Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java	2007-10-03 15:39:47 UTC (rev 15543)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java	2007-10-03 15:44:11 UTC (rev 15544)
@@ -28,16 +28,16 @@
 
 public class PagesAdminConstants  {
 
-	public static final String DEFAULT_PAGE 				= "default";
+	public static final String DEFAULT_PAGE 			= "default";
 	public static final String NEW_PAGE_NAME 			= "NewPage";
+	public static final String RENAME_PAGE 				= "renamePage";
 	
 	public static final String CONFIRM_DELETE 			= "confirmDelete";
 	public static final String CONFIRM_CHANGE_LAYOUT 	= "confirmChangeLayout";
 	
 	public static final String EDIT_PAGES 				= "edit-pages";
 	
-	public static final 	int DEFAULT_HEIGHT 				= 1;
+	public static final int DEFAULT_HEIGHT	 			= 1;
 	public static final String DEFAULT_REGION 			= "center";
-
 }
 		
\ No newline at end of file

Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java	2007-10-03 15:39:47 UTC (rev 15543)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java	2007-10-03 15:44:11 UTC (rev 15544)
@@ -241,8 +241,18 @@
 		return page;
 	}
 
-	public static void deletePage(Pages pages, String selectedPage) {
+	public static boolean deletePage(Pages pages, String selectedPage) {
 		
 		Page page = findPage(pages, selectedPage);
+		
+		return pages.getPages().remove(page);
 	}
+
+	public static void renamePage(Pages pages, String selectedPage,
+			String renamedPage) {
+	
+		Page page = findPage(pages, selectedPage);
+		
+		page.setName(renamedPage);
+	}
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml	2007-10-03 15:39:47 UTC (rev 15543)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml	2007-10-03 15:44:11 UTC (rev 15544)
@@ -37,6 +37,20 @@
 			<to-view-id>/repo-access/default/prj-admin/confirmChangeLayout.jsp</to-view-id>
 		</navigation-case>
 	</navigation-rule>
+	<navigation-rule>
+		<from-view-id>*</from-view-id>
+		<navigation-case>
+			<from-outcome>newPage</from-outcome>
+			<to-view-id>/repo-access/default/prj-admin/new-page.jsp</to-view-id>
+		</navigation-case>
+	</navigation-rule>
+	<navigation-rule>
+		<from-view-id>*</from-view-id>
+		<navigation-case>
+			<from-outcome>renamePage</from-outcome>
+			<to-view-id>/repo-access/default/prj-admin/rename-page.jsp</to-view-id>
+		</navigation-case>
+	</navigation-rule>
 	
 	<navigation-rule>
 		<from-view-id>*</from-view-id>




More information about the jboss-svn-commits mailing list