[jboss-svn-commits] JBL Code SVN: r10534 - in labs/jbosslabs/trunk/portal-extensions: forge-portlets/src/java/org/jboss/forge/projects/admin and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Mar 26 09:05:58 EDT 2007


Author: wrzep
Date: 2007-03-26 09:05:58 -0400 (Mon, 26 Mar 2007)
New Revision: 10534

Modified:
   labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/proxies/SyncProxy.java
   labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java
   labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java
Log:
JBLAB-843
move up/down


Modified: labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/proxies/SyncProxy.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/proxies/SyncProxy.java	2007-03-26 11:54:30 UTC (rev 10533)
+++ labs/jbosslabs/trunk/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/proxies/SyncProxy.java	2007-03-26 13:05:58 UTC (rev 10534)
@@ -26,8 +26,6 @@
 import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.Method;
 
-import org.jboss.forge.common.projects.project.rw.PagesRW;
-
 /**
  * @author Pawel Wrzeszcz (pawel . wrzeszcz [at] jboss . com)
  */

Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java	2007-03-26 11:54:30 UTC (rev 10533)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/PagesAdminTools.java	2007-03-26 13:05:58 UTC (rev 10534)
@@ -81,6 +81,7 @@
 			
 			if (column.equals(portlet.getRegion())) {
 				contentList.add(new SelectItem(Integer.toString(i), portlet.getName()));
+				portlet.setHeight(Integer.toString(i));
 				i++;
 			}
 		}
@@ -120,7 +121,7 @@
 		return projectPages;
 	}
 
-	public static void addContent(Page page, String portletName, String region) {
+	public static void addContent(Page page, String portletName, String region, int height) {
 		
 		Map<String, String> preferences = new HashMap<String, String>();
 		preferences.put("pref", "walju");
@@ -128,9 +129,8 @@
 		Portlet portlet;
 		
 		try {
-			portlet = LabsServices.getProjectFactoryService().createPortlet(portletName, region, 1, null);
+			portlet = LabsServices.getProjectFactoryService().createPortlet(portletName, region, height, null);
 			
-			
 		} catch (MalformedObjectNameException e) {
 			// TODO Auto-generated catch block
 			e.printStackTrace();
@@ -165,4 +165,37 @@
 			}
 		}
 	}
+
+	public static void moveContentUp(Page page, int n, String column) {
+	
+		if (n <= 1) {
+			return;
+		}
+		
+		List<Portlet> portlets = choosePortlets(page.getPortlets(), column);
+		if (n > portlets.size()) {
+			return;
+		}
+		
+		Portlet portletToMoveUp = portlets.get(n - 1);
+		Portlet portletToMoveDown = portlets.get(n - 2);
+		
+		portletToMoveUp.setHeight(Integer.toString(n - 1));
+		portletToMoveDown.setHeight(Integer.toString(n));
+	}
+	
+	private static List<Portlet> choosePortlets(List<? extends Portlet> portlets, String column) {
+		
+		List<? extends Portlet> list = sortPortlets(portlets);
+		List<Portlet> ret = new ArrayList<Portlet>();
+		
+		for (Portlet portlet : list) {
+			
+			if (column.equals(portlet.getRegion())) {
+				ret.add(portlet);
+			}
+		}
+		
+		return ret;
+	}
 }

Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java	2007-03-26 11:54:30 UTC (rev 10533)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/ProjectPagesAdminBean.java	2007-03-26 13:05:58 UTC (rev 10534)
@@ -98,8 +98,10 @@
 		String column = FacesTools.getRequestParameter("column");
 		System.out.println("ADD CONTENT " + column);
 		
+		int height = PagesAdminTools.getContent(page, column).size() + 1; // Append to the end.
+		
 		for (String portletName : selectedContent) {
-			PagesAdminTools.addContent(page, portletName, column);
+			PagesAdminTools.addContent(page, portletName, column, height);
 		}
 		
 		return "";
@@ -108,12 +110,8 @@
 	public String removeContent() {
 		
 		String column = FacesTools.getRequestParameter("column");
+		String contentToRemove = selectedColumnContent(column);
 		
-		String contentToRemove;
-		if (column.equals("left")) { contentToRemove = selectedLeftContent; }
-		else if (column.equals("center")) { contentToRemove = selectedMiddleContent; }
-		else { contentToRemove = selectedRightContent; };
-		
 		System.out.println("RM CONTENT " + column + " "	+ contentToRemove);
 	
 		PagesAdminTools.removeContent(page, contentToRemove, column);
@@ -121,17 +119,32 @@
 		return "";
 	}
 	
+	private String selectedColumnContent(String column) {
+		
+		if (column.equals("left")) { return selectedLeftContent; }
+		else if (column.equals("center")) { return selectedMiddleContent; }
+		return selectedRightContent;
+	}
+	
 	public String moveContentUp() {
 		
 		String column = FacesTools.getRequestParameter("column");
+		String contentToMove = selectedColumnContent(column);
+		int n = Integer.parseInt(contentToMove);
 		
+		PagesAdminTools.moveContentUp(page, n, column);
+		
 		return "";
 	}
 	
 	public String moveContentDown() {
 		
 		String column = FacesTools.getRequestParameter("column");
+		String contentToMove = selectedColumnContent(column);
+		int n = Integer.parseInt(contentToMove);
 		
+		PagesAdminTools.moveContentUp(page, n + 1, column);
+		
 		return "";
 	}
 	




More information about the jboss-svn-commits mailing list