diff --git a/400_xowa/src/gplx/xowa/apps/metas/Xoa_meta_mgr.java b/400_xowa/src/gplx/xowa/apps/metas/Xoa_meta_mgr.java index aad9425e7..7eca53491 100644 --- a/400_xowa/src/gplx/xowa/apps/metas/Xoa_meta_mgr.java +++ b/400_xowa/src/gplx/xowa/apps/metas/Xoa_meta_mgr.java @@ -19,8 +19,8 @@ package gplx.xowa.apps.metas; import gplx.*; import gplx.xowa.*; import gplx.xow import gplx.xowa.wikis.nss.*; import gplx.xowa.bldrs.wms.sites.*; public class Xoa_meta_mgr { - private final Xoa_app app; - private final Hash_adp_bry ns__hash = Hash_adp_bry.cs(); + private final Xoa_app app; + private final Hash_adp_bry ns__hash = Hash_adp_bry.cs(); private Site_core_db core_db; public Xoa_meta_mgr(Xoa_app app) { this.app = app; @@ -32,6 +32,7 @@ public class Xoa_meta_mgr { Core_db__assert(); rv = core_db.Load_namespace(wiki_domain); Ns__add(wiki_domain, rv); + rv.Init(); // must init to fill Ords } return rv; } diff --git a/400_xowa/src/gplx/xowa/wikis/Xoae_wiki_mgr.java b/400_xowa/src/gplx/xowa/wikis/Xoae_wiki_mgr.java index 82930d52e..4c763ac25 100644 --- a/400_xowa/src/gplx/xowa/wikis/Xoae_wiki_mgr.java +++ b/400_xowa/src/gplx/xowa/wikis/Xoae_wiki_mgr.java @@ -66,7 +66,10 @@ public class Xoae_wiki_mgr implements Xoa_wiki_mgr, Gfo_invk { return rv; } public Xow_wiki Make(byte[] domain_bry, Io_url wiki_root_dir) { + // init domain Xow_domain_itm domain_itm = Xow_domain_itm_.parse(domain_bry); + + // get lang from domain; if not wmf, default to en byte[] lang_key = domain_itm.Lang_actl_key(); if (lang_key == Xol_lang_stub_.Key__unknown) lang_key = Xol_lang_itm_.Key_en; // unknown langs default to english; note that this makes nonwmf english by default Xol_lang_itm lang = app.Lang_mgr().Get_by_or_new(lang_key); @@ -74,7 +77,11 @@ public class Xoae_wiki_mgr implements Xoa_wiki_mgr, Gfo_invk { lang = new Xol_lang_itm(app.Lang_mgr(), Xol_lang_itm_.Key_en).Kwd_mgr__strx_(true); // create a new english lang, but enable strx functions; DATE:2015-08-23 Xol_lang_itm_.Lang_init(lang); } - Xow_ns_mgr ns_mgr = Xow_ns_mgr_.default_(lang.Case_mgr()); //app.Dbmeta_mgr().Ns__get_or_load(key); + + // load ns from site_meta + Xow_ns_mgr ns_mgr = app.Dbmeta_mgr().Ns__get_or_load(domain_bry); + if (ns_mgr.Ids_len() == 0) ns_mgr = Xow_ns_mgr_.default_(lang.Case_mgr()); // non-wmf wikis will use default ns_mgr + return new Xowe_wiki(app, lang, ns_mgr, domain_itm, wiki_root_dir); } public Xow_wiki Import_by_url(Io_url url) {return Xoa_wiki_mgr_.Import_by_url(app, this, url);}