[Zope] Client Detection in Zope

Michel Pelletier michel@digicool.com
Mon, 06 Sep 1999 12:34:44 -0400


Tino Wildenhain wrote:
> 
> Michel Pelletier wrote:
> >
> > trafik@torped.se wrote:
> 
> > > with there Browscap.ini, a static fill defining
> > > diffrent browsers and there propeties.
> 
> > > dynamicly test for javascript- and cookie-support
> > > as well as special HTTP_* properties.
> > >
> > > I'm about to release a beta, if your intrested in
> > > testning it for me?
> > >
> >
> > Zope doesn't have this ability but it would be very nice, Roxen has a
> > similar facility called the 'supports' database.  It would be useful to
> > say:
> >
> > <dtml-if "supports['javascript']">
> >   blah...
> > </dtml-if>
> 
> erm.. and then? I've always doubted the usefullness of such a property.
> If a browser does not support Javascript, it simply ignores it
> (providing
> it properly commented with sgml-comments in the source.
> The same for applets and so on. A static Database cant represent the
> actual browsers cababilities. If it uses HTTP_USER_AGENT to look up,
> it must fail almost certain with some proxies hiding the user-agent
> field completely or setting a default value there for all clients.
> The same for unknown Useragents (the actual count of useragents is
> legion)
> Thus bringing up such funny messages as "Your browser does not support
> frames... please get IE... " on say the new Psion5mx, where it displays
> frames and its impossible to get the clumpy IE runninig on it...
> 
> So I would prefer to build the documents that way it can satisfy all
> useragents from the same file or set of files itself.
> And this _is_ possible.
> 

I agree completely that this is a hack, and that all pages should be
renderable by all browsers.

However, given that it *is* a hack it can be useful in situations that
require a hack.  Sniffing on HTTP_USER_AGENT is an almost identical
hack, but often you are interested in one property or function of the
browser in question, not actually what the browser is.  You can either
maintain your own database of browser features, or Zope can provide a 
standard one.

-Michel

> A nice feature would be multilanguage-support via content-negotiation,
> even different file representations from the preferences of the browser
> (see content-negotiation in the apropriate RFCs)
> 
> But these are just my thougts, anyone can of course work on what he
> wants :))
> 
> best regards,
> Tino Wildenhain
> 
> _______________________________________________
> Zope maillist  -  Zope@zope.org
> http://www.zope.org/mailman/listinfo/zope
> 
> (To receive general Zope announcements, see:
> http://www.zope.org/mailman/listinfo/zope-announce
> 
> For developer-specific issues, zope-dev@zope.org -
> http://www.zope.org/mailman/listinfo/zope-dev )