* 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![^/]+/+$!!;
|
||||
push @page_locs, $dir.$page;
|
||||
}
|
||||
|
||||
push @page_locs, "$config{userdir}/$page"
|
||||
if length $config{userdir};
|
||||
}
|
||||
push @page_locs, "$config{userdir}/$page"
|
||||
if length $config{userdir};
|
||||
|
||||
@page_locs = grep {
|
||||
! exists $pagecase{lc $_}
|
||||
|
@ -404,8 +405,16 @@ sub cgi_editpage ($$) { #{{{
|
|||
if (! @page_locs) {
|
||||
# hmm, someone else made the page in the
|
||||
# meantime?
|
||||
redirect($q, "$config{url}/".htmlpage($page));
|
||||
return;
|
||||
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));
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
my @editable_locs = grep {
|
||||
|
|
|
@ -27,6 +27,12 @@ ikiwiki (2.40) UNRELEASED; urgency=low
|
|||
containing ikiwiki.cgi, but this should not change the urls to the style
|
||||
sheets etc. Add a new forcebareurl parameter to misctemplate to allow
|
||||
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
|
||||
|
||||
|
|
|
@ -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 :)
|
||||
|
||||
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