projects
/
mkws-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
0022520
)
set or re-set "lang" URL parameter correctly, MKWS-181
author
Wolfram Schneider
<wosch@indexdata.dk>
Thu, 24 Apr 2014 13:19:21 +0000
(13:19 +0000)
committer
Wolfram Schneider
<wosch@indexdata.dk>
Thu, 24 Apr 2014 13:19:21 +0000
(13:19 +0000)
src/mkws-team.js
patch
|
blob
|
history
diff --git
a/src/mkws-team.js
b/src/mkws-team.js
index
b02b441
..
53a65fc
100644
(file)
--- a/
src/mkws-team.js
+++ b/
src/mkws-team.js
@@
-186,7
+186,7
@@
function team($, teamName) {
that.limitCategory = function(id) {
log("limitCategory(id=" + id + ")");
// Only one category filter at a time
that.limitCategory = function(id) {
log("limitCategory(id=" + id + ")");
// Only one category filter at a time
- m_filterSet.removeMatching(function(f) { return f.type === 'category' });
+ m_filterSet.removeMatching(function(f) { return f.type === 'category' });
if (id !== '') m_filterSet.add(categoryFilter(id));
if (m_query) triggerSearch();
return false;
if (id !== '') m_filterSet.add(categoryFilter(id));
if (m_query) triggerSearch();
return false;
@@
-439,7
+439,27
@@
function team($, teamName) {
return m_config.lang;
}
return m_config.lang;
}
+ // set or re-set "lang" URL parameter
+ function lang_url(lang) {
+ var query = location.search;
+ // no query parameters? done
+ if (!query) {
+ return "?lang=" + lang;
+ }
+
+ // parameter does not exists
+ if (!query.match(/[\?&]lang=/)) {
+ return query + "&lang=" + lang;
+ }
+ // replace existing parameter
+ query = query.replace(/\?lang=([^&#;]*)/, "?lang=" + lang);
+ query = query.replace(/\&lang=([^&#;]*)/, "&lang=" + lang);
+
+ return query;
+ }
+
+ // dynamic URL or static page? /path/foo?query=test
/* create locale language menu */
function mkwsHtmlLang() {
var lang_default = "en";
/* create locale language menu */
function mkwsHtmlLang() {
var lang_default = "en";
@@
-475,7
+495,7
@@
function team($, teamName) {
if (lang == l) {
data += ' <span>' + l + '</span> ';
} else {
if (lang == l) {
data += ' <span>' + l + '</span> ';
} else {
- data += ' <a href="?lang=' + l + '">' + l + '</a> '
+ data += ' <a href="' + lang_url(l) + '">' + l + '</a> '
}
}
}
}