diff --git a/src/main/java/org/qortal/api/HTMLParser.java b/src/main/java/org/qortal/api/HTMLParser.java
index 3339ffd3..dbc75243 100644
--- a/src/main/java/org/qortal/api/HTMLParser.java
+++ b/src/main/java/org/qortal/api/HTMLParser.java
@@ -18,9 +18,10 @@ public class HTMLParser {
private Service service;
private String identifier;
private String path;
+ private String theme;
public HTMLParser(String resourceId, String inPath, String prefix, boolean usePrefix, byte[] data,
- String qdnContext, Service service, String identifier) {
+ String qdnContext, Service service, String identifier, String theme) {
String inPathWithoutFilename = inPath.contains("/") ? inPath.substring(0, inPath.lastIndexOf('/')) : "";
this.linkPrefix = usePrefix ? String.format("%s/%s%s", prefix, resourceId, inPathWithoutFilename) : "";
this.data = data;
@@ -29,6 +30,7 @@ public class HTMLParser {
this.service = service;
this.identifier = identifier;
this.path = inPath;
+ this.theme = theme;
}
public void addAdditionalHeaderTags() {
@@ -46,7 +48,8 @@ public class HTMLParser {
String name = this.resourceId != null ? this.resourceId.replace("\"","\\\"") : "";
String identifier = this.identifier != null ? this.identifier.replace("\"","\\\"") : "";
String path = this.path != null ? this.path.replace("\"","\\\"") : "";
- String qdnContextVar = String.format("", this.qdnContext, service, name, identifier, path);
+ String theme = this.theme != null ? this.theme.replace("\"","\\\"") : "";
+ String qdnContextVar = String.format("", this.qdnContext, theme, service, name, identifier, path);
head.get(0).prepend(qdnContextVar);
// Add base href tag
diff --git a/src/main/java/org/qortal/arbitrary/ArbitraryDataRenderer.java b/src/main/java/org/qortal/arbitrary/ArbitraryDataRenderer.java
index 9ad021c1..584dd12a 100644
--- a/src/main/java/org/qortal/arbitrary/ArbitraryDataRenderer.java
+++ b/src/main/java/org/qortal/arbitrary/ArbitraryDataRenderer.java
@@ -129,7 +129,7 @@ public class ArbitraryDataRenderer {
if (HTMLParser.isHtmlFile(filename)) {
// HTML file - needs to be parsed
byte[] data = Files.readAllBytes(Paths.get(filePath)); // TODO: limit file size that can be read into memory
- HTMLParser htmlParser = new HTMLParser(resourceId, inPath, prefix, usePrefix, data, qdnContext, service, identifier);
+ HTMLParser htmlParser = new HTMLParser(resourceId, inPath, prefix, usePrefix, data, qdnContext, service, identifier, theme);
htmlParser.addAdditionalHeaderTags();
response.addHeader("Content-Security-Policy", "default-src 'self' 'unsafe-inline' 'unsafe-eval'; media-src 'self' blob:; img-src 'self' data: blob:;");
response.setContentType(context.getMimeType(filename));