From ab3bedcc9f939ef7828399a8465b3374258dbd91 Mon Sep 17 00:00:00 2001 From: gnosygnu Date: Wed, 12 Oct 2016 15:47:47 -0400 Subject: [PATCH] if catpage link is missing, output page_id not ~{itm_text} --- .../Xoctg_catpage_mgr__basic__tst.java | 2 +- .../catpages/fmts/Xoctg_fmt_itm_base.java | 21 +++++++++---------- .../catpages/fmts/Xoctg_fmt_itm_subc.java | 4 ---- 3 files changed, 11 insertions(+), 16 deletions(-) diff --git a/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/Xoctg_catpage_mgr__basic__tst.java b/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/Xoctg_catpage_mgr__basic__tst.java index fd02f9a0c..cf7cfa59b 100644 --- a/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/Xoctg_catpage_mgr__basic__tst.java +++ b/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/Xoctg_catpage_mgr__basic__tst.java @@ -29,7 +29,7 @@ public class Xoctg_catpage_mgr__basic__tst { Xoctg_catpage_itm itm = fxt.Ctg().Grp_by_tid(Xoa_ctg_mgr.Tid__page).Itms__get_at(0); itm.Page_ttl_(Xoa_ttl.Null); itm.Sortkey_handle_make(Bry_bfr_.New(), Bry_.Empty); - fxt.Test__html__page(Xoa_ctg_mgr.Tid__page, Byte_ascii.Ltr_A, "\n
  • A1 (missing)
  • "); + fxt.Test__html__page(Xoa_ctg_mgr.Tid__page, Byte_ascii.Ltr_A, "\n
  • missing page (0)
  • "); } @Test public void Visited_doesnt_work_for_space() {// PURPOSE: xowa-visited not inserted for pages with space byte[] page_bry = Bry_.new_a7("A 1"); diff --git a/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_base.java b/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_base.java index 3af5a69b2..25bb236f8 100644 --- a/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_base.java +++ b/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_base.java @@ -66,25 +66,24 @@ public abstract class Xoctg_fmt_itm_base implements gplx.core.brys.Bfr_arg { } Xoa_ttl itm_ttl = itm.Page_ttl(); - Bld_html(bfr, wiki, history_mgr, href_parser, itm, itm_ttl); + if (itm_ttl == Xoa_ttl.Null) + Fmt__missing.Bld_many(bfr, itm.Page_id()); + else + Bld_html(bfr, wiki, history_mgr, href_parser, itm, itm_ttl); } loop_end_idx = grp_end; loop_ends_at_col = true; } @gplx.Virtual public void Bld_html(Bry_bfr bfr, Xow_wiki wiki, Xou_history_mgr history_mgr, Xoh_href_parser href_parser, Xoctg_catpage_itm itm, Xoa_ttl ttl) { - if (ttl == Xoa_ttl.Null) - Fmt__missing.Bld_many(bfr, itm.Page_id()); - else { - byte[] itm_full_ttl = Gfh_utl.Escape_html_as_bry(tmp_bfr, ttl.Full_txt_w_ttl_case());// NOTE: ttl.Full_txt() to get full ns; EX: Template:A instead of just "A" - byte[] itm_href = wiki.Html__href_wtr().Build_to_bry(wiki, ttl); - byte[] itm_atr_cls = Xoh_lnki_wtr.Lnki_cls_visited(history_mgr, wiki.Domain_bry(), ttl.Page_txt()); // NOTE: must be ttl.Page_txt() in order to match Xou_history_mgr.Add - Fmt__exists.Bld_many(bfr, itm_href, itm_atr_cls, itm_full_ttl, itm_full_ttl, gplx.core.encoders.Hex_utl_.Encode_bry(itm.Sortkey_binary())); - } + byte[] itm_full_ttl = Gfh_utl.Escape_html_as_bry(tmp_bfr, ttl.Full_txt_w_ttl_case());// NOTE: ttl.Full_txt() to get full ns; EX: Template:A instead of just "A" + byte[] itm_href = wiki.Html__href_wtr().Build_to_bry(wiki, ttl); + byte[] itm_atr_cls = Xoh_lnki_wtr.Lnki_cls_visited(history_mgr, wiki.Domain_bry(), ttl.Page_txt()); // NOTE: must be ttl.Page_txt() in order to match Xou_history_mgr.Add + Fmt__exists.Bld_many(bfr, itm_href, itm_atr_cls, itm_full_ttl, itm_full_ttl, gplx.core.encoders.Hex_utl_.Encode_bry(itm.Sortkey_binary())); } - protected static final Bry_fmt + private static final Bry_fmt Fmt__missing = Bry_fmt.Auto_nl_skip_last ( "" - , "
  • ~{itm_text} (missing)
  • " + , "
  • missing page (~{itm_id})
  • " ) , Fmt__exists = Bry_fmt.Auto_nl_skip_last ( "" diff --git a/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_subc.java b/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_subc.java index 0dd27dded..50f25b59d 100644 --- a/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_subc.java +++ b/400_xowa/src/gplx/xowa/addons/wikis/ctgs/htmls/catpages/fmts/Xoctg_fmt_itm_subc.java @@ -23,10 +23,6 @@ import gplx.xowa.users.history.*; class Xoctg_fmt_itm_subc extends Xoctg_fmt_itm_base { private final Bry_bfr tmp_bfr = Bry_bfr_.New(); @Override public void Bld_html(Bry_bfr bfr, Xow_wiki wiki, Xou_history_mgr history_mgr, Xoh_href_parser href_parser, Xoctg_catpage_itm itm, Xoa_ttl ttl) { - if (ttl == Xoa_ttl.Null) { - Fmt__missing.Bld_many(bfr, itm.Page_id()); - return; - } byte[] itm_href = wiki.Html__href_wtr().Build_to_bry(wiki, ttl); int count_subcs = 0; int count_pages = 0;