mirror of
https://github.com/gnosygnu/xowa.git
synced 2024-10-27 20:34:16 +00:00
Embeddable: Fix default ns_mgr being used for wikis
This commit is contained in:
parent
99c968e1e2
commit
6867cc23b4
@ -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.wikis.nss.*;
|
||||||
import gplx.xowa.bldrs.wms.sites.*;
|
import gplx.xowa.bldrs.wms.sites.*;
|
||||||
public class Xoa_meta_mgr {
|
public class Xoa_meta_mgr {
|
||||||
private final Xoa_app app;
|
private final Xoa_app app;
|
||||||
private final Hash_adp_bry ns__hash = Hash_adp_bry.cs();
|
private final Hash_adp_bry ns__hash = Hash_adp_bry.cs();
|
||||||
private Site_core_db core_db;
|
private Site_core_db core_db;
|
||||||
public Xoa_meta_mgr(Xoa_app app) {
|
public Xoa_meta_mgr(Xoa_app app) {
|
||||||
this.app = app;
|
this.app = app;
|
||||||
@ -32,6 +32,7 @@ public class Xoa_meta_mgr {
|
|||||||
Core_db__assert();
|
Core_db__assert();
|
||||||
rv = core_db.Load_namespace(wiki_domain);
|
rv = core_db.Load_namespace(wiki_domain);
|
||||||
Ns__add(wiki_domain, rv);
|
Ns__add(wiki_domain, rv);
|
||||||
|
rv.Init(); // must init to fill Ords
|
||||||
}
|
}
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,10 @@ public class Xoae_wiki_mgr implements Xoa_wiki_mgr, Gfo_invk {
|
|||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
public Xow_wiki Make(byte[] domain_bry, Io_url wiki_root_dir) {
|
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);
|
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();
|
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
|
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);
|
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
|
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);
|
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);
|
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);}
|
public Xow_wiki Import_by_url(Io_url url) {return Xoa_wiki_mgr_.Import_by_url(app, this, url);}
|
||||||
|
Loading…
Reference in New Issue
Block a user