You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by ta...@apache.org on 2005/12/08 00:51:42 UTC

svn commit: r354913 - in /portals/jetspeed-2/trunk: layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java src/webapp/WEB-INF/templates/layout/html/columns/layout.vm

Author: taylor
Date: Wed Dec  7 15:51:39 2005
New Revision: 354913

URL: http://svn.apache.org/viewcvs?rev=354913&view=rev
Log:
this one is for Scott for providing me with a kickass velocity macro/javascript today to get me out of a self-dug trench
i know. im going to start documenting now.

Modified:
    portals/jetspeed-2/trunk/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java
    portals/jetspeed-2/trunk/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm

Modified: portals/jetspeed-2/trunk/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java?rev=354913&r1=354912&r2=354913&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java (original)
+++ portals/jetspeed-2/trunk/layout-portlets/src/java/org/apache/jetspeed/portlets/layout/MultiColumnPortlet.java Wed Dec  7 15:51:39 2005
@@ -32,13 +32,10 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.jetspeed.CommonPortletServices;
-import org.apache.jetspeed.Jetspeed;
 import org.apache.jetspeed.decoration.DecorationFactory;
+import org.apache.jetspeed.om.folder.Folder;
 import org.apache.jetspeed.om.page.Fragment;
 import org.apache.jetspeed.om.page.Page;
-import org.apache.jetspeed.page.PageManager;
-import org.apache.jetspeed.page.PageNotFoundException;
-import org.apache.jetspeed.page.document.NodeException;
 import org.apache.jetspeed.request.RequestContext;
 import org.apache.pluto.om.window.PortletWindow;
 
@@ -181,8 +178,47 @@
         String layoutChange = request.getParameter("layout");
         String editingPage = request.getParameter("editingPage");
         String fragmentChange = request.getParameter("fragmentToMove");
-        
-        if (request.getParameter("move") != null 
+        String jsSubmitPage = request.getParameter("jsSubmitPage");
+        String jsPageName = request.getParameter("jsPageName");
+
+        if (jsSubmitPage != null && jsPageName != null && editingPage != null)
+        {
+            try
+            {                
+                if (jsPageName.indexOf(Folder.PATH_SEPARATOR) == -1 && jsPageName.length() > 0)
+                {
+                    Page currentPage = pageManager.getPage(editingPage);
+                    if (currentPage != null)
+                    {
+                        Folder parent = (Folder)currentPage.getParent();
+                        if (parent != null)
+                        {
+                            String path = parent.getPath();
+                            if (path.endsWith(Folder.PATH_SEPARATOR))
+                            {
+                                path = path + jsPageName;
+                            }
+                            else
+                            {
+                                path = path + Folder.PATH_SEPARATOR + jsPageName;
+                            }
+                            Page page = pageManager.newPage(path);
+                            // TODO: Get System Wide defaults for decorators
+                            page.getRootFragment().setName("jetspeed-layouts::VelocityTwoColumns");
+                            page.setDefaultDecorator("tigris", Fragment.LAYOUT);
+                            page.setDefaultDecorator("tigris", Fragment.PORTLET);
+                            page.setTitle(jsPageName);
+                            pageManager.updatePage(page);
+                        }
+                    }                
+                }
+            }
+            catch (Exception e)
+            {
+                throw new PortletException("Unable to access page for editing: "+e.getMessage());
+            }                        
+        }
+        else if (request.getParameter("move") != null 
                 &&  fragmentChange != null
                 && editingPage != null)
         {        

Modified: portals/jetspeed-2/trunk/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm?rev=354913&r1=354912&r2=354913&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm (original)
+++ portals/jetspeed-2/trunk/src/webapp/WEB-INF/templates/layout/html/columns/layout.vm Wed Dec  7 15:51:39 2005
@@ -60,7 +60,11 @@
         #foreach($ld in $decorationFactory.getLayouts($rc))     
           <option value='$ld.Name' #if($myFragment.Name == $ld.Name) SELECTED #end>$ld.DisplayName
          #end
-</select></label></form>
+</select></label>
+<label style='font-size:8pt;color:blue;padding-left: 9px;'>Page:
+<input id='newpage' name='jsPageName' style='font-size:8pt;color:blue'/></label>
+<input type="submit" name="jsSubmitPage" value="Add Page" />
+</form>
    #end
 
  <div id="$renderResponse.namespace" class="portal-layout portal-layout-$layoutType">



---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org