Adaptation et simplification du script de j. meil : Detecting the browsers' name and version
REQUEST=context.REQUEST
identity=REQUEST.HTTP_USER_AGENT.replace('/',' ').lower()
identity=identity.replace('(','')
identity=identity.replace(')','')
identity=identity.replace(';','')
identityParts=identity.split(' ')
browsers=[('opera','Opera'), ('msie','Explorer'), ('konqueror','Konqueror'), ('firefox','Firefox'), ('netscape6','Netscape'), ('netscape','Netscape'), ('galeon','Galeon'), ('k-meleon','K-meleon'), ('gecko','Gecko'), ('lynx','Lynx'), ('wget','Wget'), ('elinks','Links'), ('Mozilla 4','Netscape')]
pos=-1
position_liste=-1


def indexElement(pList,pElement):
try:
position=pList.index(pElement)
except:
position=-1
return position

while (pos<0 and position_liste<len(browsers)-1):
position_liste=position_liste+1
pos=indexElement(identityParts,browsers[position_liste][0])

#Netscape 4.x s'identifie comme Mozilla 4.x
if (indexElement(identityParts,'mozilla')>0 and pos<0):
position_liste=12
pos=1

if (pos>=0):
browser=browsers[position_liste][1]
version=identityParts[pos+1]
if (browsers[position_liste][0]=='gecko'):
version=identityParts[pos-1]
else:
version='0'
browser='unknown'

return [browser,version]