Generate public urls for attachments in message
This commit is contained in:
		@@ -362,6 +362,13 @@ async function messageToEvent(message, guild, options = {}, di) {
 | 
			
		||||
		return content
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Translate Discord attachment links into links that go via the bridge, so they last forever.
 | 
			
		||||
	 */
 | 
			
		||||
	function transformAttachmentLinks(content) {
 | 
			
		||||
		return content.replace(/https:\/\/cdn\.discord(?:app)?\.com\/attachments\/([0-9]+)\/([0-9]+)\/([-A-Za-z0-9_.,]+)/g, url => dUtils.getPublicUrlForCdn(url))
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Translate links and emojis and mentions and stuff. Give back the text and HTML so they can be combined into bigger events.
 | 
			
		||||
	 * @param {string} content Partial or complete Discord message content
 | 
			
		||||
@@ -370,6 +377,7 @@ async function messageToEvent(message, guild, options = {}, di) {
 | 
			
		||||
	 * @param {any} customHtmlOutput
 | 
			
		||||
	 */
 | 
			
		||||
	async function transformContent(content, customOptions = {}, customParser = null, customHtmlOutput = null) {
 | 
			
		||||
		content = transformAttachmentLinks(content)
 | 
			
		||||
		content = await transformContentMessageLinks(content)
 | 
			
		||||
 | 
			
		||||
		// Handling emojis that we don't know about. The emoji has to be present in the DB for it to be picked up in the emoji markdown converter.
 | 
			
		||||
 
 | 
			
		||||
@@ -121,7 +121,7 @@ function timestampToSnowflakeInexact(timestamp) {
 | 
			
		||||
 | 
			
		||||
/** @param {string} url */
 | 
			
		||||
function getPublicUrlForCdn(url) {
 | 
			
		||||
	const match = url.match(`https://cdn.discordapp.com/attachments/([0-9]+)/([0-9]+)/([-A-Za-z0-9_.,]+)`)
 | 
			
		||||
	const match = url.match(/https:\/\/cdn.discordapp.com\/attachments\/([0-9]+)\/([0-9]+)\/([-A-Za-z0-9_.,]+)/)
 | 
			
		||||
	if (!match) return url
 | 
			
		||||
	return `${reg.ooye.bridge_origin}/download/discordcdn/${match[1]}/${match[2]}/${match[3]}`
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user