* Preview limits the page dropdown to what's selected previously
(as preserving the full list across preview would be tricky). Userdirs were still being offered as an option there, remove them. * Fix a bug where user A created a page concurrently with user B, and when B previewed it would redirect B to A's new page, losing B's work. Instead, don't redirect and let conflict handling resolve it.master
parent
8be2b60aac
commit
553136ec1f
|
@ -394,9 +394,10 @@ sub cgi_editpage ($$) { #{{{
|
||||||
$dir=~s![^/]+/+$!!;
|
$dir=~s![^/]+/+$!!;
|
||||||
push @page_locs, $dir.$page;
|
push @page_locs, $dir.$page;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
push @page_locs, "$config{userdir}/$page"
|
push @page_locs, "$config{userdir}/$page"
|
||||||
if length $config{userdir};
|
if length $config{userdir};
|
||||||
|
}
|
||||||
|
|
||||||
@page_locs = grep {
|
@page_locs = grep {
|
||||||
! exists $pagecase{lc $_}
|
! exists $pagecase{lc $_}
|
||||||
|
@ -404,9 +405,17 @@ sub cgi_editpage ($$) { #{{{
|
||||||
if (! @page_locs) {
|
if (! @page_locs) {
|
||||||
# hmm, someone else made the page in the
|
# hmm, someone else made the page in the
|
||||||
# meantime?
|
# meantime?
|
||||||
|
if ($form->submitted eq "Preview") {
|
||||||
|
# let them go ahead with the edit
|
||||||
|
# and resolve the conflict at save
|
||||||
|
# time
|
||||||
|
@page_locs=$page;
|
||||||
|
}
|
||||||
|
else {
|
||||||
redirect($q, "$config{url}/".htmlpage($page));
|
redirect($q, "$config{url}/".htmlpage($page));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
my @editable_locs = grep {
|
my @editable_locs = grep {
|
||||||
check_canedit($_, $q, $session, 1)
|
check_canedit($_, $q, $session, 1)
|
||||||
|
|
|
@ -27,6 +27,12 @@ ikiwiki (2.40) UNRELEASED; urgency=low
|
||||||
containing ikiwiki.cgi, but this should not change the urls to the style
|
containing ikiwiki.cgi, but this should not change the urls to the style
|
||||||
sheets etc. Add a new forcebareurl parameter to misctemplate to allow
|
sheets etc. Add a new forcebareurl parameter to misctemplate to allow
|
||||||
it to do that.
|
it to do that.
|
||||||
|
* Preview limits the page dropdown to what's selected previously
|
||||||
|
(as preserving the full list across preview would be tricky). Userdirs
|
||||||
|
were still being offered as an option there, remove them.
|
||||||
|
* Fix a bug where user A created a page concurrently with user B, and
|
||||||
|
when B previewed it would redirect B to A's new page, losing B's work.
|
||||||
|
Instead, don't redirect and let conflict handling resolve it.
|
||||||
|
|
||||||
-- Josh Triplett <josh@freedesktop.org> Sun, 10 Feb 2008 13:18:58 -0800
|
-- Josh Triplett <josh@freedesktop.org> Sun, 10 Feb 2008 13:18:58 -0800
|
||||||
|
|
||||||
|
|
|
@ -3,3 +3,8 @@ If there is more than one option in the Page Location drop down box when create
|
||||||
The problem exists on Ikiwiki's wiki, but manifests itself differently, in that subpages are still displayed, so maybe that's the actual bug :)
|
The problem exists on Ikiwiki's wiki, but manifests itself differently, in that subpages are still displayed, so maybe that's the actual bug :)
|
||||||
|
|
||||||
Anyway, to reproduce, edit any page, view the page location options, preview, and some will disappear.
|
Anyway, to reproduce, edit any page, view the page location options, preview, and some will disappear.
|
||||||
|
|
||||||
|
> Yeah, this is a dark corner. :-) It'd be nice if preview did preserve the
|
||||||
|
> lise, but it's complex to do so. So for now the bug is that it added
|
||||||
|
> userdirs to the list, which I've fixed, so calling this [[done]]
|
||||||
|
> --[[Joey]]
|
||||||
|
|
Loading…
Reference in New Issue