Mailstream: remove URL parameters when extracting image filenames
parent
d8d717800c
commit
1f1f63c239
|
@ -157,12 +157,13 @@ function mailstream_do_images($a, &$item, &$attachments) {
|
||||||
preg_match_all("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", $item["body"], $matches1);
|
preg_match_all("/\[img\=([0-9]*)x([0-9]*)\](.*?)\[\/img\]/ism", $item["body"], $matches1);
|
||||||
preg_match_all("/\[img\](.*?)\[\/img\]/ism", $item["body"], $matches2);
|
preg_match_all("/\[img\](.*?)\[\/img\]/ism", $item["body"], $matches2);
|
||||||
foreach (array_merge($matches1[3], $matches2[1]) as $url) {
|
foreach (array_merge($matches1[3], $matches2[1]) as $url) {
|
||||||
|
$components = parse_url($url);
|
||||||
$cookiejar = tempnam(get_temppath(), 'cookiejar-mailstream-');
|
$cookiejar = tempnam(get_temppath(), 'cookiejar-mailstream-');
|
||||||
$curlResult = Network::fetchUrlFull($url, true, 0, '', $cookiejar);
|
$curlResult = Network::fetchUrlFull($url, true, 0, '', $cookiejar);
|
||||||
$attachments[$url] = [
|
$attachments[$url] = [
|
||||||
'data' => $curlResult->getBody(),
|
'data' => $curlResult->getBody(),
|
||||||
'guid' => hash("crc32", $url),
|
'guid' => hash("crc32", $url),
|
||||||
'filename' => basename($url),
|
'filename' => basename($components['path']),
|
||||||
'type' => $curlResult->getContentType()
|
'type' => $curlResult->getContentType()
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue