| | |
| | | if (!$recursive) { |
| | | $level = explode('.', $part->mime_id); |
| | | |
| | | // Skip if level too deep or part has a file name |
| | | if (count($level) > 2 || $part->filename) { |
| | | // Skip if part is an attachment |
| | | if ($this->is_attachment($part)) { |
| | | continue; |
| | | } |
| | | |
| | | // HTML part can be on the lower level, if not... |
| | | if (count($level) > 1) { |
| | | array_pop($level); |
| | | // Check if the part belongs to higher-level's alternative/related |
| | | while (array_pop($level) !== null) { |
| | | if (!count($level)) { |
| | | return true; |
| | | } |
| | | |
| | | $parent = $this->mime_parts[join('.', $level)]; |
| | | // ... parent isn't multipart/alternative or related |
| | | if ($parent->mimetype != 'multipart/alternative' && $parent->mimetype != 'multipart/related') { |
| | | continue; |
| | | continue 2; |
| | | } |
| | | } |
| | | } |