Index: openacs-4/packages/new-portal/sql/oracle/portal-core-create.sql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/sql/oracle/portal-core-create.sql,v
diff -u -N -r1.35 -r1.36
--- openacs-4/packages/new-portal/sql/oracle/portal-core-create.sql 25 Jan 2002 20:04:45 -0000 1.35
+++ openacs-4/packages/new-portal/sql/oracle/portal-core-create.sql 18 Feb 2002 19:54:52 -0000 1.36
@@ -41,7 +41,8 @@
constraint p_datasources_datasource_id_pk
primary key,
description varchar(200),
- name varchar(200) not null
+ name varchar(200) not null,
+ pretty_name varchar(200) not null
);
Index: openacs-4/packages/new-portal/tcl/portal-procs-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/tcl/portal-procs-oracle.xql,v
diff -u -N -r1.8 -r1.9
--- openacs-4/packages/new-portal/tcl/portal-procs-oracle.xql 28 Jan 2002 17:51:46 -0000 1.8
+++ openacs-4/packages/new-portal/tcl/portal-procs-oracle.xql 18 Feb 2002 19:54:52 -0000 1.9
@@ -57,9 +57,8 @@
set region = :region,
page_id = :page_id,
sort_key = (select nvl((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)
@@ -90,18 +89,26 @@
(:new_element_id, :ds_name, :ds_name, :page_id, :ds_id, :region,
nvl((select max(sort_key) + 1
from portal_element_map
- where region = :region), 1))
+ where region = :region
+ and page_id = :page_id), 1))
+
+
+ select page_id as my_page_id
+ from portal_element_map
+ where element_id = :element_id
+
+
+
update portal_element_map
set region = :target_region,
sort_key = (select nvl((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)
@@ -125,11 +132,5 @@
-
-
-
-
-
-
Index: openacs-4/packages/new-portal/tcl/portal-procs.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/tcl/portal-procs.tcl,v
diff -u -N -r1.112 -r1.113
--- openacs-4/packages/new-portal/tcl/portal-procs.tcl 18 Feb 2002 19:51:23 -0000 1.112
+++ openacs-4/packages/new-portal/tcl/portal-procs.tcl 18 Feb 2002 19:54:52 -0000 1.113
@@ -454,7 +454,6 @@
"swap" {
portal::swap_element $portal_id \
[ns_set get $form element_id] \
- [ns_set get $form sort_key] \
[ns_set get $form region] \
[ns_set get $form direction]
}
@@ -878,22 +877,23 @@
ad_proc -private swap_element {
portal_id
element_id
- sort_key
region
dir
} {
Moves a PE in the up or down by swapping its sk with its neighbor's
@param portal_id
@param element_id
- @param sort_key of the element to be moved
@param region
@param dir either up or down
} {
ad_require_permission $portal_id portal_read_portal
ad_require_permission $portal_id portal_edit_portal
+ # get this element's sk
+ db_1row get_my_sort_key_and_page_id {}
+
if { $dir == "up" } {
# get the sort_key and id of the element above
if {[db_0or1row get_prev_sort_key {}] == 0} {
@@ -952,7 +952,9 @@
ad_return_complaint 1 "portal::move_element Bad direction!"
}
- # just move the element to the bottom of the region
+ # get this element's page_id
+ db_1row get_my_page_id {}
+
db_dml update {}
}
Index: openacs-4/packages/new-portal/tcl/portal-procs.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/tcl/portal-procs.xql,v
diff -u -N -r1.16 -r1.17
--- openacs-4/packages/new-portal/tcl/portal-procs.xql 11 Feb 2002 06:05:43 -0000 1.16
+++ openacs-4/packages/new-portal/tcl/portal-procs.xql 18 Feb 2002 19:54:52 -0000 1.17
@@ -300,15 +300,24 @@
+
+
+ select sort_key as my_sort_key, page_id as my_page_id
+ from portal_element_map
+ where element_id = :element_id
+
+
+
select sort_key as other_sort_key, element_id as other_element_id
from (select pem.sort_key, element_id
from portal_element_map pem, portal_pages pp
where pp.portal_id = :portal_id
+ and pem.page_id = :my_page_id
and pp.page_id = pem.page_id
and region = :region
- and pem.sort_key < :sort_key
+ and pem.sort_key < :my_sort_key
and state != 'pinned'
order by pem.sort_key desc) where rownum = 1
@@ -320,9 +329,10 @@
from (select pem.sort_key, element_id
from portal_element_map pem, portal_pages pp
where pp.portal_id = :portal_id
+ and pem.page_id = :my_page_id
and pem.page_id = pp.page_id
and region = :region
- and pem.sort_key > :sort_key
+ and pem.sort_key > :my_sort_key
and state != 'pinned'
order by pem.sort_key) where rownum = 1
@@ -337,7 +347,7 @@
- update portal_element_map set sort_key = :sort_key
+ update portal_element_map set sort_key = :my_sort_key
where element_id = :other_element_id
Index: openacs-4/packages/new-portal/www/place-element.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/new-portal/www/place-element.adp,v
diff -u -N -r1.27 -r1.28
--- openacs-4/packages/new-portal/www/place-element.adp 28 Jan 2002 17:51:46 -0000 1.27
+++ openacs-4/packages/new-portal/www/place-element.adp 18 Feb 2002 19:54:52 -0000 1.28
@@ -13,10 +13,10 @@
-
+
-
+