Index: openacs-4/packages/new-portal/tcl/portal-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/tcl/portal-procs-postgresql.xql,v diff -u -r1.6 -r1.7 --- openacs-4/packages/new-portal/tcl/portal-procs-postgresql.xql 11 Jul 2002 19:19:06 -0000 1.6 +++ openacs-4/packages/new-portal/tcl/portal-procs-postgresql.xql 12 Jul 2002 21:26:48 -0000 1.7 @@ -3,49 +3,31 @@ postgresql7.1 - - - - begin + + - :1 := portal__new ( - /* name */ :name, - /* layout_id */ :layout_id, - /* template_id */ :template_id, - /* portal_template_p */ :portal_template_p, - /* default_page_name */ :default_page_name, - /* theme_id */ :theme_id, - /* context_id */ :context_id + select portal__new ( + null, + :name, + :theme_id, + :layout_id, + :template_id, + :default_page_name, + 'portal', + now(), + null, + null, + :context_id ); - - perform acs_permission__grant_permission ( - /* object_id */ :1, - /* grantee_id */ :user_id, - /* privilege */ 'portal_read_portal' - ); - - perform acs_permission__grant_permission ( - /* object_id */ :1, - /* grantee_id */ :user_id, - /* privilege */ 'portal_edit_portal' - ); - - if :portal_template_p = 't' then - acs_permission__grant_permission ( - /* object_id */ :1, - /* grantee_id */ :user_id, - /* privilege */ 'portal_admin_portal' - ); - end if; - - end; - - + + - select portal__delete (/* portal_id */ :portal_id); + begin + portal__delete (:portal_id); + end; @@ -55,9 +37,8 @@ set region = :region, page_id = :page_id, sort_key = (select coalesce((select max(pem.sort_key) + 1 - from portal_element_map pem, portal_pages pp - where pp.portal_id = :portal_id - and pp.page_id = pem.page_id + from portal_element_map pem + where pem.page_id = :page_id and region = :region), 1) from dual) @@ -85,10 +66,11 @@ insert into portal_element_map (element_id, name, pretty_name, page_id, datasource_id, region, sort_key) values - (:new_element_id, :ds_name, :ds_name, :page_id, :ds_id, :region, + (:new_element_id, :ds_name, :pretty_name, :page_id, :ds_id, :region, coalesce((select max(sort_key) + 1 from portal_element_map - where region = :region), 1)) + where region = :region + and page_id = :page_id), 1)) @@ -97,9 +79,8 @@ update portal_element_map set region = :target_region, sort_key = (select coalesce((select max(pem.sort_key) + 1 - from portal_element_map pem, portal_pages pp - where pp.portal_id = :portal_id - and pp.page_id = pem.page_id + from portal_element_map pem + where page_id = :my_page_id and region = :target_region), 1) from dual) @@ -108,15 +89,25 @@ - + + select portal_page__new ( + null, + :pretty_name, + :portal_id, + :layout_id, + 'portal_page', + now(), + null, + null, + null + ); + + - select portal_page__new ( - /* pretty_name */ :pretty_name, - /* portal_id */ :portal_id, - /* layout_id */ :layout_id - ); - - + + + select portal_page__delete ( :page_id ); +