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

Personal_wikis: Add page delete; refactor category updates

This commit is contained in:
gnosygnu
2017-02-15 11:44:30 -05:00
parent b37b5ceddd
commit 12c78cf89f
17 changed files with 252 additions and 47 deletions

View File

@@ -33,6 +33,14 @@ public class Srch_search_addon implements Xoax_addon_itm, Srch_search_addon_api
public void Search(Srch_search_qry qry, Srch_rslt_cbk cbk) {search_mgr.Search(qry, cbk);}
public void Clear_rslts_cache() {search_mgr.Clear_rslts_cache();}
public void Delete_links(int ns_id, int page_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.Delete(page_id);
}
this.Clear_rslts_cache();
}
public static final int Score_max = 1000000;
public static final byte Wildcard__star = Byte_ascii.Star;

View File

@@ -40,6 +40,12 @@ public class Srch_link_tbl {
public void Fill_for_insert(Db_stmt stmt, Srch_link_row row) {
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 done");
}
public static final Srch_link_tbl[] Ary_empty = new Srch_link_tbl[0];
public static final String Fld_link_score = "link_score";