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

Personal_wikis: Add update page_id function

This commit is contained in:
gnosygnu
2017-02-18 09:58:11 -05:00
parent 04a58326e2
commit 4ec913b807
9 changed files with 126 additions and 18 deletions

View File

@@ -41,6 +41,14 @@ public class Srch_search_addon implements Xoax_addon_itm, Srch_search_addon_api
}
this.Clear_rslts_cache();
}
public void Update_links(int ns_id, int old_id, int new_id) {
int search_link_db_id = db_mgr.Tbl__link__get_idx(ns_id);
Srch_link_tbl search_link_tbl = db_mgr.Tbl__link__get_at(search_link_db_id);
if (search_link_tbl.conn.Meta_tbl_exists("search_link")) { // NOTE: personal_wikis may not have search_link; exit early else delete will fail; DATE:2017-02-15
search_link_tbl.Update_page_id(old_id, new_id);
}
this.Clear_rslts_cache();
}
public static final int Score_max = 1000000;
public static final byte Wildcard__star = Byte_ascii.Star;

View File

@@ -41,11 +41,15 @@ public class Srch_link_tbl {
stmt.Val_int(fld_word_id, row.Word_id).Val_int(fld_page_id, row.Page_id).Val_int(fld_link_score, row.Link_score);
}
public void Delete(int page_id) {
Gfo_usr_dlg_.Instance.Log_many("", "", "db.search_link: delete started: page_id=~{0}", page_id);
Db_stmt stmt = conn.Stmt_delete(tbl_name, fld_page_id);
stmt.Clear().Crt_int(fld_page_id, page_id).Exec_delete();
Gfo_usr_dlg_.Instance.Log_many("", "", "db.search_link: delete started: db=~{0} page_id=~{1}", conn.Conn_info().Raw(), page_id);
conn.Stmt_delete(tbl_name, fld_page_id).Crt_int(fld_page_id, page_id).Exec_delete();
Gfo_usr_dlg_.Instance.Log_many("", "", "db.search_link: delete done");
}
public void Update_page_id(int old_id, int new_id) {
Gfo_usr_dlg_.Instance.Log_many("", "", "db.search_link: update_page_id started: db=~{0} old_id=~{1} new_id=~{2}", conn.Conn_info().Raw(), old_id, new_id);
conn.Stmt_update(tbl_name, String_.Ary(fld_page_id), fld_page_id).Val_int(fld_page_id, old_id).Crt_int(fld_page_id, new_id).Exec_update();
Gfo_usr_dlg_.Instance.Log_many("", "", "db.search_link: update done");
}
public static final Srch_link_tbl[] Ary_empty = new Srch_link_tbl[0];
public static final String Fld_link_score = "link_score";