/[pub]/suikawiki/script/misc/plugins/view/Downgrade.wp2
Suika

Diff of /suikawiki/script/misc/plugins/view/Downgrade.wp2

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by wakaba, Fri Dec 26 07:01:21 2003 UTC revision 1.4 by wakaba, Sat Feb 14 10:50:58 2004 UTC
# Line 15  Plugin: Line 15  Plugin:
15    @Date.RCS: $Date$    @Date.RCS: $Date$
16    @RequiredModule[list]:    @RequiredModule[list]:
17    @RequiredPlugin[list]:    @RequiredPlugin[list]:
     WikiView  
     WikiStruct  
     WikiLinking  
     HTML  
18    
19  PluginConst:  PluginConst:
20    @NS_XHTML1:    @NS_XHTML1:
# Line 34  Function: Line 30  Function:
30      my $flag = $wiki->{var}->{client}->{downgrade} ||= {};      my $flag = $wiki->{var}->{client}->{downgrade} ||= {};
31      my $ua_name = $wiki->{var}->{client}->{user_agent_name};      my $ua_name = $wiki->{var}->{client}->{user_agent_name};
32            
33        ## Gecko Mozilla
34        if ($ua_name =~m#\bGecko/([0-9]+)#) {
35          my $geckover = $1;
36          $flag->{media_type_no_rdf_plus_xml} = 1;
37          $flag->{http_no_see_other} = 1 if $geckover > 20030331;
38          $flag->{html_no_table_abbr} = 1;
39        
40        ## Opera
41        } elsif ($ua_name =~ m#\bOpera/([0-9]\.[0-9]+)#) {
42          ## At least Opera/6 does not supports:
43          $flag->{http_refresh_no_quoted_url} = 1;
44          $flag->{http_regresh_no_semicolon_in_uri} = 1;
45        
46      ## Classic Mozilla      ## Classic Mozilla
47      if ($ua_name =~ m#^Mozilla/[0-4]\.#) {      } elsif ($ua_name =~ m#^Mozilla/([0-4]\.[0-9]+)#) {
48          my $mozver = 0+$1;
49          $flag->{html_no_pi} = 1;
50          $flag->{html_no_id} = 1;
51          $flag->{html_no_table_abbr} = 1;
52          $flag->{media_type_no_xml} = 1;
53          $flag->{html_no_latin1} = 1 if $mozver < 3;
54            ## ISSUE: Is NN3 support latin-1 character on Japanese Windoze?
55          $flag->{charset_name_with_x} = 1 if $mozver < 3;
56          $flag->{http_refresh_no_semicolon_in_uri} = 1;
57          if ($mozver >= 4) {
58            $flag->{ua_netscape4} = 1;
59            $flag->{stylesheet_non_standard} = 1;
60            $flag->{html_link_no_media} = 1;
61          } elsif ($mozver < 1) {
62            $flag->{http_no_see_other} = 1;
63            $flag->{media_type_no_parameter} = 1;
64            $flag->{stylesheet_no_css} = 1;
65          } else {
66            $flag->{stylesheet_no_css} = 1;
67          }
68          
69        ## IE
70          if ($ua_name =~ /\bMSIE ([2-9]\.[0-9]+)/) {
71            my $iever = 0+$1;
72            if ($iever >= 6) {
73              $flag->{media_type_no_xml} = 0;
74              $flag->{media_type_no_plus_xml} = 1;
75              $flag->{ua_winie60} = 1;
76            } elsif ($iever >= 5) {
77              $flag->{media_type_no_xml} = 0;
78              $flag->{media_type_no_plus_xml} = 1;
79              if ($iever >= 5.5) {
80                $flag->{ua_winie55} = 1;
81              } else {
82                $flag->{ua_winie50} = 1;
83              }
84            } elsif ($iever >= 4) {
85              $flag->{ua_winie40} = 1;
86            } elsif ($iever >= 3) {
87              $flag->{html_no_latin1} = 1;
88                ## ISSUE: Is WinIE4 support latin-1 character on Japanese Windoze?
89              $flag->{ua_winie30} = 1;
90            } else { # WinIE 2
91              $flag->{html_no_div} = 1;
92              $flag->{stylesheet_no_css} = 1;
93              $flag->{http_refresh_no_quoted_url} = 1;
94            }
95            $flag->{media_type_no_app_js} = 1;
96            $flag->{html_no_table_abbr} = 1;
97            $flag->{stylesheet_non_standard} = 1 if $iever >= 3;
98            $flag->{ua_netscape4} = 0;
99          }
100        ## WinIE 1.0
101        } elsif ($ua_name =~ m#^Microsoft Internet Explorer\b#) {
102          $flag->{html_no_id} = 1;
103          $flag->{html_no_div} = 1;
104          $flag->{html_no_table_abbr} = 1;
105          $flag->{http_no_see_other} = 1;
106          $flag->{stylesheet_no_css} = 1;
107        } elsif ($ua_name =~ /^Infomosaic\b/) {
108          $flag->{media_type_no_parameter} = 1;
109        $flag->{html_no_id} = 1;        $flag->{html_no_id} = 1;
110          $flag->{html_no_div} = 1;
111          $flag->{html_no_table_abbr} = 1;
112          $flag->{stylesheet_no_css} = 1;
113      }      }

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.4

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24