Index: openacs-4/packages/new-portal/new-portal.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/new-portal.info,v
diff -u -r1.32 -r1.33
--- openacs-4/packages/new-portal/new-portal.info	8 Jan 2008 13:04:52 -0000	1.32
+++ openacs-4/packages/new-portal/new-portal.info	4 Mar 2008 20:49:49 -0000	1.33
@@ -8,14 +8,14 @@
     <singleton-p>t</singleton-p>
     <auto-mount>portal</auto-mount>
 
-    <version name="2.4.0d1" url="http://openacs.org/repository/download/apm/new-portal-2.4.0d1.apm">
+    <version name="2.4.0d2" url="http://openacs.org/repository/download/apm/new-portal-2.4.0d2.apm">
         <owner url="http://openacs.org">OpenACS</owner>
         <summary>Portals.</summary>
         <release-date>2008-01-08</release-date>
         <vendor url="http://openacs.org">OpenACS</vendor>
         <description format="text/plain">New Portal Package aka NPP. Portals are used to aggregate content from different sources within a single page.  Props to Ian Baker for &quot;Portal&quot;.</description>
 
-        <provides url="new-portal" version="2.4.0d1"/>
+        <provides url="new-portal" version="2.4.0d2"/>
         <requires url="acs-kernel" version="5.3.1a1"/>
 
         <callbacks>
@@ -25,6 +25,7 @@
         <parameters>
             <parameter datatype="string"  min_n_values="1"  max_n_values="1"  name="css_path"  default="css/default.css" description="The path to the stylesheet for this portal." section_name="Look and Feel"/>
             <parameter datatype="string"  min_n_values="1"  max_n_values="1"  name="default_theme_name"  default="#new-portal.deco_theme_name#" description="the default theme"/>
+            <parameter datatype="string"  min_n_values="1"  max_n_values="1"  name="default_layout"  default="#new-portal.simple_2column_layout_name#" description="the default layout for new pages"/>
             <parameter datatype="number"  min_n_values="1"  max_n_values="1"  name="full_cache"  default="0" description="The number of seconds to cache a fully rendered portal." section_name="Performance"/>
             <parameter datatype="number"  min_n_values="1"  max_n_values="1"  name="local_remove_p"  default="0" description="When editing, render elements in immutable regions instead of merely displaying their names." section_name="Portal Editing"/>
             <parameter datatype="number"  min_n_values="1"  max_n_values="1"  name="log_datasource_errors_p"  default="1" description="Create an entry in the error log whenever an error occurs while evaluating a datasource." section_name="Debug"/>
Index: openacs-4/packages/new-portal/tcl/portal-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/tcl/portal-procs.tcl,v
diff -u -r1.184 -r1.185
--- openacs-4/packages/new-portal/tcl/portal-procs.tcl	20 Dec 2007 13:49:54 -0000	1.184
+++ openacs-4/packages/new-portal/tcl/portal-procs.tcl	4 Mar 2008 20:49:50 -0000	1.185
@@ -146,7 +146,9 @@
     set page_name_list [list $default_page_name]
     set page_accesskey_list [list $default_accesskey]
     if { [string eq $layout_name ""] } {
-        set layout_name_list [list "#new-portal.simple_2column_layout_name#"]
+        set layout_name_list [list [parameter::get_from_package_key \
+                                       -package_key new-portal \
+                                       -parameter default_layout]]
     } else {
         set layout_name_list [list $layout_name]
     }
@@ -2054,7 +2056,7 @@
 ad_proc -private portal::get_layout_id {
     {-page_num ""}
     {-page_id ""}
-    {-layout_name "#new-portal.simple_2column_layout_name#"}
+    {-layout_name ""}
     {portal_id ""}
 } {
     Get the layout_id of a layout template for a portal page.
@@ -2063,6 +2065,11 @@
     @param portal_id The portal_id.
     @return A layout_id.
 } {
+    if { $layout_name eq "" } {
+        set layout_name [parameter::get_from_package_key \
+                            -package_key new-portal \
+                            -parameter default_layout]
+    }
     if { ![empty_string_p $page_num] } {
         db_1row get_layout_id_num_select {}
     } elseif { ![empty_string_p $page_id] } {