Index: openacs-4/packages/acs-admin/tcl/apm-admin-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-admin/tcl/apm-admin-procs.tcl,v diff -u -N -r1.20.2.4 -r1.20.2.5 --- openacs-4/packages/acs-admin/tcl/apm-admin-procs.tcl 5 Sep 2015 08:12:16 -0000 1.20.2.4 +++ openacs-4/packages/acs-admin/tcl/apm-admin-procs.tcl 25 Sep 2015 11:53:03 -0000 1.20.2.5 @@ -95,13 +95,15 @@ ad_proc -private apm_package_selection_widget { pkg_info_list - {to_install ""} + {to_install ""} + {operation "all"} } { Provides a widget for selecting packages. Displays dependency information if available. @param pkg_info_list list of package infos for all packages to be listed @param to_install list of package_keys to install + @param operation filter for added operations (all, upgrade, install) } { if {$pkg_info_list eq ""} { return "" @@ -162,8 +164,10 @@ set higher_version_p 2 } if {$higher_version_p == 2 } { + if {$operation eq "upgrade"} continue set comment "New install." } elseif {$higher_version_p == 1 } { + if {$operation eq "install"} continue set comment "Upgrade." } elseif {$higher_version_p == 0} { set comment "Package version already installed." Index: openacs-4/packages/acs-admin/www/apm/packages-install.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-admin/www/apm/packages-install.tcl,v diff -u -N -r1.24.2.1 -r1.24.2.2 --- openacs-4/packages/acs-admin/www/apm/packages-install.tcl 18 Sep 2015 07:39:03 -0000 1.24.2.1 +++ openacs-4/packages/acs-admin/www/apm/packages-install.tcl 25 Sep 2015 11:53:03 -0000 1.24.2.2 @@ -7,12 +7,25 @@ } { {checked_by_default_p:boolean 0} + {operation:word all} } set title "Package Installation" set context [list [list "/acs-admin/apm/" "Package Manager"] $title] +set dimensional_list { + { + operation "Operation:" all { + { upgrade "Upgrade" {} } + { install "Install" {} } + { all "All" {} } + } + } +} +set dimensional_list [ad_dimensional $dimensional_list] + + ### Get all the spec files # # If a package is in the apm_workspace dir then we assume that that is @@ -83,29 +96,35 @@ append body {

Select Packages to Install

Please select the set of packages you'd like to install.

- } - + } [subst { +
+ $dimensional_list +
+ }] + set formName "pkgsForm" append body [subst { - uncheck all boxes | - check all boxes + uncheck all boxes | + check all boxes }] - + #packages-install?checked_by_default_p=1 + append body "
\n" # Client properties do not deplete the limited URL variable space. @@ -133,9 +152,9 @@ } if { $checked_by_default_p } { - set widget [apm_package_selection_widget $pkg_info_list $pkg_key_list] + set widget [apm_package_selection_widget $pkg_info_list $pkg_key_list $operation] } else { - set widget [apm_package_selection_widget $pkg_info_list] + set widget [apm_package_selection_widget $pkg_info_list "" $operation] } if {$widget eq ""} {