Index: openacs-4/packages/acs-tcl/tcl/site-nodes-procs-oracle.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/site-nodes-procs-oracle.xql,v diff -u -r1.8 -r1.9 --- openacs-4/packages/acs-tcl/tcl/site-nodes-procs-oracle.xql 21 Jun 2002 18:54:47 -0000 1.8 +++ openacs-4/packages/acs-tcl/tcl/site-nodes-procs-oracle.xql 22 Jun 2002 17:28:32 -0000 1.9 @@ -48,12 +48,6 @@ - - - select site_node.url(:node_id) from dual - - - select site_node.url(node_id) Index: openacs-4/packages/acs-tcl/tcl/site-nodes-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/site-nodes-procs-postgresql.xql,v diff -u -r1.12 -r1.13 --- openacs-4/packages/acs-tcl/tcl/site-nodes-procs-postgresql.xql 21 Jun 2002 20:59:35 -0000 1.12 +++ openacs-4/packages/acs-tcl/tcl/site-nodes-procs-postgresql.xql 22 Jun 2002 17:28:32 -0000 1.13 @@ -44,12 +44,6 @@ - - - select site_node__url(:node_id) - - - select site_node__url(node_id) Index: openacs-4/packages/acs-tcl/tcl/site-nodes-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-tcl/tcl/site-nodes-procs.tcl,v diff -u -r1.8 -r1.9 --- openacs-4/packages/acs-tcl/tcl/site-nodes-procs.tcl 21 Jun 2002 18:54:47 -0000 1.8 +++ openacs-4/packages/acs-tcl/tcl/site-nodes-procs.tcl 22 Jun 2002 17:28:32 -0000 1.9 @@ -61,6 +61,7 @@ delete the site node } { db_exec_plsql delete_site_node {} + update_cache -node_id $node_id } ad_proc -public mount { @@ -86,6 +87,7 @@ initialize the site node cache } { nsv_array reset site_nodes [list] + nsv_array reset site_node_urls [list] db_foreach select_site_nodes {} { set node(url) $url @@ -99,6 +101,7 @@ set node(package_id) $package_id nsv_set site_nodes $url [array get node] + nsv_set site_node_urls $node_id $url } ns_eval { @@ -124,13 +127,24 @@ set node(package_id) $package_id nsv_set site_nodes $url [array get node] + nsv_set site_node_urls $node_id $url ns_eval { global tcl_site_nodes if {[info exists tcl_site_nodes]} { array unset tcl_site_nodes "${url}*" } } + } else { + set url [get_url -node_id $node_id] + + if {[nsv_exists site_nodes $url]} { + nsv_unset site_nodes $url + } + + if {[nsv_exists site_node_urls $node_id]} { + nsv_unset site_node_urls $node_id + } } } @@ -205,7 +219,12 @@ } { return the url of this node_id } { - return [db_string select_url {} -default ""] + set url "" + if {[nsv_exists site_node_urls $node_id]} { + set url [nsv_get site_node_urls $node_id] + } + + return $url } ad_proc -public get_node_id {