An interesting idea, however I think the implementation might be a little flawed. It makes the assumption that the text part is always part 1. In a multi-part related message, that cannot always be assumed. Part 1 in a multi-part related message is, in fact, another MIME structure, which would require the fetching of the sub headers to parse, and finding out where the text is, so you can then do 1.x where x is the new text portion. This could introduce some extra load on both web server (for parsing the full headers via a BODYSTRUCTURE call), and the IMAP server for having to retrieve more information.