[imp] imp 2.3.x vs TWIG
Jon Parise
jon@csh.rit.edu
Sun, 21 Jan 2001 20:19:33 -0500
On Mon, Jan 22, 2001 at 01:07:31AM +0000, Anil Madhavapeddy wrote:
I'll kick this one back to the development list.
> Just one thing I wasn't sure about - is it possible to have _some_
> preferences only stored in the Session, and other ones in the DB?
No, it isn't, but that's not a bad idea.
> I'd like hard storage for most stuff except for the server/port/protocol
> etc, but couldn't immediately see how.
Yeah, that makes sense. I have plans to rework more of the
preferences system. There are now three things on my list:
1) Introduce session-level caching in the Prefs.php parent class that
will cut down on excessive "read" operations. This is fairly
trivial overall, but it will still take me a while to make sure I
have everything working both correctly and optimally.
2) Add a "mapping" layer to the preferences code. This would work
similarly to Turba's source attributes mapping. For example, when
using LDAP preferences, a user may already have a fullname or
email address attribute set. There's no need for us to store our
values separately and redundantly (well, that's up to the local
administrator, but still...).
3) Expand the "mapping" layer to allow multiple preferences sources
to be used for a given session. This would allow the behavior you
suggest where some preferences could be stored in LDAP (i.e. the
user's personal information), some preferences could be stored in
an SQL database (i.e. the user's filters and navigator preferences),
and some information could be stored in the session (i.e. the
current sorting values).
Overall, none of this is all that hard. It just involves some clever
code here and there. Granted, it could complicate the configuration
files a bit more, but a basic configuration similar to what the
current system offers wouldn't differ all that much.
Note that a lot of these capabilities have numerous advantages beyond
the IMP application, too. Other Horde apps could really benefit from
these "mappings". They'd be able to read IMP's preferences a lot more
easily, for example.
Anyway, that's what I've been thinking about. I just wish I had the
time to sit down and code it all. =)
--
Jon Parise (jon@csh.rit.edu) . Rochester Inst. of Technology
http://www.csh.rit.edu/~jon/ : Computer Science House Member