Index: openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl,v diff -u -N -r1.93.2.27 -r1.93.2.28 --- openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl 9 Oct 2020 17:34:28 -0000 1.93.2.27 +++ openacs-4/packages/xotcl-core/tcl/01-debug-procs.tcl 17 Oct 2020 19:03:58 -0000 1.93.2.28 @@ -1058,14 +1058,23 @@ set newSlot [self]::slot::$name $slot copy $newSlot - $newSlot configure -domain [self] -manager $newSlot -create_acs_attribute false -create_table_attribute false {*}$config + $newSlot configure \ + -domain [self] \ + -manager $newSlot \ + -create_acs_attribute false \ + -create_table_attribute false \ + {*}$config # - # When the following line is not commented, then - # "update_attribute_from_slot" works for "title", "description" - # etc. But then the accessor methods (for "title", "description") - # are NOT registered for the classes. This needs some work. + # Changing the domain is neccessary for "update_attribute_from_slot" + # for the extended slots like "title", "description" etc. But then + # the accessor methods (for "title", "description") have to be + # installed manually for the classes, on which the extension + # happens. # - #$newSlot domain [$slot domain] + ::nsf::method::setter [$newSlot domain] $name + ns_log notice "=== change domain of $name from [$newSlot domain] to [$slot domain]" + $newSlot domain [$slot domain] + # set :db_slot($name) $newSlot }