Index: openacs-4/packages/xowiki/tcl/includelet-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/includelet-procs.tcl,v diff -u -r1.104 -r1.105 --- openacs-4/packages/xowiki/tcl/includelet-procs.tcl 8 Apr 2009 10:59:43 -0000 1.104 +++ openacs-4/packages/xowiki/tcl/includelet-procs.tcl 9 Apr 2009 10:37:49 -0000 1.105 @@ -2300,7 +2300,7 @@ set granted [$package_id check_permissions \ -user_id [[$package_id context] user_id] \ -package_id $package_id \ - $package_id change_page_order] + $package_id change-page-order] #my msg "granted=$granted" if {$granted} { set ajaxhelper 0 @@ -2349,7 +2349,7 @@ } if {$allow_reorder ne ""} { - set js "YAHOO.xo_page_order_region.DDApp.report_link = '[$package_id package_url]';\n" + set js "YAHOO.xo_page_order_region.DDApp.package_url = '[$package_id package_url]';\n" set last_level 0 set ID [my js_name] if {[string is integer -strict $allow_reorder]} { Index: openacs-4/packages/xowiki/tcl/package-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/package-procs.tcl,v diff -u -r1.170 -r1.171 --- openacs-4/packages/xowiki/tcl/package-procs.tcl 9 Apr 2009 07:55:42 -0000 1.170 +++ openacs-4/packages/xowiki/tcl/package-procs.tcl 9 Apr 2009 10:37:50 -0000 1.171 @@ -689,7 +689,7 @@ } #my msg "we have to try to import a prototype page for $stripped_object" - set page [my import_prototype_page $stripped_object] + set page [my import-prototype-page $stripped_object] if {$page ne ""} { return $page } @@ -751,10 +751,10 @@ return $item_id } - Package instproc import_prototype_page {{prototype_name ""}} { + Package instproc import-prototype-page {{prototype_name ""}} { set page "" if {$prototype_name eq ""} { - set prototype_name [my query_parameter import_prototype_page ""] + set prototype_name [my query_parameter import-prototype-page ""] set via_url 1 } if {$prototype_name eq ""} { @@ -963,6 +963,18 @@ # user callable methods on package level # + Package ad_instproc refresh-login {} { + Force a refresh of a login and do a redict. Intended for use from ajax. + } { + set return_url [my query_parameter return_url] + if {[::xo::cc user_id] == 0} { + set url [subsite::get_url]register + ad_returnredirect [export_vars -base $url return_url] + } else { + ad_returnredirect $return_url + } + } + # # reindex (for site wide search) # @@ -982,10 +994,10 @@ } # - # change_page_order (normally called via ajax POSTs) + # change-page-order (normally called via ajax POSTs) # - Package ad_instproc change_page_order {} { - change_page_order for pages + Package ad_instproc change-page-order {} { + Change Page Order for pages by renumbering and filling gaps. } { my instvar folder_id set to [string trim [my form_parameter to ""]] @@ -1062,7 +1074,6 @@ # # Flush the page fragement caches (page fragments based on page_order might be sufficient) my flush_page_fragment_cache -scope agg - ns_return 200 text/plain ok } @@ -1448,8 +1459,9 @@ Class Package -array set require_permission { reindex swa - change_page_order {{id admin}} - import_prototype_page swa + change-page-order {{id admin}} + import-prototype-page swa + refresh-login none rss none google-sitemap none google-sitemapindex none @@ -1503,9 +1515,10 @@ Class Package -array set require_permission { reindex {{id admin}} rss none + refresh-login none google-sitemap none google-sitemapindex none - change_page_order {{id admin}} + change-page-order {{id admin}} manage-categories {{id admin}} edit-category-tree {{id admin}} delete swa @@ -1557,9 +1570,10 @@ Class Package -array set require_permission { reindex {{id admin}} rss none + refresh-login none google-sitemap none google-sitemapindex none - change_page_order {{id admin}} + change-page-order {{id admin}} manage-categories {{id admin}} edit-category-tree {{id admin}} delete swa @@ -1614,9 +1628,10 @@ Class Package -array set require_permission { reindex {{id admin}} rss none + refresh-login none google-sitemap none google-sitemapindex none - change_page_order {{id admin}} + change-page-order {{id admin}} manage-categories {{id admin}} edit-category-tree {{id admin}} delete swa Index: openacs-4/packages/xowiki/tcl/weblog-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/weblog-procs.tcl,v diff -u -r1.42 -r1.43 --- openacs-4/packages/xowiki/tcl/weblog-procs.tcl 3 Apr 2009 14:58:16 -0000 1.42 +++ openacs-4/packages/xowiki/tcl/weblog-procs.tcl 9 Apr 2009 10:37:50 -0000 1.43 @@ -45,7 +45,7 @@ # this argument... set XOTclClassMixins [::xotcl::Class info instmixin] ::xotcl::Class instmixin {} - set page [$package_id import_prototype_page $t] + set page [$package_id import-prototype-page $t] ::xotcl::Class instmixin $XOTclClassMixins if {$page ne ""} {set form_item_id [$page item_id]} } Index: openacs-4/packages/xowiki/tcl/xowiki-callback-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/xowiki-callback-procs.tcl,v diff -u -r1.55 -r1.56 --- openacs-4/packages/xowiki/tcl/xowiki-callback-procs.tcl 9 Apr 2009 08:10:07 -0000 1.55 +++ openacs-4/packages/xowiki/tcl/xowiki-callback-procs.tcl 9 Apr 2009 10:37:50 -0000 1.56 @@ -328,7 +328,7 @@ # load for all xowiki package instances the weblog-portlet prototype page foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page weblog-portlet + $package_id import-prototype-page weblog-portlet } } @@ -351,8 +351,8 @@ "update cr_items set name = 'file' || substr(name,6) \ where name like 'image:%' and parent_id = [$package_id folder_id]" # reload updated prototype pages - $package_id import_prototype_page book - $package_id import_prototype_page weblog + $package_id import-prototype-page book + $package_id import-prototype-page weblog # TODO check: jon.griffin } } @@ -364,7 +364,7 @@ # for all xowiki package instances foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page categories-portlet + $package_id import-prototype-page categories-portlet } # perform the upgrate of 0.62 for the s5 package as well if {[info command ::s5::Package] ne ""} { @@ -394,9 +394,9 @@ # load for all xowiki package instances the weblog-portlet prototype page foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page announcements - $package_id import_prototype_page news - $package_id import_prototype_page weblog-portlet + $package_id import-prototype-page announcements + $package_id import-prototype-page news + $package_id import-prototype-page weblog-portlet } copy_parameter top_portlet top_includelet } @@ -408,8 +408,8 @@ # load for all xowiki package instances the weblog-portlet prototype page foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page news - $package_id import_prototype_page weblog-portlet + $package_id import-prototype-page news + $package_id import-prototype-page weblog-portlet } # To iterate over all kind of xowiki packages, we could do # foreach package [concat ::xowiki::Package [::xowiki::Package info subclass]] { @@ -426,7 +426,7 @@ # load for all xowiki package instances the weblog-portlet prototype page foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page news-item + $package_id import-prototype-page news-item } copy_parameter top_portlet top_includelet } @@ -444,8 +444,8 @@ ns_log notice "-- upgrading to $v" foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page weblog - $package_id import_prototype_page weblog-portlet + $package_id import-prototype-page weblog + $package_id import-prototype-page weblog-portlet } } @@ -493,7 +493,7 @@ ns_log notice "-- upgrading to $v" foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page ical + $package_id import-prototype-page ical } } @@ -503,7 +503,7 @@ ns_log notice "-- upgrading to $v" foreach package_id [::xowiki::Package instances] { ::xowiki::Package initialize -package_id $package_id -init_url false - $package_id import_prototype_page weblog + $package_id import-prototype-page weblog } db_dml strip_colons_from_tags \ "update xowiki_tags set tag = trim(both ',' from tag) where tag like '%,%'" Index: openacs-4/packages/xowiki/www/resources/yui-page-order-region.js =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/www/resources/yui-page-order-region.js,v diff -u -r1.2 -r1.3 --- openacs-4/packages/xowiki/www/resources/yui-page-order-region.js 9 Apr 2009 08:13:36 -0000 1.2 +++ openacs-4/packages/xowiki/www/resources/yui-page-order-region.js 9 Apr 2009 10:37:50 -0000 1.3 @@ -31,7 +31,7 @@ YAHOO.xo_page_order_region.DDApp = { with_DDTarget: 1, - report_link: "", + package_url: "", cd: new Array(), source_region: new Array(), level: new Array(), @@ -118,20 +118,34 @@ //console.log(this.cd[ul.id] + " => " + order + " => " + this.cd[this.source_region[e.id].id]); - if (this.report_link != '' && order != '') { + if (this.package_url != '' && order != '') { this.callback = { - success: function(o) { - //window.location.href=window.location.href; - window.location.reload(); - } + success: function(o) { + //console.info(o); There seems no way to handle redirects + // (301 or 302) in the asyncrequest. Since we know valid + // results (just the "OK"), everything else must be a + // redirect. We could be brutal and display the returned + // page, but not sure, if this would be desireable either. + if (o.getResponseHeader["Content-Length"] > 10) { + // there must have happened a redirect + alert("Refresh your login and redo update"); + window.location.href = this.package_url + + "?refresh-login&return_url=" + + escape(window.location.href); + } else { + window.location.reload(); + } + + }, + scope: this } - YAHOO.util.Connect.asyncRequest('POST', this.report_link, this.callback, - 'change_page_order=1' + + YAHOO.util.Connect.asyncRequest('POST', this.package_url, this.callback, + 'change-page-order=1' + '&from=' + escape(this.cd[ul.id]) + '&to=' + escape(order) + '&clean=' + escape(this.cd[this.source_region[e.id].id])); } - }, + } };