Yuvipanda has uploaded a new change for review. https://gerrit.wikimedia.org/r/130578
Change subject: Add script to generate main page names for all wiki ...................................................................... Add script to generate main page names for all wiki Change-Id: I827e8c393d0df7ea845bd49c2fed06a940e24495 --- M scripts/make-templates.py A scripts/templates/mainpagenames.java.jinja 2 files changed, 37 insertions(+), 1 deletion(-) git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia refs/changes/78/130578/1 diff --git a/scripts/make-templates.py b/scripts/make-templates.py index b02014f..1227e90 100644 --- a/scripts/make-templates.py +++ b/scripts/make-templates.py @@ -77,6 +77,14 @@ return wikis +def populate_main_pages(wikis): + for wiki in wikis.wikis: + print "Fetching Main Page for %s" % wiki.lang + url = u"https://%s.wikipedia.org/w/api.php?action=query&meta=allmessages&format=json&ammessages=Mainpage" % wiki.lang + data = json.load(urlopen(url)) + wiki.props[u'main_page_name'] = data['query']['allmessages'][0]['*'] + return wikis + # Returns a function that renders a particular template when passed # a WikiList object def render_template(template, filename): @@ -96,5 +104,7 @@ chain( list_from_wikistats, populate_special_alias, - render_template(u'specialalias.java.jinja', u'SpecialAliasData') + render_template(u'specialalias.java.jinja', u'SpecialAliasData'), + populate_main_pages, + render_template(u'mainpagenamess.java.jinja', u'MainPageNameData') ) diff --git a/scripts/templates/mainpagenames.java.jinja b/scripts/templates/mainpagenames.java.jinja new file mode 100644 index 0000000..6d07de5 --- /dev/null +++ b/scripts/templates/mainpagenames.java.jinja @@ -0,0 +1,26 @@ +/* THIS IS AN AUTOMATICALLY GENERATED FILE + IF YOU MODIFY THIS BY HAND BE PREPARED! + TO HAVE YOUR CHANGES OVERWRITTEN */ +package org.wikipedia.staticdata; + +import java.util.*; + +public class {{ class_name }} { + + private static HashMap<String, String> dataMap; + private static void setupData() { + dataMap = new HashMap<String, String>({{wikis|length}}); + + {%- for wiki in wikis %} + dataMap.put("{{wiki.lang}}", "{{wiki.props.main_page_name}}"); + {%- endfor %} + } + + public static String valueFor(String key) { + if (dataMap == null) { + setupData(); + } + + return dataMap.get(key); + } +} -- To view, visit https://gerrit.wikimedia.org/r/130578 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I827e8c393d0df7ea845bd49c2fed06a940e24495 Gerrit-PatchSet: 1 Gerrit-Project: apps/android/wikipedia Gerrit-Branch: master Gerrit-Owner: Yuvipanda <yuvipa...@gmail.com> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits