Index: openacs-4/packages/acs-subsite/www/o.vuh =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-subsite/www/o.vuh,v diff -u -r1.2 -r1.3 --- openacs-4/packages/acs-subsite/www/o.vuh 5 Feb 2005 11:57:13 -0000 1.2 +++ openacs-4/packages/acs-subsite/www/o.vuh 8 Feb 2005 08:29:11 -0000 1.3 @@ -29,15 +29,15 @@ return } -# Users are handled as a special case since we want to preserve the subsite +# Users are handled as a special case since we want to preserve the subsite # we are loading from... -if {[string eq $object_type user]} { +if {[string eq $object_type user]} { ad_returnredirect [acs_community_member_url -user_id $object_id] ad_script_abort -} +} -if {[string eq $object_type content_item]} { +if {[string eq $object_type content_item]} { db_0or1row object_data { select o.object_type, o.object_id, o.package_id from acs_objects o, cr_items i @@ -52,13 +52,23 @@ } -if {![info exists object_type]} { +if {![info exists object_type]} { ad_return_warning "Invalid object ID" [subst { The object ID $object_id doesn't exist.

We are sorry for this inconvenience. }] return } -set page_url [acs_sc::invoke -error -contract FtsContentProvider -operation url -impl $object_type -call_args [list $object_id]] -ad_returnredirect $page_url$anchor +set page_url [acs_sc::invoke -contract FtsContentProvider -operation url -impl $object_type -call_args [list $object_id]] +if {![empty_string_p $page_url]} { + ad_returnredirect $page_url$anchor +} else { + ad_return_warning "Invalid object ID" [subst { + The object ID $object_id is a $object_type but getting + it's real url failed. +

We are sorry for this inconvenience. + }] +} + +