Index: openacs-4/packages/acs-subsite/tcl/subsite-callback-procs-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-subsite/tcl/subsite-callback-procs-oracle.xql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/acs-subsite/tcl/subsite-callback-procs-oracle.xql 15 May 2001 16:59:00 -0000 1.1 +++ openacs-4/packages/acs-subsite/tcl/subsite-callback-procs-oracle.xql 3 Sep 2024 15:37:33 -0000 1.2 @@ -2,20 +2,29 @@ oracle8.1.6 + - - - - select distinct callback, callback_type - from subsite_callbacks - where object_type in (select t.object_type - from acs_object_types t - connect by prior t.supertype = t.object_type - start with t.object_type = :object_type) - and event_type = :event_type - - + + + with object_hierarchy(object_type, supertype) as ( + select object_type, supertype + from acs_object_types + where object_type = coalesce(:object_type, (select object_type + from acs_objects + where object_id = :object_id)) + + union all + + select t.object_type, t.supertype + from acs_object_types t, + object_hierarchy s + where t.object_type = s.supertype + ) + select distinct callback, callback_type as type + from subsite_callbacks + where event_type = :event_type + and object_type in (select object_type from object_hierarchy) + -