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

'v3.6.3.1'

This commit is contained in:
gnosygnu
2016-06-19 23:58:10 -04:00
parent 96636f3161
commit d4e8590345
1960 changed files with 20790 additions and 9272 deletions

View File

@@ -37,13 +37,13 @@ public class Xop_languages_xnde implements Xox_xnde {
}
private List_adp Find_lang_pages(Xop_ctx ctx, Xowe_wiki wiki) {
this.root_ttl = Root_ttl_of(wiki, ctx.Page().Ttl());
List_adp rslts = List_adp_.new_();
Int_obj_ref rslt_count = Int_obj_ref.new_(0);
List_adp rslts = List_adp_.New();
Int_obj_ref rslt_count = Int_obj_ref.New(0);
Xow_ns page_ns = root_ttl.Ns();
wiki.Db_mgr().Load_mgr().Load_ttls_for_all_pages(Cancelable_.Never, rslts, null, null, rslt_count, page_ns, root_ttl.Page_db(), Int_.Max_value, 0, Int_.Max_value, true, false);
int len = rslt_count.Val();
if (len == 0) return List_adp_.Noop; // no lang pages; return;
List_adp rv = List_adp_.new_();
List_adp rv = List_adp_.New();
byte[] root_ttl_bry = root_ttl.Page_db(); // get root_ttl_bry; do not use ns
int lang_bgn = root_ttl_bry.length + 1; // lang starts after /; EX: "Page" will have subpage of "Page/fr" and lang_bgn of 5
boolean english_needed = true;

View File

@@ -18,8 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.xowa.xtns.translates; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*;
import gplx.xowa.langs.*;
import gplx.xowa.specials.*;
public class Xop_mylanguage_page implements Xows_page {
public Xows_special_meta Special__meta() {return Xows_special_meta_.Itm__my_language;}
public class Xop_mylanguage_page implements Xow_special_page {
public Xow_special_meta Special__meta() {return Xow_special_meta_.Itm__my_language;}
public void Special__gen(Xow_wiki wikii, Xoa_page pagei, Xoa_url url, Xoa_ttl ttl) {
// Special:MyLanguage/Help:A -> Help:A/fr
Xowe_wiki wiki = (Xowe_wiki)wikii; Xoae_page page = (Xoae_page)pagei;
@@ -29,10 +29,10 @@ public class Xop_mylanguage_page implements Xows_page {
boolean lang_is_english = Bry_.Eq(lang_key, Xol_lang_itm_.Key_en);
if (!lang_is_english)
trg_bry = Bry_.Add_w_dlm(Xoa_ttl.Subpage_spr, page_bry, lang_key);
Xoae_page found_page = wiki.Data_mgr().Redirect(page, trg_bry);
if (found_page.Missing() && !lang_is_english) // foreign lang does not exist; default to english
wiki.Data_mgr().Redirect(page, trg_bry);
if (page.Missing() && !lang_is_english) // foreign lang does not exist; default to english
wiki.Data_mgr().Redirect(page, page_bry);
}
public Xows_page Special__clone() {return this;}
public Xow_special_page Special__clone() {return this;}
}