Got playing around with message processing and the idea of using filter chains to handle the actions. The current system of having huge functions in ../mail/func.inc was a little bit overboard.
The basic idea is to have a filter chain for different action types which can process message contents and yeild results. In an ideal world you would have lots of filters and people writting filters. At the moment I've implemented the following two: * header_address -- provide the link highlighter for send message (compatible functionality) * message_display -- address highlighting in text messages (compatible) -- security (not finished, remove script tags, etc.) -- hideImages (the "safe" mode for image display) -- link higlighting for plain text (compatible) -- quoting coloring (compatible) -- date higlighting (new)
I thought I would float this out to the group for some feedback while I continue to plug along. The ultimate idea is to have something that when it sees an Address / Date can provide some hook functionality to pull up a Map/Calendar, etc.
--koblas
ps. Also sitting in this diff is a fix to only cache in the local mysql messages greater than a specific size, since for some larger messages mysql was barfing.
On Wed, 19 Oct 2005 16:02:17 -0700, "David Koblas" koblas@extra.com wrote:
Got playing around with message processing and the idea of using filter chains to handle the actions. The current system of having huge functions in ../mail/func.inc was a little bit overboard.
The basic idea is to have a filter chain for different action types which can process message contents and yeild results. In an ideal world you would have lots of filters and people writting filters. At the moment I've implemented the following two: * header_address -- provide the link highlighter for send message (compatible functionality) * message_display -- address highlighting in text messages (compatible) -- security (not finished, remove script tags, etc.) -- hideImages (the "safe" mode for image display) -- link higlighting for plain text (compatible) -- quoting coloring (compatible) -- date higlighting (new)
I like the idea of a pluggable filter mechanism - I was just wondering today whether it would be possible to have roundcube read X-spam scores and throw an icon of spam on them (maybe instead of the blue star)
sounds like this framework would suppor that type of development
j.
I thought I would float this out to the group for some feedback while I continue to plug along. The ultimate idea is to have something that when it sees an Address / Date can provide some hook functionality to pull up a Map/Calendar, etc.
--koblas
ps. Also sitting in this diff is a fix to only cache in the local mysql messages greater than a specific size, since for some larger messages mysql was barfing.
does your patch change the roundcoube webmail behaviour in any way, besides the caching/mysql issue? if not, i might give it a shot!
cheers, raoul bhatia
On Wed, 19 Oct 2005 16:02:17 -0700, "David Koblas" koblas@extra.com wrote:
Got playing around with message processing and the idea of using filter chains to handle the actions. The current system of having huge functions in ../mail/func.inc was a little bit overboard.
The basic idea is to have a filter chain for different action types which can process message contents and yeild results. In an ideal world you would have lots of filters and people writting filters. At the moment I've implemented the following two: * header_address -- provide the link highlighter for send message (compatible functionality) * message_display -- address highlighting in text messages (compatible) -- security (not finished, remove script tags, etc.) -- hideImages (the "safe" mode for image display) -- link higlighting for plain text (compatible) -- quoting coloring (compatible) -- date higlighting (new)
I thought I would float this out to the group for some feedback while I continue to plug along. The ultimate idea is to have something that when it sees an Address / Date can provide some hook functionality to pull up a Map/Calendar, etc.
--koblas
ps. Also sitting in this diff is a fix to only cache in the local mysql messages greater than a specific size, since for some larger messages mysql was barfing.
I'll say it's a 0.5 release of the filters, there may be functionality that is impacted. I haven't done a side by side comparison on a wide enough set of messages to know there is no problem. Also, there were a few expressions that while I tried to retain, I'm not 100% sure I understood what cases they were used to have test cases for.
--koblas
----- Original Message ----- From: "Raoul Bhatia" r.bhatia@ipax.at To: "David Koblas" koblas@extra.com Cc: dev@lists.roundcube.net Sent: Wednesday, October 19, 2005 4:29 PM Subject: Re: Filter patch
does your patch change the roundcoube webmail behaviour in any way, besides the caching/mysql issue? if not, i might give it a shot!
cheers, raoul bhatia
On Wed, 19 Oct 2005 16:02:17 -0700, "David Koblas" koblas@extra.com wrote:
Got playing around with message processing and the idea of using filter chains to handle the actions. The current system of having huge functions in ../mail/func.inc was a little bit overboard.
The basic idea is to have a filter chain for different action types which can process message contents and yeild results. In an ideal world you would have lots of filters and people writting filters. At the moment I've implemented the following two: * header_address -- provide the link highlighter for send message (compatible functionality) * message_display -- address highlighting in text messages (compatible) -- security (not finished, remove script tags, etc.) -- hideImages (the "safe" mode for image display) -- link higlighting for plain text (compatible) -- quoting coloring (compatible) -- date higlighting (new)
I thought I would float this out to the group for some feedback while I continue to plug along. The ultimate idea is to have something that when it sees an Address / Date can provide some hook functionality to pull up a Map/Calendar, etc.
--koblas
ps. Also sitting in this diff is a fix to only cache in the local mysql messages greater than a specific size, since for some larger messages mysql was barfing.
good to know!
is it save to try (read: does it alter any email delete/... behavior?) what about any comments from the developers?
raoul
David Koblas wrote:
I'll say it's a 0.5 release of the filters, there may be functionality that is impacted. I haven't done a side by side comparison on a wide enough set of messages to know there is no problem. Also, there were a few expressions that while I tried to retain, I'm not 100% sure I understood what cases they were used to have test cases for.
--koblas