Merge pull request #535 from tsukaby/feature/search_by_multibyte_string

Make possible to search by multi byte string.
This commit is contained in:
Seyi Adebajo 2017-05-26 14:04:04 -07:00 committed by GitHub
commit 014f1e3311
3 changed files with 5 additions and 5 deletions

View File

@ -23,7 +23,7 @@ App.AdvsearchRoute = Ember.Route.extend({
var q = convertQueryStringToObject() var q = convertQueryStringToObject()
currentTab = 'Datasets'; currentTab = 'Datasets';
updateActiveTab(); updateActiveTab();
query = encodeURIComponent(atob(q.query)); query = q.query;
var url = 'api/v1/advsearch/search?searchOpts=' + query + '&page=' + params.page; var url = 'api/v1/advsearch/search?searchOpts=' + query + '&page=' + params.page;
$.get(url, function(data) { $.get(url, function(data) {
if (data && data.status == "ok") { if (data && data.status == "ok") {

View File

@ -55,7 +55,7 @@ App.SearchRoute = Ember.Route.extend({
q = convertQueryStringToObject(); q = convertQueryStringToObject();
} }
var keyword = atob(q.keywords); var keyword = encodeURIComponent(q.keywords);
var url = 'api/v1/search' + '?page=' + params.page + "&keyword=" + keyword; var url = 'api/v1/search' + '?page=' + params.page + "&keyword=" + keyword;
if(q.category) { if(q.category) {
url += ("&category=" + q.category.toLowerCase()); url += ("&category=" + q.category.toLowerCase());

View File

@ -14,7 +14,7 @@
const handleSearchInput = function () { const handleSearchInput = function () {
if (searchInput) { if (searchInput) {
const {value: keyword} = searchInput; const {value: keyword} = searchInput;
const searchRouteHash = `#/search?keywords=${btoa(keyword)}&category=${global.g_currentCategory}&source=default&page=1`; const searchRouteHash = `#/search?keywords=${encodeURIComponent(keyword)}&category=${global.g_currentCategory}&source=default&page=1`;
keyword && (document.location.hash = searchRouteHash); keyword && (document.location.hash = searchRouteHash);
} }
}; };
@ -432,7 +432,7 @@
advSearchOpts.fields = {'any': fieldAny, 'all': fieldAll, 'not': fieldNotIn}; advSearchOpts.fields = {'any': fieldAny, 'all': fieldAll, 'not': fieldNotIn};
advSearchOpts.comments = comments; advSearchOpts.comments = comments;
advSearchOpts.sources = sources; advSearchOpts.sources = sources;
global.location = '/#/advsearch/?query=' + btoa(JSON.stringify(advSearchOpts)) + '&page=1'; global.location = '/#/advsearch/?query=' + encodeURIComponent(JSON.stringify(advSearchOpts)) + '&page=1';
} }
function advSearchForFlow() { function advSearchForFlow() {
@ -495,7 +495,7 @@
advSearchOpts.appcode = {'in': appcodeIn, 'not': appcodeNotIn}; advSearchOpts.appcode = {'in': appcodeIn, 'not': appcodeNotIn};
advSearchOpts.flow = {'in': flowIn, 'not': flowNotIn}; advSearchOpts.flow = {'in': flowIn, 'not': flowNotIn};
advSearchOpts.job = {'in': jobIn, 'not': jobNotIn}; advSearchOpts.job = {'in': jobIn, 'not': jobNotIn};
global.location = '/#/advsearch/?query=' + btoa(JSON.stringify(advSearchOpts)) + '&page=1'; global.location = '/#/advsearch/?query=' + encodeURIComponent(JSON.stringify(advSearchOpts)) + '&page=1';
} }
$('#advSearchBtn').click(function () { $('#advSearchBtn').click(function () {