From 2b572ea41d9e77cd851bba09e14411f639dfa8e9 Mon Sep 17 00:00:00 2001 From: stom79 Date: Fri, 1 Feb 2019 18:03:18 +0100 Subject: Fix issue #782 --- .../main/java/fr/gouv/etalab/mastodon/client/API.java | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java b/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java index 3c24b545a..8727109d6 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java @@ -20,6 +20,7 @@ import android.content.SharedPreferences; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.support.v4.content.LocalBroadcastManager; +import android.util.Log; import org.json.JSONArray; import org.json.JSONException; @@ -1375,8 +1376,13 @@ public class API { if( tag == null) return null; try { + String query = tag.trim(); HttpsConnection httpsConnection = new HttpsConnection(context); - String response = httpsConnection.get(getAbsoluteUrl(String.format("/timelines/tag/%s",tag.trim())), 60, params, prefKeyOauthTokenT); + if( MainActivity.social != UpdateAccountInfoAsyncTask.SOCIAL.PEERTUBE) + try { + query = URLEncoder.encode(query, "UTF-8"); + } catch (UnsupportedEncodingException ignored) {} + String response = httpsConnection.get(getAbsoluteUrl(String.format("/timelines/tag/%s",query)), 60, params, prefKeyOauthTokenT); apiResponse.setSince_id(httpsConnection.getSince_id()); apiResponse.setMax_id(httpsConnection.getMax_id()); statuses = parseStatuses(context, new JSONArray(response)); @@ -2177,7 +2183,15 @@ public class API { public Results search(String query) { HashMap params = new HashMap<>(); - params.put("q", query); + if( MainActivity.social == UpdateAccountInfoAsyncTask.SOCIAL.PEERTUBE) + params.put("q", query); + else + try { + params.put("q", URLEncoder.encode(query, "UTF-8")); + } catch (UnsupportedEncodingException e) { + params.put("q", query); + } + Log.v(Helper.TAG,"q: " + query); try { HttpsConnection httpsConnection = new HttpsConnection(context); String response = httpsConnection.get(getAbsoluteUrl("/search"), 60, params, prefKeyOauthTokenT); -- cgit v1.2.3