Index: openacs-4/packages/layout-manager/lib/pageset-configure-2.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/layout-manager/lib/pageset-configure-2.tcl,v diff -u -r1.5 -r1.6 --- openacs-4/packages/layout-manager/lib/pageset-configure-2.tcl 8 Feb 2010 00:20:42 -0000 1.5 +++ openacs-4/packages/layout-manager/lib/pageset-configure-2.tcl 8 Feb 2010 22:23:04 -0000 1.6 @@ -112,7 +112,10 @@ } rename_page { - set name [layout::page::unique_name -pageset_id $pageset_id -name $name] + set name [layout::page::unique_name \ + -pageset_id $pageset_id \ + -page_id $page_id \ + -name $name] layout::page::set_column_value -page_id $page_id -column name -value $name } @@ -128,7 +131,10 @@ regsub -all -nocase { } [string trim $url_name] {-} url_name regsub -all {[^[:alnum:]\-]} $url_name {} url_name - set url_name [layout::page::unique_url_name -pageset_id $pageset_id -url_name $url_name] + set url_name [layout::page::unique_url_name \ + -pageset_id $pageset_id \ + -page_id $page_id \ + -url_name $url_name] layout::page::set_column_value -page_id $page_id -column url_name -value $url_name } Index: openacs-4/packages/layout-manager/tcl/page-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/layout-manager/tcl/page-procs.tcl,v diff -u -r1.7 -r1.8 --- openacs-4/packages/layout-manager/tcl/page-procs.tcl 8 Feb 2010 00:20:42 -0000 1.7 +++ openacs-4/packages/layout-manager/tcl/page-procs.tcl 8 Feb 2010 22:23:04 -0000 1.8 @@ -12,8 +12,14 @@ ad_proc layout::page::unique_name { -name:required -pageset_id:required + {-page_id -1} } { - Guarantee that name is unique + Guarantee that name is unique in the given pageset. + + @param name Look for duplicates of this name + @param pageset_id In this pageset + @param page_id But ignore this page. Default is a page_id that never exists + (use this when creating a new page). } { set try 2 set original_name $name @@ -27,8 +33,14 @@ ad_proc layout::page::unique_url_name { -url_name:required -pageset_id:required + {-page_id -1} } { - Guarantee that url_name is unique + Guarantee that url_name is unique in the given pageset. + + @param name Look for duplicates of this url_name + @param pageset_id In this pageset + @param page_id But ignore this page. Default is a page_id that never exists + (use this when creating a new page). } { set try 2 set original_name $url_name Index: openacs-4/packages/layout-manager/tcl/page-procs.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/layout-manager/tcl/page-procs.xql,v diff -u -r1.5 -r1.6 --- openacs-4/packages/layout-manager/tcl/page-procs.xql 8 Feb 2010 00:05:53 -0000 1.5 +++ openacs-4/packages/layout-manager/tcl/page-procs.xql 8 Feb 2010 22:23:04 -0000 1.6 @@ -7,6 +7,8 @@ select 1 from layout_pages where name = :name + and pageset_id = :pageset_id + and page_id <> :page_id @@ -15,6 +17,8 @@ select 1 from layout_pages where url_name = :url_name + and pageset_id = :pageset_id + and page_id <> :page_id