[jboss-svn-commits] JBL Code SVN: r10709 - 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
Tue Apr 3 09:04:37 EDT 2007
Author: wrzep
Date: 2007-04-03 09:04:37 -0400 (Tue, 03 Apr 2007)
New Revision: 10709
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
labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/web.xml
Log:
JBLAB-843
confirm layout change
I'm fed up with jsf glue code...
-Pawel
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-04-03 12:34:42 UTC (rev 10708)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminBean.java 2007-04-03 13:04:37 UTC (rev 10709)
@@ -42,6 +42,7 @@
private String selectedPage;
private int selectedLayout;
+ private int layout;
private List<String> selectedContent;
private String selectedLeftContent;
@@ -55,7 +56,6 @@
private Page page;
- //TODO no pages defined => NPE
//TODO check if admin is logged!
//TODO reset session beans
@@ -70,7 +70,10 @@
log.debug("Unable to get ProjectsServiceRW", e);
}
- selectedLayout = 3;
+ // Add default page if no pages defined.
+ if (pages.getPages().size() == 0) {
+ page = PagesAdminTools.newPage(pages, PagesAdminConstants.DEFAULT_PAGE);
+ }
if (selectedPage == null) {
selectedPage = PagesAdminConstants.DEFAULT_PAGE;
@@ -90,16 +93,18 @@
selectedColumnContent = null;
clearSelections();
+ layout = PagesAdminTools.getLayout(page);
+
return "";
}
public String addPage() {
- System.out.println("ADD");
-
- page = PagesAdminTools.newPage(pages);
+ String name = PagesAdminTools.newPageName(pages);
+ page = PagesAdminTools.newPage(pages, name);
selectedPage = page.getName();
clearSelections();
+ layout = 3;
return "";
}
@@ -189,6 +194,43 @@
preferences = PagesAdminTools.getPreferences(portlet);
}
+ public String changeLayout() {
+
+ switch (selectedLayout) {
+ case 1:
+ if (getLeftContent().size() > 0 ) {
+ return PagesAdminConstants.CONFIRM_CHANGE_LAYOUT;
+ }
+ case 2:
+ if (getRightContent().size() > 0) {
+ return PagesAdminConstants.CONFIRM_CHANGE_LAYOUT;
+ }
+ }
+
+ return performChangeLayout();
+ }
+
+ public String performChangeLayout() {
+
+ layout = selectedLayout;
+
+ switch (layout) {
+ case 1:
+ PagesAdminTools.removeColumn(page, "left");
+ case 2:
+ PagesAdminTools.removeColumn(page, "right");
+ }
+
+ System.out.println("PERFORMED");
+
+ return PagesAdminConstants.EDIT_PAGES;
+ }
+
+ public String cancelChangeLayout() {
+
+ return PagesAdminConstants.EDIT_PAGES;
+ }
+
/* getters and setters */
public String getTitle() {
@@ -274,4 +316,8 @@
public Pages getPages() {
return pages;
}
+
+ public int getLayout() {
+ return layout;
+ }
}
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-04-03 12:34:42 UTC (rev 10708)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminConstants.java 2007-04-03 13:04:37 UTC (rev 10709)
@@ -32,7 +32,8 @@
public static final String NEW_PAGE_NAME = "NewPage";
public static final String CONFIRM_DELETE = "confirmDelete";
-
+ public static final String CONFIRM_CHANGE_LAYOUT = "confirmChangeLayout";
+
public static final String EDIT_PAGES = "edit-pages";
}
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-04-03 12:34:42 UTC (rev 10708)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/java/org/jboss/forge/projects/admin/pages/PagesAdminTools.java 2007-04-03 13:04:37 UTC (rev 10709)
@@ -276,7 +276,7 @@
return ret;
}
- private static String newPageName(Pages pages) {
+ public static String newPageName(Pages pages) {
Set<String> pageNames = new HashSet<String>();
for (Page page : pages.getPages()) {
@@ -293,9 +293,7 @@
}
}
- public static Page newPage(Pages pages) {
-
- String name = newPageName(pages);
+ public static Page newPage(Pages pages, String name) {
ProjectFactoryService factory;
@@ -313,4 +311,27 @@
return page;
}
+
+ public static int getLayout(Page page) {
+
+ if (getContent(page, "right").size() > 0) {
+ return 3;
+ }
+
+ if (getContent(page, "left").size() > 0) {
+ return 2;
+ }
+
+ return 1;
+ }
+
+ public static void removeColumn(Page page, String column) {
+
+ for (Portlet portlet : page.getPortlets()) {
+
+ if (column.equals(portlet.getRegion())) {
+ page.getPortlets().remove(portlet);
+ }
+ }
+ }
}
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-04-03 12:34:42 UTC (rev 10708)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/faces-config.xml 2007-04-03 13:04:37 UTC (rev 10709)
@@ -33,6 +33,13 @@
<navigation-rule>
<from-view-id>*</from-view-id>
<navigation-case>
+ <from-outcome>confirmChangeLayout</from-outcome>
+ <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>save</from-outcome>
<to-view-id>/repo-access/default/prj-admin/admin.jsp</to-view-id>
</navigation-case>
Modified: labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/web.xml
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/web.xml 2007-04-03 12:34:42 UTC (rev 10708)
+++ labs/jbosslabs/trunk/portal-extensions/forge-portlets/src/web/WEB-INF/web.xml 2007-04-03 13:04:37 UTC (rev 10709)
@@ -4,9 +4,33 @@
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
+
+ <!-- Ajax4jsf -->
+ <!--
+ <filter>
+ <display-name>Ajax4jsf Filter</display-name>
+ <filter-name>ajax4jsf</filter-name>
+ <filter-class>org.ajax4jsf.Filter</filter-class>
+ <init-param>
+ <param-name>forceparser</param-name>
+ <param-value>false</param-value>
+ </init-param>
+ </filter>
+ <filter-mapping>
+ <filter-name>ajax4jsf</filter-name>
+ <servlet-name>Faces Servlet</servlet-name>
+ <dispatcher>REQUEST</dispatcher>
+ <dispatcher>FORWARD</dispatcher>
+ <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ -->
+
+ <!-- MyFaces -->
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
- </listener>
+ </listener>
+
+ <!-- File access -->
<filter>
<filter-name>filesFromRepoFilter</filter-name>
<filter-class>org.jboss.forge.common.FilesFromRepoFilter</filter-class>
More information about the jboss-svn-commits
mailing list