Changeset 1722 in subversion for trunk/roundcubemail/program/include/rcube_shared.inc
- Timestamp:
- Sep 3, 2008 12:03:19 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/roundcubemail/program/include/rcube_shared.inc
r1707 r1722 29 29 30 30 /** 31 * Provide details about the client's browser32 *33 * @return array Key-value pairs of browser properties34 */35 function rcube_browser()36 {37 $HTTP_USER_AGENT = $_SERVER['HTTP_USER_AGENT'];38 39 $bw['ver'] = 0;40 $bw['win'] = stristr($HTTP_USER_AGENT, 'win');41 $bw['mac'] = stristr($HTTP_USER_AGENT, 'mac');42 $bw['linux'] = stristr($HTTP_USER_AGENT, 'linux');43 $bw['unix'] = stristr($HTTP_USER_AGENT, 'unix');44 45 $bw['ns4'] = stristr($HTTP_USER_AGENT, 'mozilla/4') && !stristr($HTTP_USER_AGENT, 'msie');46 $bw['ns'] = ($bw['ns4'] || stristr($HTTP_USER_AGENT, 'netscape'));47 $bw['ie'] = stristr($HTTP_USER_AGENT, 'msie');48 $bw['mz'] = stristr($HTTP_USER_AGENT, 'mozilla/5');49 $bw['opera'] = stristr($HTTP_USER_AGENT, 'opera');50 $bw['safari'] = stristr($HTTP_USER_AGENT, 'safari');51 52 if($bw['ns'])53 {54 $test = eregi("mozilla\/([0-9\.]+)", $HTTP_USER_AGENT, $regs);55 $bw['ver'] = $test ? (float)$regs[1] : 0;56 }57 if($bw['mz'])58 {59 $test = ereg("rv:([0-9\.]+)", $HTTP_USER_AGENT, $regs);60 $bw['ver'] = $test ? (float)$regs[1] : 0;61 }62 if($bw['ie'])63 {64 $test = eregi("msie ([0-9\.]+)", $HTTP_USER_AGENT, $regs);65 $bw['ver'] = $test ? (float)$regs[1] : 0;66 }67 if($bw['opera'])68 {69 $test = eregi("opera ([0-9\.]+)", $HTTP_USER_AGENT, $regs);70 $bw['ver'] = $test ? (float)$regs[1] : 0;71 }72 73 if(eregi(" ([a-z]{2})-([a-z]{2})", $HTTP_USER_AGENT, $regs))74 $bw['lang'] = $regs[1];75 else76 $bw['lang'] = 'en';77 78 $bw['dom'] = ($bw['mz'] || $bw['safari'] || ($bw['ie'] && $bw['ver']>=5) || ($bw['opera'] && $bw['ver']>=7));79 $bw['pngalpha'] = $bw['mz'] || $bw['safari'] || ($bw['ie'] && $bw['ver']>=5.5) ||80 ($bw['ie'] && $bw['ver']>=5 && $bw['mac']) || ($bw['opera'] && $bw['ver']>=7) ? TRUE : FALSE;81 82 return $bw;83 }84 85 86 /**87 31 * Send HTTP headers to prevent caching this page 88 32 */
Note: See TracChangeset
for help on using the changeset viewer.
