diff --git a/proxychain/responsemodifers/generate_readable_outline.go b/proxychain/responsemodifers/generate_readable_outline.go
index a73e963..05e29b1 100644
--- a/proxychain/responsemodifers/generate_readable_outline.go
+++ b/proxychain/responsemodifers/generate_readable_outline.go
@@ -69,12 +69,14 @@ func GenerateReadableOutline() proxychain.ResponseModification {
"Success": true,
"Image": extract.Metadata.Image,
"Description": extract.Metadata.Description,
+ "Sitename": extract.Metadata.Sitename,
"Hostname": extract.Metadata.Hostname,
"Url": "/" + chain.Request.URL.String(),
"Title": extract.Metadata.Title, // todo: modify CreateReadableDocument so we don't have
titles duplicated?
"Date": extract.Metadata.Date.String(),
- "Author": extract.Metadata.Author,
- "Body": distilledHTML,
+ "Author": createWikipediaSearchLinks(extract.Metadata.Author),
+ //"Author": extract.Metadata.Author,
+ "Body": distilledHTML,
}
// ============================================================================
@@ -157,3 +159,34 @@ func rewriteHrefLinks(n *html.Node, baseURL string, apiPath string) {
}
recurse(n)
}
+
+// createWikipediaSearchLinks takes in comma or semicolon separated terms,
+// then turns them into links searching for the term.
+func createWikipediaSearchLinks(searchTerms string) string {
+ semiColonSplit := strings.Split(searchTerms, ";")
+
+ var links []string
+ for i, termGroup := range semiColonSplit {
+ commaSplit := strings.Split(termGroup, ",")
+ for _, term := range commaSplit {
+ trimmedTerm := strings.TrimSpace(term)
+ if trimmedTerm == "" {
+ continue
+ }
+
+ encodedTerm := url.QueryEscape(trimmedTerm)
+
+ wikiURL := fmt.Sprintf("https://en.wikipedia.org/w/index.php?search=%s", encodedTerm)
+
+ link := fmt.Sprintf("%s", wikiURL, trimmedTerm)
+ links = append(links, link)
+ }
+
+ // If it's not the last element in semiColonSplit, add a comma to the last link
+ if i < len(semiColonSplit)-1 {
+ links[len(links)-1] = links[len(links)-1] + ","
+ }
+ }
+
+ return strings.Join(links, " ")
+}
diff --git a/proxychain/responsemodifers/generate_readable_outline.html b/proxychain/responsemodifers/generate_readable_outline.html
index c849c9c..1057b59 100644
--- a/proxychain/responsemodifers/generate_readable_outline.html
+++ b/proxychain/responsemodifers/generate_readable_outline.html
@@ -31,8 +31,10 @@
+