Index: openacs-4/contrib/packages/portal/portal.info
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/portal/portal.info,v
diff -u -r1.12 -r1.13
--- openacs-4/contrib/packages/portal/portal.info 24 Mar 2004 00:03:36 -0000 1.12
+++ openacs-4/contrib/packages/portal/portal.info 20 Jun 2004 00:39:05 -0000 1.13
@@ -7,15 +7,14 @@
f
f
-
- Arjun Sanyal
- yon
+
+ Don Baccus
Portals
2001-02-20
OpenACS
Portals are used to aggregate content from different sources within a single page. Props to Ian Baker for "Portal".
-
+
Index: openacs-4/contrib/packages/portal/tcl/element-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/portal/tcl/element-procs.tcl,v
diff -u -r1.18 -r1.19
--- openacs-4/contrib/packages/portal/tcl/element-procs.tcl 24 Mar 2004 00:03:37 -0000 1.18
+++ openacs-4/contrib/packages/portal/tcl/element-procs.tcl 20 Jun 2004 00:39:05 -0000 1.19
@@ -34,6 +34,7 @@
{-state full}
{-datasource_name:required}
{-name ""}
+ {-args ""}
} {
Create a new portal element of type datasource_name on the given portal.
@@ -43,6 +44,7 @@
@param region The page region to placer the element on.
@param datasource_name The portal datasource name
@param name The name of the element
+ @param args Optional args to set in array get format
@return The element_id of the new portlet
@@ -73,6 +75,17 @@
}
}
+ for {key value} $args {
+ portal::element::parameter::new \
+ -element_id $element_id \
+ -key $key \
+ -value $value
+ }
+
+ portal::element::initialize \
+ -datasource_name $datasource_name \
+ -element_id $element_id
+
return $element_id
}
Index: openacs-4/contrib/packages/portal/tcl/portal-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/portal/tcl/portal-procs.tcl,v
diff -u -r1.30 -r1.31
--- openacs-4/contrib/packages/portal/tcl/portal-procs.tcl 19 Jun 2004 00:59:22 -0000 1.30
+++ openacs-4/contrib/packages/portal/tcl/portal-procs.tcl 20 Jun 2004 00:39:05 -0000 1.31
@@ -58,8 +58,7 @@
would make sense to only grant read to the party directly.
@initialize_elements_p If true and template_id is set, initialize elements after
copying.
- @theme_name The theme to assign to this portal (defaults to the package's
- default_theme_name)
+ @theme_name The theme to assign to this portal (unless copying from a template)
@package_id The package id of the owning package (defaults to ad_conn package_id)
} {
@@ -72,8 +71,10 @@
set context_id $package_id
}
- if { [string equal $theme_name ""] } {
- set theme_name [parameter::get -parameter DefaultThemeName]
+ if { [string equal $template_id ""] } {
+ set theme_id [portal::theme::get_id -name $theme_name]
+ } else {
+ set theme_id [portal::get_theme_id -portal_id $template_id]
}
db_transaction {
@@ -83,7 +84,7 @@
{p_template_id $template_id}
{p_context_id $context_id}
{p_owner_id $owner_id}
- {p_theme_id [portal::theme::get_id -name $theme_name]}
+ {p_theme_id $theme_id}
{p_package_id $package_id}}]
set portal_id [package_instantiate_object -var_list $var_list portal]
@@ -92,7 +93,7 @@
permission::grant -party_id $owner_id -object_id $portal_id -privilege $privilege
}
- if {[empty_string_p $template_id]} {
+ if {[string equal $template_id ""]} {
foreach page $page_list {
portal::page::new \
-portal_id $portal_id \
@@ -598,6 +599,7 @@
set master_portal_id [portal::new \
-name "Shared Portal" \
-owner_id 0 \
+ -theme_name [parameter::get -parameter DefaultThemeName] \
-owner_privileges {}]
# create the admin template
@@ -606,24 +608,20 @@
-name "Portal Administration" \
-owner_id $package_id \
-page_list {{"Portal Administration" 2_column}} \
+ -theme_name [parameter::get -parameter DefaultThemeName] \
-owner_privileges {}]
db_foreach select_portal_datasources {} {
-
if { $admin_p } {
- set element_id [portal::element::new \
- -portal_id $admin_portal_id \
- -datasource_name $name]
+ portal::element::new \
+ -portal_id $admin_portal_id \
+ -datasource_name $name
} else {
- set element_id [portal::element::new \
- -portal_id $master_portal_id \
- -state hidden \
- -datasource_name $name]
+ portal::element::new \
+ -portal_id $master_portal_id \
+ -state hidden \
+ -datasource_name $name
}
-
- portal::element::initialize \
- -datasource_name $name \
- -element_id $element_id
}
}
}
Index: openacs-4/contrib/packages/portal/www/admin/add-applications-2.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/contrib/packages/portal/www/admin/add-applications-2.tcl,v
diff -u -r1.5 -r1.6
--- openacs-4/contrib/packages/portal/www/admin/add-applications-2.tcl 21 Mar 2004 02:39:57 -0000 1.5
+++ openacs-4/contrib/packages/portal/www/admin/add-applications-2.tcl 20 Jun 2004 00:39:06 -0000 1.6
@@ -37,38 +37,22 @@
foreach non_admin_portal $non_admin_portals {
foreach user_datasource $user_datasources {
db_transaction {
- set element_id [portal::element::new \
- -portal_id $non_admin_portal \
- -state hidden \
- -datasource_name $user_datasource]
-
- portal::element::parameter::new \
- -element_id $element_id \
- -key package_id \
- -value $application_id
-
- portal::element::initialize \
- -datasource_name $user_datasource \
- -element_id $element_id
+ portal::element::new \
+ -portal_id $non_admin_portal \
+ -state hidden \
+ -datasource_name $user_datasource \
+ -args [list package_id $application_id]
}
}
}
set admin_datasources [db_list get_admin_datasources {}]
foreach admin_datasource $admin_datasources {
db_transaction {
- set element_id [portal::element::new \
- -portal_id $admin_portal_id \
- -datasource_name $admin_datasource]
-
- portal::element::parameter::new \
- -element_id $element_id \
- -key package_id \
- -value $application_id
-
- portal::element::initialize \
- -datasource_name $admin_datasource \
- -element_id $element_id
+ portal::element::new \
+ -portal_id $admin_portal_id \
+ -datasource_name $admin_datasource \
+ -args [list package_id $application_id]
}
}
}