summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Chimento <philip@endlessm.com>2013-11-01 22:50:25 -0700
committerRory MacQueen <rorymacqueen@gmail.com>2013-11-04 16:48:44 -0800
commit30f6ff9afe8b4c6adeecd4720f7a815e3549d89f (patch)
treeaa92b29c8cb2cdf1d727039f6504c45b6efb21f2
parent9e14d483e9fcdd24c7a7c20b503c1d0a1d1d71a9 (diff)
Don't pass lang parameter to query anymore
Also, call the query parameter appname instead of app_name [endlessm/eos-sdk#386]
-rw-r--r--wikipedia/ArticleList.js9
-rw-r--r--wikipedia/PrebuiltArticlesPage.js8
-rw-r--r--wikipedia/WikipediaWebView.js55
-rw-r--r--wikipedia/presenters/domain_wiki_presenter.js4
-rw-r--r--wikipedia/views/domain_wiki_view.js9
5 files changed, 21 insertions, 64 deletions
diff --git a/wikipedia/ArticleList.js b/wikipedia/ArticleList.js
index de9eb81..80c309a 100644
--- a/wikipedia/ArticleList.js
+++ b/wikipedia/ArticleList.js
@@ -14,11 +14,7 @@ const ArticleList = new Lang.Class({
Signals: {
'article-chosen': {
- param_types: [
- GObject.TYPE_STRING,
- GObject.TYPE_STRING,
- GObject.TYPE_STRING
- ]
+ param_types: [GObject.TYPE_STRING, GObject.TYPE_STRING]
}
},
@@ -56,8 +52,7 @@ const ArticleList = new Lang.Class({
let button = new ListTextButton.ListTextButton(HOVER_ARROW_URI,
article.title, { hexpand: true });
button.connect('clicked', Lang.bind(this, function() {
- this.emit('article-chosen',
- article.title, article.source, article.uri);
+ this.emit('article-chosen', article.title, article.uri);
}));
this._grid.add(button);
diff --git a/wikipedia/PrebuiltArticlesPage.js b/wikipedia/PrebuiltArticlesPage.js
index bb2e8b9..c982e99 100644
--- a/wikipedia/PrebuiltArticlesPage.js
+++ b/wikipedia/PrebuiltArticlesPage.js
@@ -15,11 +15,6 @@ const PrebuiltArticlesPage = new Lang.Class({
'Human-readable title for the article to be displayed',
GObject.ParamFlags.READWRITE | GObject.ParamFlags.CONSTRUCT,
''),
- 'article-source': GObject.ParamSpec.string('article-source',
- 'Article source',
- 'Source website or database that the article comes from',
- GObject.ParamFlags.READWRITE | GObject.ParamFlags.CONSTRUCT,
- 'Wikipedia'),
'article-uri': GObject.ParamSpec.string('article-uri',
'Article URI',
'Wikipedia URI for the article to be displayed',
@@ -30,7 +25,6 @@ const PrebuiltArticlesPage = new Lang.Class({
_init: function(props) {
this._article_title = null;
this._article_uri = null;
- this._article_source = null;
// Empty array is placeholder until we get baby page rank
this._wiki_view = new EndlessWikipedia.WikipediaWebView({
@@ -76,7 +70,7 @@ const PrebuiltArticlesPage = new Lang.Class({
if(value !== null && value !== "") {
let url_parts = this._article_uri.split("/");
let suffix = decodeURI(url_parts[url_parts.length-1]);
- this._wiki_view.loadArticleById(suffix, this.article_source);
+ this._wiki_view.loadArticleById(suffix);
}
}
}); \ No newline at end of file
diff --git a/wikipedia/WikipediaWebView.js b/wikipedia/WikipediaWebView.js
index 2fc4119..9f2818a 100644
--- a/wikipedia/WikipediaWebView.js
+++ b/wikipedia/WikipediaWebView.js
@@ -7,9 +7,9 @@ const Lang = imports.lang;
const WebKit = imports.gi.WebKit2;
const Utils = imports.wikipedia.utils;
-const hostName = "http://127.0.0.1:3000";
-const version = "v1"
-const getPageById = "getArticleById?";
+const API_ENDPOINT = "http://127.0.0.1:3000";
+const API_VERSION = "v1";
+const getPageByIdURI = "getArticleById?";
const getPageByTitleURI = "getArticleByTitle?";
const getPageByQueryURI = "getTopArticleByQuery?";
const getTitlesByQueryURI = "getArticleTitlesByQuery?";
@@ -72,9 +72,9 @@ const WikipediaWebView = new Lang.Class({
_getFullURL: function(method, params){
// We always include personality and
// app name on all requests.
- let base_url = [hostName, version, method].join("/")
+ let base_url = [API_ENDPOINT, API_VERSION, method].join("/");
params["personality"] = this.system_personality;
- params["app_name"] = this.app_name;
+ params["appname"] = this.app_name;
let full_url = base_url;
for(let key in params){
full_url += key + "=" + params[key] + "&";
@@ -84,25 +84,12 @@ const WikipediaWebView = new Lang.Class({
return full_url;
},
- loadArticleById: function(id, source) {
+ loadArticleById: function (id) {
let params = {
id: id,
- hideLinks: this.hide_links,
- source: source,
- lang: _systemPersonalityToDatabaseLang(this.system_personality)
- };
- let url = this._getFullURL(getPageById, params);
- this.load_uri(url);
- },
-
- loadArticleByTitle: function(title, source) {
- let params = {
- title: title,
- hideLinks: this.hide_links,
- source: source,
- lang: _systemPersonalityToDatabaseLang(this.system_personality)
+ hideLinks: this.hide_links
};
- let url = this._getFullURL(getPageByTitleURI, params);
+ let url = this._getFullURL(getPageByIdURI, params);
this.load_uri(url);
},
@@ -110,18 +97,14 @@ const WikipediaWebView = new Lang.Class({
let params = {
query: query,
hideLinks: this.hide_links,
- source: source,
- lang: _systemPersonalityToDatabaseLang(this.system_personality)
+ source: source
};
let url = this._getFullURL(getPageByQueryURI, params);
this.load_uri(url);
},
loadTitlesBySearchQuery: function (query) {
- let params = {
- query: query,
- lang: _systemPersonalityToDatabaseLang(this.system_personality)
- };
+ let params = { query: query };
let url = this._getFullURL(getTitlesByQueryURI, params);
this.load_uri(url);
},
@@ -149,12 +132,11 @@ const WikipediaWebView = new Lang.Class({
_onNavigation: function(webview, decision, decision_type) {
if (decision_type == WebKit.PolicyDecisionType.NAVIGATION_ACTION) {
let uri = decision.request.uri;
- if (uri.startsWith(hostName + "/wiki/")) {
+ if (uri.startsWith(API_ENDPOINT + "/wiki/")) {
let parts = uri.split("/");
let suffix = parts[parts.length - 1];
let id = decodeURI(suffix);
- // FIXME: determine the source db from the link format?
- this.loadArticleById(id, 'Wikipedia');
+ this.loadArticleById(id);
return true;
} else if (GLib.uri_parse_scheme(uri).startsWith('browser-')) {
// Open everything that starts with 'browser-' in the system
@@ -172,16 +154,3 @@ const WikipediaWebView = new Lang.Class({
this.setAllowedLinks();
}
});
-
-/* Temporary helper function; remove this when the original article URI is
-stored inside the Elasticsearch database. FIXME */
-function _systemPersonalityToDatabaseLang(personality) {
- switch (personality) {
- case 'Guatemala':
- case 'Mexico':
- return 'es';
- case 'Brazil':
- return 'pt';
- }
- return 'en';
-}
diff --git a/wikipedia/presenters/domain_wiki_presenter.js b/wikipedia/presenters/domain_wiki_presenter.js
index ecd58a3..3e59a01 100644
--- a/wikipedia/presenters/domain_wiki_presenter.js
+++ b/wikipedia/presenters/domain_wiki_presenter.js
@@ -82,8 +82,8 @@ const DomainWikiPresenter = new Lang.Class({
// Respond to the category page's 'article-clicked' signal by loading that
// article and switching to the article page
- _onArticleClicked: function (articleList, title, source, uri) {
- this._view.set_article_info(title, source, uri);
+ _onArticleClicked: function (articleList, title, uri) {
+ this._view.set_article_info(title, uri);
this._view.show_article_page();
},
diff --git a/wikipedia/views/domain_wiki_view.js b/wikipedia/views/domain_wiki_view.js
index 3386c95..a238f6b 100644
--- a/wikipedia/views/domain_wiki_view.js
+++ b/wikipedia/views/domain_wiki_view.js
@@ -18,7 +18,7 @@ const DomainWikiView = new Lang.Class({
param_types: [GObject.TYPE_STRING]
},
'article-chosen': {
- param_types: [GObject.TYPE_STRING, GObject.TYPE_STRING, GObject.TYPE_STRING]
+ param_types: [GObject.TYPE_STRING, GObject.TYPE_STRING]
},
'category-back-clicked': {},
'article-back-clicked': {}
@@ -182,10 +182,9 @@ const DomainWikiView = new Lang.Class({
* Method: set_article_info
* Proxy method to set the article displaying on the article page
*/
- set_article_info: function (title, source, uri) {
+ set_article_info: function (title, uri) {
// Note: Must set article title first
this._article_view.article_title = title;
- this._article_view.article_source = source;
this._article_view.article_uri = uri;
},
@@ -251,8 +250,8 @@ const DomainWikiView = new Lang.Class({
// Proxy signal, respond to category page's 'article-chosen' signal by
// emitting our own
- _onArticleClicked: function (articleList, title, source, uri) {
- this.emit('article-chosen', title, source, uri);
+ _onArticleClicked: function (articleList, title, uri) {
+ this.emit('article-chosen', title, uri);
},
_onCategoryBackClicked: function(button) {