summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/client/Entities/Status.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/client/Entities/Status.java')
-rw-r--r--app/src/main/java/app/fedilab/android/client/Entities/Status.java38
1 files changed, 38 insertions, 0 deletions
diff --git a/app/src/main/java/app/fedilab/android/client/Entities/Status.java b/app/src/main/java/app/fedilab/android/client/Entities/Status.java
index dbaf113d1..edd0862c5 100644
--- a/app/src/main/java/app/fedilab/android/client/Entities/Status.java
+++ b/app/src/main/java/app/fedilab/android/client/Entities/Status.java
@@ -310,6 +310,44 @@ public class Status implements Parcelable {
}
}
+ matcher = Helper.bibliogramPattern.matcher(content);
+ boolean bibliogram = sharedpreferences.getBoolean(Helper.SET_BIBLIOGRAM, false);
+ if (bibliogram) {
+ while (matcher.find()) {
+ final String bibliogram_directory = matcher.group(2);
+ String bibliogramHost = sharedpreferences.getString(Helper.SET_BIBLIOGRAM_HOST, Helper.DEFAULT_BIBLIOGRAM_HOST).toLowerCase();
+ content = content.replaceAll("https://" + Pattern.quote(matcher.group()), Matcher.quoteReplacement("https://" + bibliogramHost + bibliogram_directory));
+ content = content.replaceAll(">" + Pattern.quote(matcher.group()), Matcher.quoteReplacement(">" + bibliogramHost + bibliogram_directory));
+ }
+ }
+
+ matcher = Helper.ouichesPattern.matcher(content);
+
+ while (matcher.find()) {
+ Attachment attachment = new Attachment();
+ attachment.setType("audio");
+ String tag = matcher.group(1);
+ attachment.setId(tag);
+ if (tag == null) {
+ continue;
+ }
+ attachment.setRemote_url("http://ouich.es/mp3/" + tag + ".mp3");
+ attachment.setUrl("http://ouich.es/mp3/" + tag + ".mp3");
+ if (status.getMedia_attachments() == null) {
+ status.setMedia_attachments(new ArrayList<>());
+ }
+ boolean alreadyAdded = false;
+ for (Attachment at : status.getMedia_attachments()) {
+ if (tag.compareTo(at.getId()) == 0) {
+ alreadyAdded = true;
+ break;
+ }
+ }
+ if (!alreadyAdded) {
+ status.getMedia_attachments().add(attachment);
+ }
+ }
+
Pattern aLink = Pattern.compile("<a((?!href).)*href=\"([^\"]*)\"[^>]*(((?!</a).)*)</a>");
Matcher matcherALink = aLink.matcher(content);
int count = 0;