Index: openacs-4/packages/xotcl-core/xotcl-core.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/xotcl-core.info,v diff -u -r1.106.2.49 -r1.106.2.50 --- openacs-4/packages/xotcl-core/xotcl-core.info 27 Feb 2023 18:33:07 -0000 1.106.2.49 +++ openacs-4/packages/xotcl-core/xotcl-core.info 7 Mar 2023 09:48:20 -0000 1.106.2.50 @@ -10,7 +10,7 @@ t xotcl - + Gustaf Neumann XOTcl library functionality (e.g. thread handling, online documentation, Generic Form and List Classes) 2021-09-16 @@ -42,7 +42,7 @@ BSD-Style 2 - + Index: openacs-4/packages/xotcl-core/tcl/06-package-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/tcl/06-package-procs.tcl,v diff -u -r1.41.2.56 -r1.41.2.57 --- openacs-4/packages/xotcl-core/tcl/06-package-procs.tcl 27 Nov 2022 17:35:46 -0000 1.41.2.56 +++ openacs-4/packages/xotcl-core/tcl/06-package-procs.tcl 7 Mar 2023 09:48:20 -0000 1.41.2.57 @@ -640,7 +640,9 @@ ::xo::cc array set form_parameter $form_parameter } - # create package object if necessary + # + # Create package object instance if necessary. + # if {$keep_cc} { :require $package_id } else { @@ -656,8 +658,8 @@ # #:msg "force [::$package_id force_refresh_login] &&\ # [::xo::cc set untrusted_user_id] != [::xo::cc user_id]" - if {[::$package_id force_refresh_login] && - [::xo::cc set untrusted_user_id] != [::xo::cc user_id]} { + if {[::$package_id force_refresh_login] + && [::xo::cc set untrusted_user_id] != [::xo::cc user_id]} { auth::require_login } @@ -828,10 +830,10 @@ set package_url [lindex [site_node::get_url_from_object_id -object_id $id] 0] #:log "--R creating package_url='$package_url'" if {$package_url ne ""} { - array set info [site_node::get -url $package_url] - #set package_url $info(url) - :package_key $info(package_key) - :instance_name $info(instance_name) + set info [site_node::get -url $package_url] + #set package_url [dict get $info url] + :package_key [dict get $info package_key] + :instance_name [dict get $info instance_name] } else { ::xo::dc 1row package_info { select package_key, instance_name from apm_packages where package_id = :id @@ -874,9 +876,16 @@ } ::xo::Package instproc initialize {} { - # empty hook for user level initialization + # Empty hook for OpenACS package level initialization. This is + # used e.g. by xowf for adding the work flow mixin classes. } + ::xo::Package instproc process_init_parameter {init_parameter} { + # Empty hook for package instance initialization, when e.g. one + # instance of an xowiki package should behave differently from + # another one. + } + Package ad_instproc require_root_folder { {-parent_id -100} {-content_types {}} Index: openacs-4/packages/xowiki/xowiki.info =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/xowiki.info,v diff -u -r1.180.2.110 -r1.180.2.111 --- openacs-4/packages/xowiki/xowiki.info 27 Feb 2023 18:48:57 -0000 1.180.2.110 +++ openacs-4/packages/xowiki/xowiki.info 7 Mar 2023 09:48:19 -0000 1.180.2.111 @@ -10,7 +10,7 @@ t xowiki - + Gustaf Neumann A xotcl-based enterprise wiki system with multiple object types 2021-09-15 @@ -55,8 +55,8 @@ BSD-Style 2 - - + + Fisheye: Tag 1.1 refers to a dead (removed) revision in file `openacs-4/packages/xowiki/tcl/package-custom-procs.tcl'. Fisheye: No comparison available. Pass `N' to diff? Index: openacs-4/packages/xowiki/tcl/package-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/package-procs.tcl,v diff -u -r1.332.2.131 -r1.332.2.132 --- openacs-4/packages/xowiki/tcl/package-procs.tcl 4 Mar 2023 17:28:40 -0000 1.332.2.131 +++ openacs-4/packages/xowiki/tcl/package-procs.tcl 7 Mar 2023 09:48:19 -0000 1.332.2.132 @@ -899,13 +899,13 @@ :require_folder_object set :policy [:get_parameter -check_query_parameter false security_policy ::xowiki::policy1] ::xowiki::CSS initialize - set init_parameter [:get_parameter -check_query_parameter false PackageInitParameter ""] - if {$init_parameter eq "swa-only"} { - if {[ns_conn isconnected] && ![acs_user::site_wide_admin_p -user_id [xo::cc user_id]]} { - :reply_to_user [:error_msg -title "Restricted Access" "This page is restricted to Site Admins only"] - ad_script_abort - } - } + # + # Call package instance initialization after full initialization + # of the package with the value of the package parameter + # "PackageInitParameter". For the time being, this parameter + # should be set via the parameter page. + # + :process_init_parameter [:get_parameter -check_query_parameter false PackageInitParameter ""] # :proc destroy {} {:log "--P "; next} }