mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
v3.1.4.2
This commit is contained in:
@@ -50,7 +50,7 @@ public class Gallery_itm implements Js_img_wkr {
|
||||
Bry_bfr bfr = wiki.Utl__bfr_mkr().Get_k004(), tmp_bfr = wiki.Utl__bfr_mkr().Get_k004();
|
||||
try {
|
||||
xfer_itm.Init_at_gallery_end(html_w, html_h, html_view_url, html_orig_url);
|
||||
gallery_mgr.Write_html_itm(bfr, tmp_bfr, wiki.Appe(), wiki, ctx.Cur_page(), ctx, wiki.Html_mgr().Html_wtr(), Xoh_wtr_ctx.Basic, src, xnde, Bry_.Empty, gallery_itm_idx, xfer_itm, false);
|
||||
gallery_mgr.Write_html_itm(bfr, tmp_bfr, wiki.Appe(), wiki, ctx.Page(), ctx, wiki.Html_mgr().Html_wtr(), Xoh_wtr_ctx.Basic, src, xnde, Bry_.Empty, gallery_itm_idx, xfer_itm, false);
|
||||
String itm_html = bfr.To_str_and_clear();
|
||||
js_wkr.Html_elem_replace_html(String_.new_u8(gallery_li_id_bry), itm_html);
|
||||
if (gallery_itm_idx == xnde.Itms_len() - 1 && Gallery_mgr_base_.Mode_is_packed(xnde.Mode()))
|
||||
|
||||
@@ -69,7 +69,7 @@ public class Gallery_itm_parser {
|
||||
cur_itm.Lnki_tkn_(lnki_tkn);
|
||||
if (cur_itm.Page_bgn() != -1) {
|
||||
int page_val = Bry_.To_int_or(src, cur_itm.Page_bgn(), cur_itm.Page_end(), -1);
|
||||
if (page_val == -1) Xoa_app_.Usr_dlg().Warn_many("", "", "page is not an int: wiki=~{0} ttl=~{1} page=~{2}", wiki.Domain_str(), ctx.Cur_page().Ttl().Page_db(), String_.new_u8(src, cur_itm.Page_bgn(), cur_itm.Page_end()));
|
||||
if (page_val == -1) Xoa_app_.Usr_dlg().Warn_many("", "", "page is not an int: wiki=~{0} ttl=~{1} page=~{2}", wiki.Domain_str(), ctx.Page().Ttl().Page_db(), String_.new_u8(src, cur_itm.Page_bgn(), cur_itm.Page_end()));
|
||||
lnki_tkn.Page_(page_val);
|
||||
}
|
||||
byte[] lnki_caption = cur_itm.Caption_bry();
|
||||
@@ -78,8 +78,8 @@ public class Gallery_itm_parser {
|
||||
cur_itm.Caption_tkn_(caption_tkn);
|
||||
}
|
||||
Xopg_redlink_logger file_wkr = ctx.Lnki().File_wkr(); // NOTE: do not set file_wkr ref early (as member var); parse_all sets late
|
||||
ctx.Cur_page().Lnki_list().Add(lnki_tkn);
|
||||
mgr.Get_thumb_size(lnki_tkn, cur_itm.Ext()); // NOTE: set thumb size, so that lnki.temp parse picks it up
|
||||
ctx.Page().Lnki_list().Add(lnki_tkn);
|
||||
mgr.Get_thumb_size(lnki_tkn, cur_itm.Ext()); // NOTE: set thumb size, so that lnki.temp parse picks it up
|
||||
if (file_wkr != null) file_wkr.Wkr_exec(ctx, src, lnki_tkn, gplx.xowa.bldrs.cmds.files.Xob_lnki_src_tid.Tid_gallery);
|
||||
lnki_tkn.W_(-1).H_(-1); // NOTE: reset lnki back to defaults, else itm will show as large missing caption
|
||||
}
|
||||
|
||||
@@ -63,11 +63,11 @@ public class Gallery_xnde implements Xox_xnde, Mwh_atr_itm_owner {
|
||||
Xox_xnde_.Xatr__set(wiki, this, Gallery_xnde_atrs.Key_hash, src, xnde);
|
||||
xtn_mgr = (Gallery_xtn_mgr)wiki.Xtn_mgr().Get_or_fail(Gallery_xtn_mgr.XTN_KEY);
|
||||
Init_atrs(wiki);
|
||||
gallery_mgr.Get_modules(ctx.Cur_page());
|
||||
gallery_mgr.Get_modules(ctx.Page());
|
||||
Gallery_itm_parser parser = xtn_mgr.Parser();
|
||||
if (parser.Parse_in_progress()) parser = new Gallery_itm_parser().Init_by_wiki(wiki); // handle nested galleries; EX: <gallery><ref><gallery>; PAGE:es.w:Arquitectura_medieval DATE:2015-07-10
|
||||
parser.Parse_all(itms, gallery_mgr, this, src, xnde.Tag_open_end(), xnde.Tag_close_bgn());
|
||||
boolean log_wkr_enabled = Log_wkr != Xop_log_basic_wkr.Null; if (log_wkr_enabled) Log_wkr.Log_end_xnde(ctx.Cur_page(), Xop_log_basic_wkr.Tid_gallery, src, xnde);
|
||||
boolean log_wkr_enabled = Log_wkr != Xop_log_basic_wkr.Null; if (log_wkr_enabled) Log_wkr.Log_end_xnde(ctx.Page(), Xop_log_basic_wkr.Tid_gallery, src, xnde);
|
||||
ctx.Para().Process_block__xnde(xnde.Tag(), Xop_xnde_tag.Block_end); // cancel pre for <gallery>; DATE:2014-03-11
|
||||
} catch (Exception exc) {
|
||||
wiki.Appe().Usr_dlg().Warn_many("", "", "failed to write gallery; src=~{0} err=~{1}", String_.new_u8(src, xnde.Src_bgn(), xnde.Src_end()), Err_.Message_gplx_full(exc));
|
||||
@@ -77,9 +77,9 @@ public class Gallery_xnde implements Xox_xnde, Mwh_atr_itm_owner {
|
||||
Xowe_wiki wiki = ctx.Wiki();
|
||||
try {
|
||||
if (html_wtr_v1)
|
||||
xtn_mgr.Html_wtr().Write_html(bfr, app, wiki, ctx, html_wtr, hctx, ctx.Cur_page(), this, src);
|
||||
xtn_mgr.Html_wtr().Write_html(bfr, app, wiki, ctx, html_wtr, hctx, ctx.Page(), this, src);
|
||||
else {
|
||||
gallery_mgr.Write_html(bfr, wiki, ctx.Cur_page(), ctx, hctx, src, this);
|
||||
gallery_mgr.Write_html(bfr, wiki, ctx.Page(), ctx, hctx, src, this);
|
||||
}
|
||||
} catch (Exception exc) {
|
||||
wiki.Appe().Usr_dlg().Warn_many("", "", "failed to write gallery; src=~{0} err=~{1}", String_.new_u8(src, xnde.Src_bgn(), xnde.Src_end()), Err_.Message_gplx_full(exc));
|
||||
|
||||
Reference in New Issue
Block a user