replace youtube/twitter/instagram with privacy respecting ones

This commit is contained in:
teddit
2021-03-21 21:14:11 +01:00
parent d963c14155
commit 3e9868fd5e
13 changed files with 124 additions and 77 deletions
+36 -13
View File
@@ -130,7 +130,9 @@ module.exports = function(request, fs) {
return d.toUTCString()
}
this.unescape = (s) => {
this.unescape = (s, user_preferences) => {
/* It would make much more sense to rename this function to something
* like "formatter".
*/
@@ -148,23 +150,44 @@ module.exports = function(request, fs) {
'"': '"',
'"': '"'
}
if(config.convert_urls.reddit) {
let str = s.replace(re, (m) => {
return unescaped[m]
})
let r = /([A-z.]+\.)?(reddit(\.com)|redd(\.it))/gm;
let result = str.replace(r, config.domain)
return result
} else {
return s.replace(re, (m) => {
return unescaped[m]
})
}
let result = s.replace(re, (m) => {
return unescaped[m]
})
result = replacePrivacyDomains(result, user_preferences)
return result
} else {
return ''
}
}
this.replacePrivacyDomains = (str, user_preferences) => {
if(typeof(user_preferences) == 'undefined')
return str
let redditRegex = /([A-z.]+\.)?(reddit(\.com)|redd(\.it))/gm;
let youtubeRegex = /([A-z.]+\.)?youtu(be\.com|\.be)/gm;
let twitterRegex = /([A-z.]+\.)?twitter\.com/gm;
let instagramRegex = /([A-z.]+\.)?instagram.com/gm;
str = str.replace(redditRegex, config.domain)
if(typeof(user_preferences.domain_youtube) != 'undefined')
if(user_preferences.domain_youtube)
str = str.replace(youtubeRegex, user_preferences.domain_youtube)
if(typeof(user_preferences.domain_twitter) != 'undefined')
if(user_preferences.domain_twitter)
str = str.replace(twitterRegex, user_preferences.domain_twitter)
if(typeof(user_preferences.domain_instagram) != 'undefined')
if(user_preferences.domain_instagram)
str = str.replace(instagramRegex, user_preferences.domain_instagram)
return str
}
this.deleteFiles = (files, callback) => {
var i = files.length
files.forEach((filepath) => {