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:
@@ -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;
|
||||
|
||||
@@ -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";
|
||||
|
||||
Reference in New Issue
Block a user