Personal_wikis: Add hack to handle rarely-reproducible problem of editing-after-renaming

pull/620/head v4.2.0.1702
gnosygnu 7 years ago
parent f7a7ba00f3
commit 935dda389a

@ -145,9 +145,7 @@ public class IoEngine_system extends IoEngine_base {
}
return buffer.toByteArray();
}
@Override public boolean ExistsDir(Io_url url) {
return new File(url.Xto_api()).exists();
}
@Override public boolean ExistsDir(Io_url url) {return new File(url.Xto_api()).exists();}
@Override public void CreateDir(Io_url url) {new File(url.Xto_api()).mkdirs();}
@Override public void DeleteDir(Io_url url) {
File dir = new File(url.Xto_api());

@ -69,7 +69,7 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm {
else if (ctx.Match(k, Invk_page_refresh)) Page__refresh();
else if (ctx.Match(k, Invk_page_async_exec)) Xog_async_wkr.Async(((Xog_tab_itm)m.ReadObj("v")));
else if (ctx.Match(k, Invk_page_view_read)) Page__mode_(Xopg_page_.Tid_read);
else if (ctx.Match(k, Invk_page_view_edit)) Page__mode_(Xopg_page_.Tid_edit);
else if (ctx.Match(k, Invk_page_view_edit)) Page__mode_edit_();
else if (ctx.Match(k, Invk_page_view_html)) Page__mode_(Xopg_page_.Tid_html);
else if (ctx.Match(k, Invk_page_edit_save)) Xog_tab_itm_edit_mgr.Save(tab_mgr.Active_tab(), Bool_.N);
else if (ctx.Match(k, Invk_page_edit_save_draft)) Xog_tab_itm_edit_mgr.Save(tab_mgr.Active_tab(), Bool_.Y);
@ -157,6 +157,12 @@ public class Xog_win_itm implements Gfo_invk, Gfo_evt_itm {
? null
: String_.Mid(v, pos + 1);
}
public void Page__mode_edit_() { // only called from by link
// HACK: when "edit" is clicked, always reload page from database; handles rarely-reproducible issue of "edit-after-rename" causing older versions to show up
Xog_tab_itm tab = tab_mgr.Active_tab(); Xoae_page page = tab.Page(); Xowe_wiki wiki = tab.Wiki();
page = wiki.Page_mgr().Load_page(page.Url(), page.Ttl(), tab);
Page__mode_(Xopg_page_.Tid_edit);
}
public void Page__mode_(byte new_mode_tid) {
Xog_tab_itm tab = tab_mgr.Active_tab(); Xoae_page page = tab.Page(); Xowe_wiki wiki = tab.Wiki();
if ( new_mode_tid == Xopg_page_.Tid_read // used to be && cur_view_tid == Edit; removed clause else redlinks wouldn't show when going form html to read (or clicking read multiple times) DATE: 2013-11-26;

Loading…
Cancel
Save