1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00

v2.10.3.1

This commit is contained in:
gnosygnu
2015-10-18 22:17:57 -04:00
parent 8e18af05b6
commit 4f43f51b18
1935 changed files with 12500 additions and 12889 deletions

View File

@@ -48,7 +48,7 @@ public class Xoc_layout_mgr implements GfoInvkAble {
}
}
class Enm_mgr {
private Ordered_hash str_hash = Ordered_hash_.new_(); private Hash_adp val_hash = Hash_adp_.new_();
private Ordered_hash str_hash = Ordered_hash_.New(); private Hash_adp val_hash = Hash_adp_.new_();
private Int_obj_ref tmp_val_ref = Int_obj_ref.zero_();
public Enm_mgr Add(byte val, String str) {
Int_obj_ref val_ref = Int_obj_ref.new_(val);

View File

@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users; import gplx.*; import gplx.xowa.*;
import gplx.xowa.apps.gfss.*; import gplx.xowa.wikis.*;
import gplx.xowa.apps.gfs.*; import gplx.xowa.wikis.*;
public class Xou_fsys_mgr implements GfoInvkAble {
private Io_url app_root_dir; private Io_url wiki_root_dir; private Io_url cur_root;
public Xou_fsys_mgr(Xoae_app app, Xoue_user usr, Io_url user_dir) {

View File

@@ -19,7 +19,7 @@ package gplx.xowa.users; import gplx.*; import gplx.xowa.*;
public class Xou_log_mgr implements GfoInvkAble {
public boolean Log_redlinks() {return log_redlinks;} private boolean log_redlinks;
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
if (ctx.Match(k, Invk_log_redlinks)) return Yn.Xto_str(log_redlinks);
if (ctx.Match(k, Invk_log_redlinks)) return Yn.To_str(log_redlinks);
else if (ctx.Match(k, Invk_log_redlinks_)) log_redlinks = m.ReadYn("v");
return this;
}

View File

@@ -21,7 +21,7 @@ public class Xou_security_mgr implements GfoInvkAble {
public boolean Web_access_enabled() {return app.Api_root().Net().Enabled();}
public void Web_access_enabled_(boolean v) {app.Api_root().Net().Enabled_(v);}
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
if (ctx.Match(k, Invk_web_access_enabled)) return Yn.Xto_str(this.Web_access_enabled());
if (ctx.Match(k, Invk_web_access_enabled)) return Yn.To_str(this.Web_access_enabled());
else if (ctx.Match(k, Invk_web_access_enabled_)) Web_access_enabled_(m.ReadYn("v"));
return this;
}

View File

@@ -17,12 +17,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users; import gplx.*; import gplx.xowa.*;
import gplx.xowa.langs.*; import gplx.xowa.langs.cases.*; import gplx.xowa.wikis.*; import gplx.xowa.xtns.scribunto.*;
import gplx.xowa.nss.*;
import gplx.xowa.wikis.nss.*;
import gplx.xowa.wikis.domains.*;
class Xou_user_ {
public static Xowe_wiki new_or_create_(Xoue_user user, Xoae_app app) {
Io_url wiki_dir = app.Fsys_mgr().Home_wiki_dir();
Xol_lang lang = app.Lang_mgr().Get_by_key_or_new(app.Lang_mgr().Default_lang());
Xol_lang_itm lang = app.Lang_mgr().Get_by_or_new(Xol_lang_itm_.Key_en);
lang.Init_by_load(); // NOTE: lang.Load() must occur before Xowe_wiki.new() b/c wiki will create parsers based on lang
Xowe_wiki rv = new Xowe_wiki(app, lang, ns_home_(lang.Case_mgr()), Xow_domain_uid_.To_domain(Xow_domain_uid_.Tid_xowa), wiki_dir);
app.Wiki_mgr().Add(rv);
@@ -32,7 +32,7 @@ class Xou_user_ {
}
public static void User_system_cfg_make(Gfo_usr_dlg usr_dlg, Io_url cfg_fil) {
usr_dlg.Log_many(GRP_KEY, "user_system_cfg.create", "creating user_system_cfg.gfs: ~{0}", cfg_fil.Raw());
Io_mgr.I.SaveFilStr(cfg_fil, User_system_cfg_text);
Io_mgr.Instance.SaveFilStr(cfg_fil, User_system_cfg_text);
}
public static void Bookmarks_make(Xoae_app app, Xowe_wiki home_wiki) {
app.Usr_dlg().Log_many(GRP_KEY, "bookmarks.create", "creating bookmarks page");

View File

@@ -20,7 +20,7 @@ public class Xou_user_mgr implements GfoInvkAble {
public Xou_user_mgr(Xoae_app app, Xoue_user user) {this.app = app; this.Add(user);} private Xoae_app app;
public void Add(Xoue_user itm) {regy.Add(itm.Key(), itm);}
Xoue_user GetByKey(String key) {return (Xoue_user)regy.Get_by(key);}
Ordered_hash regy = Ordered_hash_.new_();
Ordered_hash regy = Ordered_hash_.New();
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
if (ctx.Match(k, Invk_get)) {

View File

@@ -24,12 +24,12 @@ public class Xou_user_tst {
fxt.Test_fil(user_system_cfg_url, ""); // check that it is blank
fxt.App().Init_by_app(); // run Init_by_app
fxt.Test_fil(user_system_cfg_url, Xou_user_.User_system_cfg_text); // check that it is created
Io_mgr.I.SaveFilStr(user_system_cfg_url, ""); // simulate edit by blanking out file
Io_mgr.Instance.SaveFilStr(user_system_cfg_url, ""); // simulate edit by blanking out file
fxt.App().Init_by_app(); // run Init_by_app again
fxt.Test_fil(user_system_cfg_url, ""); // check that it is still blank
}
@Test public void Available_from_fsys() {
Io_mgr.I.CreateDir(fxt.App().Fsys_mgr().Wiki_dir().GenSubDir("en.wikipedia.org"));
Io_mgr.Instance.CreateDir(fxt.App().Fsys_mgr().Wiki_dir().GenSubDir("en.wikipedia.org"));
fxt.App().Usere().Available_from_fsys();
fxt.Test_xwikis
( fxt.Make_xwiki(Bool_.N, "home")
@@ -39,9 +39,9 @@ public class Xou_user_tst {
}
class Xou_user_fxt {
public Xoae_app App() {return app;} private Xoae_app app = Xoa_app_fxt.app_();
public String Make_xwiki(boolean offline, String name) {return String_.Concat_with_str("|", Yn.Xto_str(offline), name);}
public String Make_xwiki(boolean offline, String name) {return String_.Concat_with_str("|", Yn.To_str(offline), name);}
public void Test_fil(Io_url url, String expd) {
Tfds.Eq_str_lines(expd, Io_mgr.I.LoadFilStr(url));
Tfds.Eq_str_lines(expd, Io_mgr.Instance.LoadFilStr(url));
}
public void Test_xwikis(String... expd) {
Xow_xwiki_mgr xwiki_mgr = app.Usere().Wiki().Xwiki_mgr();

View File

@@ -47,7 +47,7 @@ public class Xouc_startup_mgr implements GfoInvkAble {
private String Custom_config() {
if (custom_config == null) { // NOTE: LoadFilStr never returns null, so this will only execute once
Io_url custom_config_url = config.User().Fsys_mgr().App_data_cfg_custom_fil();
custom_config = Io_mgr.I.LoadFilStr_args(custom_config_url).MissingIgnored_().Exec();
custom_config = Io_mgr.Instance.LoadFilStr_args(custom_config_url).MissingIgnored_().Exec();
}
return custom_config;
} private String custom_config;
@@ -60,7 +60,7 @@ public class Xouc_startup_mgr implements GfoInvkAble {
}
custom_config = v;
// Io_url custom_config_url = config.User().Fsys_mgr().App_data_cfg_custom_fil(); // DELETE: no longer sync user_cfg to custom.gfs; already saved in user.gfs; DATE:2014-05-30
// Io_mgr.I.SaveFilStr(custom_config_url, v);
// Io_mgr.Instance.SaveFilStr(custom_config_url, v);
}
public static final byte Page_home = 0, Page_last = 1, Page_xowa = 2;
}

View File

@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users; import gplx.*; import gplx.xowa.*;
import gplx.gfui.*; import gplx.xowa.gui.views.*;
import gplx.gfui.*; import gplx.xowa.guis.views.*;
public class Xouc_window_mgr implements GfoInvkAble {
public Xouc_window_mgr(Xoue_user user) {this.user = user;} private Xoue_user user;
public byte Mode_tid() {return mode_tid;} private byte mode_tid = Mode_tid_previous;
@@ -30,7 +30,7 @@ public class Xouc_window_mgr implements GfoInvkAble {
else if (ctx.Match(k, Invk_mode_list)) return Options_mode_list;
else if (ctx.Match(k, Invk_rect)) return rect;
else if (ctx.Match(k, Invk_rect_)) rect = Rect_ref.parse(m.ReadStr("v"));
else if (ctx.Match(k, Invk_safe_mode)) return Yn.Xto_str(safe_mode);
else if (ctx.Match(k, Invk_safe_mode)) return Yn.To_str(safe_mode);
else if (ctx.Match(k, Invk_safe_mode_)) safe_mode = m.ReadYn("v");
else if (ctx.Match(k, Invk_previous_adj)) return previous_adj;
else if (ctx.Match(k, Invk_previous_adj_)) previous_adj = Rect_ref.parse(m.ReadStr("v"));

View File

@@ -38,8 +38,8 @@ public class Xoue_user implements Xou_user, GfoEvMgrOwner, GfoInvkAble {
public Xow_wiki Wikii() {return this.Wiki();}
public int Gender() {return Xol_gender_.Tid_unknown;}
public Xoae_app Appe() {return app;} private final Xoae_app app;
public Xol_lang Lang() {if (lang == null) {lang = app.Lang_mgr().Get_by_key_or_new(app.Sys_cfg().Lang()); lang.Init_by_load();} return lang;} private Xol_lang lang;
public void Lang_(Xol_lang v) {
public Xol_lang_itm Lang() {if (lang == null) {lang = app.Lang_mgr().Get_by_or_new(app.Sys_cfg().Lang()); lang.Init_by_load();} return lang;} private Xol_lang_itm lang;
public void Lang_(Xol_lang_itm v) {
lang = v;
this.Msg_mgr().Lang_(v);
wiki.Msg_mgr().Clear(); // clear home wiki msgs whenever lang changes; else messages cached from old lang will not be replaced; EX:Read/Edit; DATE:2014-05-26
@@ -58,7 +58,7 @@ public class Xoue_user implements Xou_user, GfoEvMgrOwner, GfoInvkAble {
} private Xow_msg_mgr msg_mgr;
public void Init_by_app(Xoae_app app) {
Io_url user_system_cfg = fsys_mgr.App_data_cfg_dir().GenSubFil(Xou_fsys_mgr.Name_user_system_cfg);
if (!Io_mgr.I.ExistsFil(user_system_cfg)) Xou_user_.User_system_cfg_make(app.Usr_dlg(), user_system_cfg);
if (!Io_mgr.Instance.ExistsFil(user_system_cfg)) Xou_user_.User_system_cfg_make(app.Usr_dlg(), user_system_cfg);
user_db_mgr.Init_by_app(Bool_.N, fsys_mgr.Root_dir().OwnerDir().GenSubFil("xowa.user." + key + ".sqlite3")); // EX: /xowa/user/xowa.user.anonymous.sqlite3
if (!Env_.Mode_testing()) {
this.Available_from_fsys();
@@ -69,7 +69,7 @@ public class Xoue_user implements Xou_user, GfoEvMgrOwner, GfoInvkAble {
session_mgr.Window_mgr().Save_window(app.Gui_mgr().Browser_win().Win_box());
history_mgr.Save(app);
if (app.Gui_mgr().Browser_win().Tab_mgr().Html_load_tid__url())
Io_mgr.I.DeleteDirDeep(fsys_mgr.App_temp_html_dir());
Io_mgr.Instance.DeleteDirDeep(fsys_mgr.App_temp_html_dir());
app.File_mgr().Cache_mgr().Db_term();
}
public void Bookmarks_add(byte[] wiki_domain, byte[] ttl_full_txt) {
@@ -102,14 +102,14 @@ public class Xoue_user implements Xou_user, GfoEvMgrOwner, GfoInvkAble {
public static final String Key_xowa_user = "anonymous";
public static final String Evt_lang_changed = "lang_changed";
public void Available_from_fsys() {
Io_url[] dirs = Io_mgr.I.QueryDir_args(app.Fsys_mgr().Wiki_dir()).Recur_(false).DirOnly_().ExecAsUrlAry();
Io_url[] dirs = Io_mgr.Instance.QueryDir_args(app.Fsys_mgr().Wiki_dir()).Recur_(false).DirOnly_().ExecAsUrlAry();
Xowe_wiki usr_wiki = Wiki();
int dirs_len = dirs.length;
for (int i = 0; i < dirs_len; i++) {
Io_url dir = dirs[i];
String name = dir.NameOnly();
if (String_.Eq(name, gplx.xowa.bldrs.cmds.utils.Xob_core_batch_utl.Dir_dump)
// || !Io_mgr.I.ExistsDir(dir.GenSubFil_nest("ns"))
// || !Io_mgr.Instance.ExistsDir(dir.GenSubFil_nest("ns"))
) continue;
byte[] dir_name_as_bry = Bry_.new_u8(name);
Xow_xwiki_itm xwiki = Available_add(usr_wiki, dir_name_as_bry);
@@ -126,6 +126,6 @@ public class Xoue_user implements Xou_user, GfoEvMgrOwner, GfoInvkAble {
Available_add(usr_wiki, wikis[i]);
}
private Xow_xwiki_itm Available_add(Xowe_wiki usr_wiki, byte[] wiki_name) {
return usr_wiki.Xwiki_mgr().Add_full(wiki_name, wiki_name);
return usr_wiki.Xwiki_mgr().Add_by_atrs(wiki_name, wiki_name);
}
}

View File

@@ -16,8 +16,8 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users; import gplx.*; import gplx.xowa.*;
import gplx.xowa.gui.views.*;
import gplx.xowa.apis.xowa.startups.tabs.*;
import gplx.xowa.guis.views.*;
import gplx.xowa.apps.apis.xowa.startups.tabs.*;
public class Xous_window_mgr implements GfoInvkAble {
public Xous_window_mgr(Xoue_user user) {
this.user = user;
@@ -27,9 +27,9 @@ public class Xous_window_mgr implements GfoInvkAble {
public boolean Maximized() {return maximized;} private boolean maximized = false;
public void Save_window(gplx.gfui.GfuiWin win) {
Xoae_app app = user.Appe();
gplx.xowa.cfgs.Xoa_cfg_mgr cfg_mgr = app.Cfg_mgr();
gplx.xowa.apps.cfgs.Xoa_cfg_mgr cfg_mgr = app.Cfg_mgr();
if (user.Cfg_mgr().Startup_mgr().Window_mgr().Mode_tid() == Xouc_window_mgr.Mode_tid_previous) {
cfg_mgr.Set_by_app("app.user.session.window.maximized" , Yn.Xto_str(win.Maximized()));
cfg_mgr.Set_by_app("app.user.session.window.maximized" , Yn.To_str(win.Maximized()));
cfg_mgr.Set_by_app("app.user.session.window.rect" , win.Rect().Xto_str());
}
Xoapi_startup_tabs startup_tabs = app.Api_root().App().Startup().Tabs();
@@ -48,12 +48,12 @@ public class Xous_window_mgr implements GfoInvkAble {
Xog_tab_itm tab = tab_mgr.Tabs_get_at(i);
bfr.Add_str(tab.Page().Url().To_str());
}
return bfr.Xto_str_and_clear();
return bfr.To_str_and_clear();
}
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
if (ctx.Match(k, Invk_rect)) return rect;
else if (ctx.Match(k, Invk_rect_)) rect = Rect_ref.parse(m.ReadStr("v"));
else if (ctx.Match(k, Invk_maximized)) return Yn.Xto_str(maximized);
else if (ctx.Match(k, Invk_maximized)) return Yn.To_str(maximized);
else if (ctx.Match(k, Invk_maximized_)) maximized = m.ReadYn("v");
return this;
} public static final String Invk_rect = "rect", Invk_rect_ = "rect_", Invk_maximized = "maximized", Invk_maximized_ = "maximized_";

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.users.bmks; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import gplx.langs.jsons.*; import gplx.langs.htmls.*;
import gplx.xowa.users.data.*; import gplx.xowa.users.bmks.*;
import gplx.xowa.html.bridges.*; import gplx.xowa.html.bridges.dbuis.*; import gplx.xowa.html.bridges.dbuis.tbls.*; import gplx.xowa.html.bridges.dbuis.fmtrs.*;
import gplx.xowa.htmls.bridges.*; import gplx.xowa.htmls.bridges.dbuis.*; import gplx.xowa.htmls.bridges.dbuis.tbls.*; import gplx.xowa.htmls.bridges.dbuis.fmtrs.*;
public class Dbui_tbl_itm__bmk implements Dbui_tbl_itm {
private final Xoa_app app; private final Xoud_bmk_itm_tbl tbl;
private final Dbui_tbl_fmtr tbl_fmtr = new Dbui_tbl_fmtr();
@@ -31,13 +31,13 @@ public class Dbui_tbl_itm__bmk implements Dbui_tbl_itm {
public Dbui_btn_itm[] Edit_btns() {return edit_btns;}
public Dbui_col_itm[] Cols() {return cols;}
public void Reg(Bridge_cmd_mgr bridge_mgr) {
Dbui_cmd_mgr dbui_mgr = Dbui_cmd_mgr.I;
Dbui_cmd_mgr dbui_mgr = Dbui_cmd_mgr.Instance;
dbui_mgr.Init_by_bridge(bridge_mgr);
dbui_mgr.Add(this);
}
public void Select(Bry_bfr bfr, int owner) {
Xoud_bmk_itm_row[] db_rows = tbl.Select_grp(owner);
byte[] option_link = app.Html__lnki_bldr().Href_(Bry_.new_a7("home"), app.User().Wikii().Ttl_parse(Bry_.new_a7("Help:Options/Bookmarks"))).Img_16x16(gplx.xowa.html.wtrs.Xoh_img_path.Img_option).Bld_to_bry();
byte[] option_link = app.Html__lnki_bldr().Href_(Bry_.new_a7("home"), app.User().Wikii().Ttl_parse(Bry_.new_a7("Help:Options/Bookmarks"))).Img_16x16(gplx.xowa.htmls.wtrs.Xoh_img_path.Img_option).Bld_to_bry();
byte[] delete_confirm_msg = app.Api_root().Usr().Bookmarks().Delete_confirm() ? Msg__delete_confirm : Bry_.Empty;
tbl_fmtr.Write(bfr, this, option_link, delete_confirm_msg, To_ui_rows(db_rows));
} private static final byte[] Msg__delete_confirm = Bry_.new_a7(" data-dbui-delete_confirm_msg='Are you sure you want to delete this bookmark?'");
@@ -83,14 +83,14 @@ public class Dbui_tbl_itm__bmk implements Dbui_tbl_itm {
private String Write_cells(Dbui_val_fmtr val_fmtr, Dbui_btn_itm[] btns, byte[] row_id, Dbui_row_itm row) {
cells_fmtr.Ctor(val_fmtr, btns);
cells_fmtr.Init(row_id, row);
cells_fmtr.XferAry(tmp_bfr, 0);
return app.Html__bridge_mgr().Msg_bldr().Clear().Data("html", tmp_bfr.Xto_bry_and_clear()).To_json_str();
cells_fmtr.Fmt__do(tmp_bfr);
return app.Html__bridge_mgr().Msg_bldr().Clear().Data("html", tmp_bfr.To_bry_and_clear()).To_json_str();
}
private Xoud_bmk_itm_row Get_db_row(byte[] pkey) {
int bmk_id = Bry_.To_int(pkey);
return tbl.Select_or_null(bmk_id);
}
private Dbui_row_itm Get_ui_row(Xoud_bmk_itm_row row) {return Get_ui_row(Int_.Xto_bry(row.Id()), row.Name(), row.Url(), row.Comment());}
private Dbui_row_itm Get_ui_row(Xoud_bmk_itm_row row) {return Get_ui_row(Int_.To_bry(row.Id()), row.Name(), row.Url(), row.Comment());}
private Dbui_row_itm Get_ui_row(byte[] pkey, byte[] name, byte[] url, byte[] comment) {
Dbui_val_itm[] vals = new Dbui_val_itm[3];
vals[0] = new Dbui_val_itm(name, Html_utl.Escape_html_as_bry(tmp_bfr, name));

View File

@@ -17,7 +17,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users.bmks; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import gplx.core.primitives.*;
import gplx.xowa.html.bridges.dbuis.tbls.*;
import gplx.xowa.htmls.bridges.dbuis.tbls.*;
import gplx.xowa.users.data.*; import gplx.xowa.specials.*;
public class Xows_bmk_page implements Xows_page {
public Xows_special_meta Special_meta() {return Xows_special_meta_.Itm__bookmarks;}

View File

@@ -35,7 +35,7 @@ public class Xou_db_mgr {
public Xou_cache_mgr Cache_mgr() {return cache_mgr;} private Xou_cache_mgr cache_mgr;
public Xou_file_itm_finder File__xfer_itm_finder() {return xfer_itm_finder;} private Xou_file_itm_finder xfer_itm_finder;
public void Init_by_app(boolean drd, Io_url db_url) {
Db_conn_bldr_data db_conn_bldr = Db_conn_bldr.I.Get_or_new(db_url);
Db_conn_bldr_data db_conn_bldr = Db_conn_bldr.Instance.Get_or_new(db_url);
Db_conn conn = db_conn_bldr.Conn(); boolean created = db_conn_bldr.Created();
this.db_file = new Xou_db_file(conn); db_file.Init_assert();
this.cache_mgr = new Xou_cache_mgr(app.Wiki_mgri(), app.Fsys_mgr().File_dir(), db_file);

View File

@@ -24,8 +24,8 @@ class Xoud_opt_scope {
public int Lang_id() {return lang_id;} private final int lang_id;
public int Type_id() {return type_id;} private final int type_id;
public String To_str() {
String lang_str = lang_id == Lang_id_wildcard ? "*" : String_.new_u8(Xol_lang_itm_.Get_by_id(lang_id).Key());
String type_str = type_id == Lang_id_wildcard ? "*" : String_.new_u8(Xow_domain_type_.Get_type_as_bry(type_id));
String lang_str = lang_id == Lang_id_wildcard ? "*" : String_.new_u8(Xol_lang_stub_.Get_by_id(lang_id).Key());
String type_str = type_id == Lang_id_wildcard ? "*" : String_.new_u8(Xow_domain_tid_.Get_type_as_bry(type_id));
return lang_str + "." + type_str;
}
public static final int Lang_id_wildcard = -1, Type_id_wildcard = -1;
@@ -34,7 +34,7 @@ class Xoud_opt_scope {
class Xoud_opt_scope_parser {
private Gfo_usr_dlg usr_dlg; private final List_adp list = List_adp_.new_();
public Xoud_opt_scope[] Parse(byte[] src) {
usr_dlg = Gfo_usr_dlg_.I;
usr_dlg = Gfo_usr_dlg_.Instance;
list.Clear();
int pos = 0; int src_len = src.length;
while (pos < src_len) {
@@ -52,7 +52,7 @@ class Xoud_opt_scope_parser {
if (lang_dot == 1 && src[bgn] == Byte_ascii.Star)
lang_id = Xoud_opt_scope.Lang_id_wildcard;
else {
Xol_lang_itm lang_itm = Xol_lang_itm_.Get_by_key_or_null(src, bgn, lang_dot); if (lang_itm == null) return Warn("scope.parse.invalid_lang: src=~{0}", src, bgn, end);
Xol_lang_stub lang_itm = Xol_lang_stub_.Get_by_key_or_null(src, bgn, lang_dot); if (lang_itm == null) return Warn("scope.parse.invalid_lang: src=~{0}", src, bgn, end);
lang_id = lang_itm.Id();
}
Object type_tid_obj = btrie_by_type.Match_bgn(src, lang_dot + 1, end); if (type_tid_obj == null) return Warn("scope.parse.invalid_type: src=~{0}", src, bgn, end);
@@ -64,22 +64,22 @@ class Xoud_opt_scope_parser {
return Xoud_opt_scope.App;
}
private static final Btrie_slim_mgr btrie_by_type = Btrie_slim_mgr.cs()
.Add_str_int("w" , Xow_domain_type_.Int__wikipedia)
.Add_str_int("d" , Xow_domain_type_.Int__wiktionary)
.Add_str_int("s" , Xow_domain_type_.Int__wikisource)
.Add_str_int("v" , Xow_domain_type_.Int__wikivoyage)
.Add_str_int("q" , Xow_domain_type_.Int__wikiquote)
.Add_str_int("b" , Xow_domain_type_.Int__wikibooks)
.Add_str_int("u" , Xow_domain_type_.Int__wikiversity)
.Add_str_int("n" , Xow_domain_type_.Int__wikinews)
.Add_str_int("w" , Xow_domain_tid_.Int__wikipedia)
.Add_str_int("d" , Xow_domain_tid_.Int__wiktionary)
.Add_str_int("s" , Xow_domain_tid_.Int__wikisource)
.Add_str_int("v" , Xow_domain_tid_.Int__wikivoyage)
.Add_str_int("q" , Xow_domain_tid_.Int__wikiquote)
.Add_str_int("b" , Xow_domain_tid_.Int__wikibooks)
.Add_str_int("u" , Xow_domain_tid_.Int__wikiversity)
.Add_str_int("n" , Xow_domain_tid_.Int__wikinews)
.Add_str_int("*" , Xoud_opt_scope.Type_id_wildcard)
.Add_str_int("xowa" , Xow_domain_type_.Int__home)
.Add_str_int("wd" , Xow_domain_type_.Int__wikidata)
.Add_str_int("c" , Xow_domain_type_.Int__commons)
.Add_str_int("species" , Xow_domain_type_.Int__species)
.Add_str_int("meta" , Xow_domain_type_.Int__meta)
.Add_str_int("mw" , Xow_domain_type_.Int__mediawiki)
.Add_str_int("wmf" , Xow_domain_type_.Int__wmfblog)
.Add_str_int("xowa" , Xow_domain_tid_.Int__home)
.Add_str_int("wd" , Xow_domain_tid_.Int__wikidata)
.Add_str_int("c" , Xow_domain_tid_.Int__commons)
.Add_str_int("species" , Xow_domain_tid_.Int__species)
.Add_str_int("meta" , Xow_domain_tid_.Int__meta)
.Add_str_int("mw" , Xow_domain_tid_.Int__mediawiki)
.Add_str_int("wmf" , Xow_domain_tid_.Int__wmfblog)
;
private static final Xoud_opt_scope[] Ary_app = new Xoud_opt_scope[] {Xoud_opt_scope.App};
}

View File

@@ -22,11 +22,11 @@ public class Xoud_opt_scope_tst {
private Xoud_opt_scope_fxt fxt = new Xoud_opt_scope_fxt();
@Before public void init() {fxt.Clear();}
@Test public void Basic() {
fxt.Test_parse("en.w" , fxt.Make(Xol_lang_itm_.Id_en, Xow_domain_type_.Int__wikipedia));
fxt.Test_parse("en.*" , fxt.Make(Xol_lang_itm_.Id_en, Xoud_opt_scope.Type_id_wildcard));
fxt.Test_parse("*.w" , fxt.Make(Xoud_opt_scope.Lang_id_wildcard, Xow_domain_type_.Int__wikipedia));
fxt.Test_parse("en.w" , fxt.Make(Xol_lang_stub_.Id_en, Xow_domain_tid_.Int__wikipedia));
fxt.Test_parse("en.*" , fxt.Make(Xol_lang_stub_.Id_en, Xoud_opt_scope.Type_id_wildcard));
fxt.Test_parse("*.w" , fxt.Make(Xoud_opt_scope.Lang_id_wildcard, Xow_domain_tid_.Int__wikipedia));
fxt.Test_parse("<any>" , Xoud_opt_scope.App);
fxt.Test_parse("en.w,fr.d" , fxt.Make(Xol_lang_itm_.Id_en, Xow_domain_type_.Int__wikipedia), fxt.Make(Xol_lang_itm_.Id_fr, Xow_domain_type_.Int__wiktionary));
fxt.Test_parse("en.w,fr.d" , fxt.Make(Xol_lang_stub_.Id_en, Xow_domain_tid_.Int__wikipedia), fxt.Make(Xol_lang_stub_.Id_fr, Xow_domain_tid_.Int__wiktionary));
}
}
class Xoud_opt_scope_fxt {
@@ -47,6 +47,6 @@ class Xoud_opt_scope_fxt {
if (i != 0) bfr.Add_str_a7(",");
bfr.Add_str_a7(itm.To_str());
}
return bfr.Xto_str_and_clear();
return bfr.To_str_and_clear();
}
}

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.users.history; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import gplx.langs.jsons.*; import gplx.langs.htmls.*;
import gplx.xowa.users.data.*; import gplx.xowa.users.bmks.*;
import gplx.xowa.html.bridges.*; import gplx.xowa.html.bridges.dbuis.*; import gplx.xowa.html.bridges.dbuis.tbls.*; import gplx.xowa.html.bridges.dbuis.fmtrs.*;
import gplx.xowa.htmls.bridges.*; import gplx.xowa.htmls.bridges.dbuis.*; import gplx.xowa.htmls.bridges.dbuis.tbls.*; import gplx.xowa.htmls.bridges.dbuis.fmtrs.*;
public class Dbui_tbl_itm__history implements Dbui_tbl_itm {
private final Xoa_app app; private final Xoud_history_tbl tbl;
private final Dbui_tbl_fmtr tbl_fmtr = new Dbui_tbl_fmtr();
@@ -30,7 +30,7 @@ public class Dbui_tbl_itm__history implements Dbui_tbl_itm {
public Dbui_btn_itm[] Edit_btns() {return Dbui_btn_itm.Ary_empty;}
public Dbui_col_itm[] Cols() {return cols;}
public void Reg(Bridge_cmd_mgr bridge_mgr) {
Dbui_cmd_mgr dbui_mgr = Dbui_cmd_mgr.I;
Dbui_cmd_mgr dbui_mgr = Dbui_cmd_mgr.Instance;
dbui_mgr.Init_by_bridge(bridge_mgr);
dbui_mgr.Add(this);
}
@@ -38,7 +38,7 @@ public class Dbui_tbl_itm__history implements Dbui_tbl_itm {
public void Select(Bry_bfr bfr, int top) {
tbl.Select_by_top(select_list, 100);
Xoud_history_row[] db_rows = (Xoud_history_row[])select_list.To_ary_and_clear(Xoud_history_row.class);
byte[] option_link = app.Html__lnki_bldr().Href_(Bry_.new_a7("home"), app.User().Wikii().Ttl_parse(Bry_.new_a7("Help:Options/PageHistory"))).Img_16x16(gplx.xowa.html.wtrs.Xoh_img_path.Img_option).Bld_to_bry();
byte[] option_link = app.Html__lnki_bldr().Href_(Bry_.new_a7("home"), app.User().Wikii().Ttl_parse(Bry_.new_a7("Help:Options/PageHistory"))).Img_16x16(gplx.xowa.htmls.wtrs.Xoh_img_path.Img_option).Bld_to_bry();
byte[] delete_confirm_msg = app.Api_root().Usr().Bookmarks().Delete_confirm() ? Msg__delete_confirm : Bry_.Empty;
tbl_fmtr.Write(bfr, this, option_link, delete_confirm_msg, To_ui_rows(db_rows));
} private static final byte[] Msg__delete_confirm = Bry_.new_a7(" data-dbui-delete_confirm_msg='Are you sure you want to delete this row?'");
@@ -61,12 +61,12 @@ public class Dbui_tbl_itm__history implements Dbui_tbl_itm {
int id = Bry_.To_int(pkey);
return tbl.Select_or_null(id);
}
private Dbui_row_itm Get_ui_row(Xoud_history_row row) {return Get_ui_row(Int_.Xto_bry(row.Id()), row.Wiki(), row.Url(), row.Count(), row.Time());}
private Dbui_row_itm Get_ui_row(Xoud_history_row row) {return Get_ui_row(Int_.To_bry(row.Id()), row.Wiki(), row.Url(), row.Count(), row.Time());}
private Dbui_row_itm Get_ui_row(byte[] pkey, byte[] wiki, byte[] url, int count, DateAdp time) {
Dbui_val_itm[] vals = new Dbui_val_itm[4];
vals[0] = new Dbui_val_itm(url, url_fmtr.Bld_bry_many(tmp_bfr, Html_utl.Escape_for_atr_val_as_bry(tmp_bfr, Byte_ascii.Apos, url)));
vals[1] = new Dbui_val_itm(wiki, wiki);
byte[] count_bry = Int_.Xto_bry(count);
byte[] count_bry = Int_.To_bry(count);
vals[2] = new Dbui_val_itm(count_bry, count_bry);
byte[] time_bry = Bry_.new_u8(time.XtoStr_fmt_yyyy_MM_dd_HH_mm_ss());
vals[3] = new Dbui_val_itm(time_bry, time_bry);

View File

@@ -26,7 +26,7 @@ public class Xou_history_html implements Bry_fmtr_arg, Xows_page {
html_grp.Bld_bfr_many(bfr, this);
page.Data_raw_(bfr.To_bry_and_rls());
}
public void XferAry(Bry_bfr bfr, int idx) {
public void Fmt__do(Bry_bfr bfr) {
int len = mgr.Len();
for (int i = 0; i < len; i++) {
Xou_history_itm itm = mgr.Get_at(i);

View File

@@ -68,6 +68,6 @@ public class Xou_history_itm {
.Add(wiki) .Add_byte(Bry_.Dlm_fld)
.Add(page) .Add_byte(Bry_.Dlm_row);
}
public static byte[] key_(byte[] wiki, byte[] page) {return Bry_.Add(wiki, Key_dlm, page);} private static final byte[] Key_dlm = Xoa_consts.Pipe_bry;
public static byte[] key_(byte[] wiki, byte[] page) {return Bry_.Add(wiki, Key_dlm, page);} private static final byte[] Key_dlm = Byte_ascii.Pipe_bry;
public static final byte Fld_key = 0, Fld_wiki = 1, Fld_page = 2, Fld_view_count = 3, Fld_view_bgn = 4, Fld_view_end = 5;
}

View File

@@ -16,11 +16,11 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users.history; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import gplx.core.primitives.*; import gplx.core.net.*; import gplx.xowa.html.hrefs.*;
import gplx.core.primitives.*; import gplx.core.net.*; import gplx.xowa.htmls.hrefs.*;
public class Xou_history_mgr implements GfoInvkAble {
private final Xou_history_html html_mgr = new Xou_history_html(); private Xou_history_sorter sorter = new Xou_history_sorter().Sort_fld_(Xou_history_itm.Fld_view_end).Ascending_(false);
private final Io_url history_fil;
private Ordered_hash itms = Ordered_hash_.new_bry_();
private Ordered_hash itms = Ordered_hash_.New_bry();
private boolean load_chk = false;
private final Bry_bfr tmp_bfr = Bry_bfr.new_();
public Xou_history_mgr(Io_url history_fil) {this.history_fil = history_fil;}
@@ -73,14 +73,14 @@ public class Xou_history_mgr implements GfoInvkAble {
tmp_bfr.Add(page);
Gfo_qarg_mgr qarg_mgr = url.Qargs_mgr();
qarg_mgr.To_bry(tmp_bfr, Xoa_app_.Utl__encoder_mgr().Href(), Bool_.N);
return tmp_bfr.Xto_bry_and_clear();
return tmp_bfr.To_bry_and_clear();
}
public void Sort() {itms.Sort_by(sorter);}
public void Load() {
if (load_chk) return;
load_chk = true;
itms.Clear();
Xou_history_itm_srl.Load(Io_mgr.I.LoadFilBry(history_fil), itms);
Xou_history_itm_srl.Load(Io_mgr.Instance.LoadFilBry(history_fil), itms);
itms.Sort_by(sorter);
}
public void Save(Xoae_app app) {
@@ -90,13 +90,13 @@ public class Xou_history_mgr implements GfoInvkAble {
itms.Sort_by(sorter);
if (itms_len > current_itms_max) itms = Archive(app);
byte[] ary = Xou_history_itm_srl.Save(itms);
Io_mgr.I.SaveFilBry(app.Usere().Fsys_mgr().App_data_history_fil(), ary);
Io_mgr.Instance.SaveFilBry(app.Usere().Fsys_mgr().App_data_history_fil(), ary);
}
public Ordered_hash Archive(Xoae_app app) {
itms.Sort_by(sorter);
int itms_len = itms.Count();
Ordered_hash current_itms = Ordered_hash_.new_bry_();
Ordered_hash archive_itms = Ordered_hash_.new_bry_();
Ordered_hash current_itms = Ordered_hash_.New_bry();
Ordered_hash archive_itms = Ordered_hash_.New_bry();
for (int i = 0; i < itms_len; i++) {
Xou_history_itm itm = (Xou_history_itm)itms.Get_at(i);
Ordered_hash itms_hash = (i < current_itms_reset) ? current_itms : archive_itms;
@@ -104,7 +104,7 @@ public class Xou_history_mgr implements GfoInvkAble {
}
byte[] ary = Xou_history_itm_srl.Save(archive_itms);
Io_url url = app.Usere().Fsys_mgr().App_data_history_fil().GenNewNameOnly(DateAdp_.Now().XtoStr_fmt_yyyyMMdd_HHmmss_fff());
Io_mgr.I.SaveFilBry(url, ary);
Io_mgr.Instance.SaveFilBry(url, ary);
return current_itms;
} private int current_itms_max = 512, current_itms_reset = 256;
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
@@ -146,6 +146,6 @@ class Xou_history_itm_srl {
int listLen = list.Count();
for (int i = 0; i < listLen; i++)
((Xou_history_itm)list.Get_at(i)).Save(bb);
return bb.Xto_bry();
return bb.To_bry();
}
}

View File

@@ -52,7 +52,7 @@ class Xou_history_mgr_fxt {
wiki = Xoa_app_fxt.wiki_tst_(app);
under = app.Usere().History_mgr();
}
Io_mgr.I.DeleteDirDeep(Io_url_.new_dir_("mem/xowa/user/test_user/app/data/history/"));
Io_mgr.Instance.DeleteDirDeep(Io_url_.new_dir_("mem/xowa/user/test_user/app/data/history/"));
under.Clear();
}
public Xou_history_mgr_fxt Add_many(String... ary) {
@@ -88,7 +88,7 @@ class Xou_history_mgr_fxt {
public Xou_history_mgr_fxt Invk(String key, Object v) {GfoInvkAble_.InvkCmd_val(under, key, v); return this;}
public Xou_history_mgr_fxt Save() {under.Save(app); return this;}
public Xou_history_mgr_fxt Fil_tst(String expd_url, String expd) {
String actl = Io_mgr.I.LoadFilStr(expd_url);
String actl = Io_mgr.Instance.LoadFilStr(expd_url);
Tfds.Eq_str_lines(expd, actl);
return this;
}

View File

@@ -71,7 +71,7 @@ public class Xoud_history_tbl implements RlsAble {
}
public void Select_by_top(List_adp rv, int count) {
if (stmt_select_by_top == null) {
Db_qry__select_in_tbl qry = new Db_qry__select_in_tbl(tbl_name, flds.To_str_ary(), null, null, null, fld_time + " DESC", " LIMIT " + Int_.Xto_str(count));
Db_qry__select_in_tbl qry = new Db_qry__select_in_tbl(tbl_name, flds.To_str_ary(), null, null, null, fld_time + " DESC", " LIMIT " + Int_.To_str(count));
stmt_select_by_top = conn.Stmt_new(qry);
}
Db_rdr rdr = stmt_select_by_top.Clear().Exec_select__rls_manual();

View File

@@ -16,7 +16,7 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users.prefs; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import gplx.xowa.cfgs.*;
import gplx.xowa.apps.cfgs.*;
public class Prefs_converter {
private Bry_bfr bfr = Bry_bfr.new_();
private List_adp list = List_adp_.new_();
@@ -25,11 +25,11 @@ public class Prefs_converter {
if (options_version == 1) {
Io_url cfg_dir = app.Usere().Fsys_mgr().App_data_cfg_dir();
Io_url cfg_fil = cfg_dir.GenSubFil("user_system_cfg.gfs");
Io_url trg_fil = cfg_fil.GenNewNameAndExt(gplx.xowa.cfgs.Xoa_cfg_db_txt.File_name);
if (!Io_mgr.I.ExistsFil(trg_fil)) { // do not overwrite file if it is there (i.e.: it's already converted); needed when running in app_mode = cmd (see HACK in Xob_bldr.Run)
String old_str = Io_mgr.I.LoadFilStr_args(cfg_fil).MissingIgnored_(true).Exec();
Io_url trg_fil = cfg_fil.GenNewNameAndExt(gplx.xowa.apps.cfgs.Xoa_cfg_db_txt.File_name);
if (!Io_mgr.Instance.ExistsFil(trg_fil)) { // do not overwrite file if it is there (i.e.: it's already converted); needed when running in app_mode = cmd (see HACK in Xob_bldr.Run)
String old_str = Io_mgr.Instance.LoadFilStr_args(cfg_fil).MissingIgnored_(true).Exec();
String new_str = Convert(old_str);
Io_mgr.I.SaveFilStr(trg_fil, new_str);
Io_mgr.Instance.SaveFilStr(trg_fil, new_str);
app.Cfg_mgr().Db_load_txt();
app.Cfg_mgr().Set_by_app("app.setup.dumps.wiki_storage_type", "sqlite");
app.Log_wtr().Log_to_session_fmt("converted options to v2");
@@ -38,7 +38,7 @@ public class Prefs_converter {
}
public String Convert(String raw) {
list.Clear();
GfoMsg root_msg = gplx.langs.gfss.Gfs_msg_bldr._.ParseToMsg(raw);
GfoMsg root_msg = gplx.langs.gfs.Gfs_msg_bldr.Instance.ParseToMsg(raw);
int len = root_msg.Subs_count();
for (int i = 0; i < len; i++) {
GfoMsg msg = root_msg.Subs_getAt(i);
@@ -58,7 +58,7 @@ public class Prefs_converter {
Write_escaped_str(bfr, itm.Val());
bfr.Add_str_a7("';\n");
}
return bfr.Xto_str_and_clear();
return bfr.To_str_and_clear();
}
private void Write_escaped_str(Bry_bfr bfr, String str) {
byte[] bry = Bry_.new_u8(str);
@@ -81,7 +81,7 @@ public class Prefs_converter {
if (prop_set_key[prop_set_key_len - 1] != Byte_ascii.Underline) return; // doesn't end with _
bfr.Add_mid(prop_set_key, 0, prop_set_key_len - 1);
Prefs_converter_itm itm = new Prefs_converter_itm();
itm.Key_(bfr.Xto_str_and_clear());
itm.Key_(bfr.To_str_and_clear());
String prop_val = m.Args_getAt(0).Val_to_str_or_empty();
itm.Val_(prop_val);
list.Add(itm);
@@ -105,7 +105,7 @@ public class Prefs_converter {
Convert_msg(m.Subs_getAt(0), depth + 1);
}
}
public static final Prefs_converter _ = new Prefs_converter(); Prefs_converter() {}
public static final Prefs_converter Instance = new Prefs_converter(); Prefs_converter() {}
}
class Prefs_converter_itm {
public String Key() {return key;} public void Key_(String v) {this.key = v;} private String key;

View File

@@ -34,7 +34,7 @@ public class Prefs_converter_tst {
}
}
class Prefs_converter_fxt {
Prefs_converter converter = Prefs_converter._;
Prefs_converter converter = Prefs_converter.Instance;
public void Test_convert(String raw, String expd) {
String actl = converter.Convert(raw);
Tfds.Eq_str_lines(expd, actl);

View File

@@ -96,13 +96,13 @@ class Prefs_html_wtr {
if (cmd == null)
cmd = hnde.Atrs_val_by_key_bry(Prefs_mgr.Bry_prop_get);
tmp_bfr.Add(cmd).Add_byte(Byte_ascii.Semic);
try {return prefs_mgr.Eval(tmp_bfr.Xto_bry_and_clear());}
try {return prefs_mgr.Eval(tmp_bfr.To_bry_and_clear());}
catch (Exception e) {return Err_.Message_gplx_full(e);}
}
KeyVal[] Get_select_options(Html_nde hnde) {
byte[] options_list_key = hnde.Atrs_val_by_key_bry(Atr_key_xowa_prop_list);
tmp_bfr.Add(options_list_key).Add_byte(Byte_ascii.Semic);
try {return (KeyVal[])prefs_mgr.Eval(tmp_bfr.Xto_bry_and_clear());}
try {return (KeyVal[])prefs_mgr.Eval(tmp_bfr.To_bry_and_clear());}
catch (Exception e) {Err_.Noop(e); return KeyVal_.Ary_empty;}
}
private void Write__nde_end(Bry_bfr bfr) {bfr.Add_byte(Byte_ascii.Gt);}

View File

@@ -17,8 +17,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users.prefs; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import gplx.core.primitives.*; import gplx.core.net.*; import gplx.langs.htmls.*; import gplx.gfui.*;
import gplx.xowa.gui.views.*;
import gplx.xowa.urls.*;
import gplx.xowa.guis.views.*;
import gplx.xowa.apps.urls.*;
import gplx.xowa.parsers.*;
public class Prefs_mgr implements GfoInvkAble {
public Prefs_mgr(Xoae_app app) {
@@ -50,7 +50,7 @@ public class Prefs_mgr implements GfoInvkAble {
pos = hnde.Tag_rhs_end();
}
bfr.Add_mid(src, pos, src.length);
return bfr.Xto_bry_and_clear();
return bfr.To_bry_and_clear();
} private Bry_fmtr props_get_fmtr;
private void Props_set_and_reload() {
Xoae_page page = app.Gui_mgr().Browser_win().Active_page();
@@ -78,7 +78,7 @@ public class Prefs_mgr implements GfoInvkAble {
byte[] eval_code = hnde.Atrs_val_by_key_bry(Bry_prop);
if (eval_code == null) eval_code = hnde.Atrs_val_by_key_bry(Bry_prop_set);
String hnde_val = null;
String hnde_key = "xowa_prop_" + Int_.Xto_str(i);
String hnde_key = "xowa_prop_" + Int_.To_str(i);
Xog_html_itm html_itm = html_box_mok == null ? app.Gui_mgr().Browser_win().Active_tab().Html_itm() : html_box_mok; // TEST:
byte elem_tid = Prefs_mgr.Elem_tid_tid_of(hnde);
switch (elem_tid) {

View File

@@ -17,8 +17,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.xowa.users.prefs; import gplx.*; import gplx.xowa.*; import gplx.xowa.users.*;
import org.junit.*;
import gplx.gfui.*; import gplx.xowa.apps.gfss.*;
import gplx.xowa.gui.views.*;
import gplx.gfui.*; import gplx.xowa.apps.gfs.*;
import gplx.xowa.guis.views.*;
public class Prefs_mgr_tst {
private Prefs_mgr_fxt fxt = new Prefs_mgr_fxt();
@Before public void init() {fxt.Clear();}
@@ -133,7 +133,7 @@ class Prefs_mgr_fxt {
private Prefs_mgr prefs_mgr; private Gfui_html_mok html_box;
public void Clear() {
if (app == null) {
GfsCore._.Clear(); // NOTE: clear GfsCore, else Props test will fail for mass run
GfsCore.Instance.Clear(); // NOTE: clear GfsCore, else Props test will fail for mass run
Xoa_gfs_mgr.Msg_parser_init();
app = Xoa_app_fxt.app_();
prefs_mgr = new Prefs_mgr(app);

View File

@@ -22,7 +22,7 @@ public class Prefs_rename_mgr {
List_add(list, "app.cfgs.get('app.gui.html.portal.wikis.visible', 'app').val", "app.cfgs.get('xowa.api.html.page.toggles.get(''offline-wikis'').visible', 'app').val");
}
public boolean Check(Io_url url) {
String cur_str = Io_mgr.I.LoadFilStr_args(url).MissingIgnored_().Exec();
String cur_str = Io_mgr.Instance.LoadFilStr_args(url).MissingIgnored_().Exec();
boolean cur_str_changed = false;
int list_len = list.Count();
for (int i = 0; i < list_len; ++i) {
@@ -30,18 +30,18 @@ public class Prefs_rename_mgr {
if (String_.Has(cur_str, itm.Src())) {
cur_str_changed = true;
cur_str = String_.Replace(cur_str, itm.Src(), itm.Trg());
Gfo_usr_dlg_.I.Log_many("", "", "cfg.replace: src=~{src} trg = ~{trg}", itm.Src(), itm.Trg());
Gfo_usr_dlg_.Instance.Log_many("", "", "cfg.replace: src=~{src} trg = ~{trg}", itm.Src(), itm.Trg());
}
}
if (cur_str_changed)
Io_mgr.I.SaveFilStr(url, cur_str);
Io_mgr.Instance.SaveFilStr(url, cur_str);
return cur_str_changed;
}
private static void List_add(List_adp list, String src, String trg) {list.Add(new Prefs_rename_itm(src, trg));}
public static final Prefs_rename_mgr _ = new Prefs_rename_mgr();
public static final Prefs_rename_mgr Instance = new Prefs_rename_mgr();
}
class Prefs_rename_itm {
public Prefs_rename_itm(String src, String trg) {this.src = src; this.trg = trg;}
public String Src() {return src;} private String src;
public String Trg() {return trg;} private String trg;
}
}

View File

@@ -74,6 +74,6 @@ class Xofs_url_itm_parser {
break;
}
}
itm.Url_(url_bfr.Xto_str_and_clear());
itm.Url_(url_bfr.To_str_and_clear());
}
}