browser_detect 0.0.1 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore ADDED
@@ -0,0 +1,4 @@
1
+ *.gemspec
2
+ .svn
3
+ .yardoc/
4
+ .bundle/
data/.yardopts ADDED
@@ -0,0 +1,5 @@
1
+ --readme ./README.md
2
+ --markup markdown
3
+ --default-return ""
4
+ --title "BrowserDetect Documentation"
5
+ --template default
data/README.md ADDED
@@ -0,0 +1,77 @@
1
+ Browser Detect
2
+ ==============
3
+ _It's like a crystal ball for user agents._
4
+
5
+ Detect it.
6
+ ----------
7
+
8
+ Detects the client browser using the user agent string that was used to make the page request.
9
+
10
+ Browser Detect currently supports the following browsers and platforms:
11
+
12
+ Browsers:
13
+
14
+ * ie
15
+ * gecko
16
+ * konqueror
17
+ * opera
18
+ * ipad
19
+ * ipod
20
+ * iphone
21
+ * chrome
22
+ * safari
23
+
24
+ Robots:
25
+
26
+ * googlebot
27
+ * msnbot
28
+ * yahoo!
29
+
30
+ Operating Systems:
31
+
32
+ * TODO
33
+
34
+ Install it:
35
+ -----------
36
+
37
+ Using Bundler, all you need to do is add the source to your Gemfile:
38
+
39
+ gem "browser_detect", :require => "browser_detect", :git => 'git://github.com/traction/browser_detect.git'
40
+
41
+ Then run:
42
+
43
+ bundle install
44
+
45
+ or, install it as a plugin:
46
+
47
+ script/plugin install git://github.com/traction/browser_detect.git
48
+
49
+ Wield it.
50
+ ---------
51
+
52
+ To check the type of browser, use browser_name
53
+ @browser_name will return either 'ie', 'gecko', 'opera', 'konqueror', 'ipod', 'ipad', 'iphone', 'chrome', 'safari', 'googlebot', 'msnbot', 'yahoobot'
54
+
55
+ def index
56
+ @browser_name = browser_name
57
+ end
58
+
59
+ To check if a particular browser made the request, use browser_name?(name)
60
+ If the browser used is chrome, it will return True
61
+
62
+ def index
63
+ @browser_type = browser_is?("chrome")
64
+ end
65
+
66
+ or in a view using ERB:
67
+
68
+ <%= browser_is?(:chrome) ? "secrets" : "buzz off" %>
69
+
70
+ Or choose from the following groupings:
71
+
72
+ * mozilla
73
+ * ie
74
+ * webkit
75
+ * robots
76
+
77
+
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.0.4
@@ -1,22 +1,23 @@
1
1
  # -*- encoding: utf-8 -*-
2
- require File.expand_path("../lib/browser_detect/version", __FILE__)
3
-
2
+ files = `git ls-files`.split("\n")
4
3
  Gem::Specification.new do |s|
5
4
  s.name = "browser_detect"
6
- s.version = "0.0.1"
5
+ s.version = File.read(File.expand_path(File.dirname(__FILE__)+ "/VERSION")).strip
7
6
  s.platform = Gem::Platform::RUBY
8
- s.authors = ["faunzy"]
7
+ s.authors = ["rlivsey", "faunzy", "tmlee", "ggilder"]
9
8
  s.email = []
10
- s.homepage = "http://rubygems.org/gems/browser_detect"
11
- s.summary = "Detects the client's browser"
12
- s.description = "Client browser detector"
9
+ s.has_rdoc = 'yard'
10
+ s.homepage = "http://github.com/traction/browser_detect"
11
+ s.summary = "A simple rails browser detection plugin"
12
+ s.description = <<-END
13
+ Simple rails browser detection based on original plugin by Richard Livsey"
14
+ END
13
15
 
14
16
  s.required_rubygems_version = ">= 1.3.6"
15
17
  s.rubyforge_project = "browser_detect"
16
-
17
18
  s.add_development_dependency "bundler", ">= 1.0.0.rc.6"
18
-
19
- s.files = `git ls-files`.split("\n")
20
- s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
19
+
20
+ s.files = files.reject{|f| f =~ /\.gem$/}
21
+ s.executables = files.map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
21
22
  s.require_path = 'lib'
22
23
  end
@@ -0,0 +1,456 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
+ <head>
5
+ <meta name="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>Module: BrowserDetect</title>
7
+ <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8" />
8
+ <link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
9
+
10
+ <script type="text/javascript" charset="utf-8">
11
+ relpath = '';
12
+ if (relpath != '') relpath += '/';
13
+ </script>
14
+ <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
15
+ <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
16
+
17
+ </head>
18
+ <body>
19
+ <script type="text/javascript" charset="utf-8">
20
+ if (window.top.frames.main) document.body.className = 'frames';
21
+ </script>
22
+
23
+ <div id="header">
24
+ <div id="menu">
25
+
26
+ <a href="_index.html">Index (B)</a> &raquo;
27
+
28
+
29
+ <span class="title">BrowserDetect</span>
30
+
31
+
32
+ <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
33
+ </div>
34
+
35
+ <div id="search">
36
+ <a id="class_list_link" href="#">Class List</a>
37
+ <a id="method_list_link" href="#">Method List</a>
38
+ <a id ="file_list_link" href="#">File List</a>
39
+ </div>
40
+
41
+ <div class="clear"></div>
42
+ </div>
43
+
44
+ <iframe id="search_frame"></iframe>
45
+
46
+ <div id="content"><h1>Module: BrowserDetect
47
+
48
+
49
+
50
+ </h1>
51
+
52
+ <dl class="box">
53
+
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ <dt class="r1 last">Defined in:</dt>
62
+ <dd class="r1 last">lib/version.rb<span class="defines">,<br />
63
+ lib/browser_detect.rb</span>
64
+ </dd>
65
+
66
+ </dl>
67
+ <div class="clear"></div>
68
+
69
+
70
+ <h2>Constant Summary</h2>
71
+
72
+ <dl class="constants">
73
+
74
+ <dt id="VERSION-constant" class="">VERSION =
75
+
76
+ </dt>
77
+ <dd><pre class="code"><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>0.0.3</span><span class='tstring_end'>&quot;</span></span></pre></dd>
78
+
79
+ </dl>
80
+
81
+
82
+
83
+
84
+
85
+ <h2>
86
+ Instance Method Summary
87
+ <small>(<a href="#" class="summary_toggle">collapse</a>)</small>
88
+ </h2>
89
+
90
+ <ul class="summary">
91
+
92
+ <li class="public ">
93
+ <span class="summary_signature">
94
+
95
+ <a href="#browser_is%3F-instance_method" title="#browser_is? (instance method)">- (Boolean) <strong>browser_is?</strong>(name) </a>
96
+
97
+
98
+
99
+ </span>
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+ <span class="summary_desc"><div class='inline'><p>Browser groupings &lt;%= browser_is?(:ie) ? "srsly?" : "thank goodness" %>.</p></div></span>
109
+
110
+ </li>
111
+
112
+
113
+ <li class="public ">
114
+ <span class="summary_signature">
115
+
116
+ <a href="#browser_name-instance_method" title="#browser_name (instance method)">- <strong>browser_name</strong> </a>
117
+
118
+
119
+
120
+ </span>
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+ <span class="summary_desc"><div class='inline'><p>Returns the user agent string as determined by the plugin.</p></div></span>
130
+
131
+ </li>
132
+
133
+
134
+ <li class="public ">
135
+ <span class="summary_signature">
136
+
137
+ <a href="#browser_webkit_version-instance_method" title="#browser_webkit_version (instance method)">- <strong>browser_webkit_version</strong> </a>
138
+
139
+
140
+
141
+ </span>
142
+
143
+
144
+
145
+
146
+
147
+
148
+
149
+
150
+ <span class="summary_desc"><div class='inline'><p>Determine the version of webkit.</p></div></span>
151
+
152
+ </li>
153
+
154
+
155
+ <li class="public ">
156
+ <span class="summary_signature">
157
+
158
+ <a href="#ua-instance_method" title="#ua (instance method)">- <strong>ua</strong> </a>
159
+
160
+
161
+
162
+ </span>
163
+
164
+
165
+
166
+
167
+
168
+
169
+
170
+
171
+ <span class="summary_desc"><div class='inline'><p>Gather the user agent and store it for use.</p></div></span>
172
+
173
+ </li>
174
+
175
+
176
+ </ul>
177
+
178
+
179
+
180
+
181
+ <div id="instance_method_details" class="method_details_list">
182
+ <h2>Instance Method Details</h2>
183
+
184
+
185
+ <div class="method_details first">
186
+ <p class="signature first" id="browser_is?-instance_method">
187
+
188
+ - (<tt>Boolean</tt>) <strong>browser_is?</strong>(name)
189
+
190
+
191
+
192
+ </p><div class="docstring">
193
+ <div class="discussion">
194
+ <p>Browser groupings &lt;%= browser_is?(:ie) ? "srsly?" : "thank goodness" %></p>
195
+
196
+ </div>
197
+ </div>
198
+ <div class="tags">
199
+ <h3>Returns:</h3>
200
+ <ul class="return">
201
+
202
+ <li>
203
+
204
+ <span class='type'>(<tt>Boolean</tt>)</span>
205
+
206
+
207
+
208
+
209
+ </li>
210
+
211
+ </ul>
212
+
213
+ </div><table class="source_code">
214
+ <tr>
215
+ <td>
216
+ <pre class="lines">
217
+
218
+
219
+ 3
220
+ 4
221
+ 5
222
+ 6
223
+ 7
224
+ 8
225
+ 9
226
+ 10
227
+ 11</pre>
228
+ </td>
229
+ <td>
230
+ <pre class="code"><span class="info file"># File 'lib/browser_detect.rb', line 3</span>
231
+
232
+ <span class='kw'>def</span> <span class='id browser_is?'>browser_is?</span> <span class='id name'>name</span>
233
+ <span class='id name'>name</span> <span class='op'>=</span> <span class='id name'>name</span><span class='period'>.</span><span class='id to_s'>to_s</span><span class='period'>.</span><span class='id strip'>strip</span>
234
+ <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id browser_name'>browser_name</span> <span class='op'>==</span> <span class='id name'>name</span>
235
+ <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id name'>name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>mozilla</span><span class='tstring_end'>'</span></span> <span class='op'>&amp;&amp;</span> <span class='id browser_name'>browser_name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>gecko</span><span class='tstring_end'>'</span></span>
236
+ <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id name'>name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ie</span><span class='tstring_end'>'</span></span> <span class='op'>&amp;&amp;</span> <span class='id browser_name'>browser_name</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ie</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
237
+ <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id name'>name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>webkit</span><span class='tstring_end'>'</span></span> <span class='op'>&amp;&amp;</span> <span class='qwords_beg'>%w{</span><span class='tstring_content'>safari</span><span class='words_sep'> </span><span class='tstring_content'>chrome</span><span class='words_sep'> </span><span class='tstring_content'>iphone</span><span class='words_sep'> </span><span class='tstring_content'>ipad</span><span class='words_sep'> </span><span class='tstring_content'>ipod</span><span class='words_sep'>}</span><span class='period'>.</span><span class='id include?'>include?</span><span class='lparen'>(</span><span class='id browser_name'>browser_name</span><span class='rparen'>)</span>
238
+ <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id name'>name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ios</span><span class='tstring_end'>'</span></span> <span class='op'>&amp;&amp;</span> <span class='qwords_beg'>%w{</span><span class='tstring_content'>iphone</span><span class='words_sep'> </span><span class='tstring_content'>ipad</span><span class='words_sep'> </span><span class='tstring_content'>ipod</span><span class='words_sep'>}</span><span class='period'>.</span><span class='id include?'>include?</span><span class='lparen'>(</span><span class='id browser_name'>browser_name</span><span class='rparen'>)</span>
239
+ <span class='kw'>return</span> <span class='kw'>true</span> <span class='kw'>if</span> <span class='id name'>name</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>robots</span><span class='tstring_end'>'</span></span> <span class='op'>&amp;&amp;</span> <span class='qwords_beg'>%w{</span><span class='tstring_content'>googlebot</span><span class='words_sep'> </span><span class='tstring_content'>msnbot</span><span class='words_sep'> </span><span class='tstring_content'>yahoobot</span><span class='words_sep'>}</span><span class='period'>.</span><span class='id include?'>include?</span><span class='lparen'>(</span><span class='id browser_name'>browser_name</span><span class='rparen'>)</span>
240
+ <span class='kw'>end</span></pre>
241
+ </td>
242
+ </tr>
243
+ </table>
244
+ </div>
245
+
246
+ <div class="method_details ">
247
+ <p class="signature " id="browser_name-instance_method">
248
+
249
+ - <strong>browser_name</strong>
250
+
251
+
252
+
253
+ </p><div class="docstring">
254
+ <div class="discussion">
255
+ <p>Returns the user agent string as determined by the plugin</p>
256
+
257
+ </div>
258
+ </div>
259
+ <div class="tags">
260
+
261
+ </div><table class="source_code">
262
+ <tr>
263
+ <td>
264
+ <pre class="lines">
265
+
266
+
267
+ 14
268
+ 15
269
+ 16
270
+ 17
271
+ 18
272
+ 19
273
+ 20
274
+ 21
275
+ 22
276
+ 23
277
+ 24
278
+ 25
279
+ 26
280
+ 27
281
+ 28
282
+ 29
283
+ 30
284
+ 31
285
+ 32
286
+ 33
287
+ 34
288
+ 35
289
+ 36
290
+ 37
291
+ 38
292
+ 39
293
+ 40
294
+ 41
295
+ 42
296
+ 43
297
+ 44
298
+ 45
299
+ 46
300
+ 47
301
+ 48</pre>
302
+ </td>
303
+ <td>
304
+ <pre class="code"><span class="info file"># File 'lib/browser_detect.rb', line 14</span>
305
+
306
+ <span class='kw'>def</span> <span class='id browser_name'>browser_name</span>
307
+ <span class='ivar'>@browser_name</span> <span class='op'>||=</span> <span class='kw'>begin</span>
308
+ <span class='kw'>if</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>msie</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>opera</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='op'>&amp;&amp;</span> <span class='op'>!</span><span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>webtv</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
309
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ie</span><span class='tstring_end'>'</span></span><span class='op'>+</span><span class='id ua'>ua</span><span class='lbracket'>[</span><span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>msie</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span><span class='op'>+</span><span class='int'>5</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id chr'>chr</span>
310
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>gecko/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
311
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>gecko</span><span class='tstring_end'>'</span></span>
312
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>opera</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
313
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>opera</span><span class='tstring_end'>'</span></span>
314
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>konqueror</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
315
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>konqueror</span><span class='tstring_end'>'</span></span>
316
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ipod</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
317
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ipod</span><span class='tstring_end'>'</span></span>
318
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ipad</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
319
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ipad</span><span class='tstring_end'>'</span></span>
320
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>iphone</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
321
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>iphone</span><span class='tstring_end'>'</span></span>
322
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>chrome/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
323
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>chrome</span><span class='tstring_end'>'</span></span>
324
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>applewebkit/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
325
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>safari</span><span class='tstring_end'>'</span></span>
326
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>googlebot/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
327
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>googlebot</span><span class='tstring_end'>'</span></span>
328
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>msnbot</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
329
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>msnbot</span><span class='tstring_end'>'</span></span>
330
+ <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>yahoo! slurp</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
331
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>yahoobot</span><span class='tstring_end'>'</span></span>
332
+ <span class='comment'>#Everything thinks it's mozilla, so this goes last
333
+ </span> <span class='kw'>elsif</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id index'>index</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>mozilla/</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
334
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>gecko</span><span class='tstring_end'>'</span></span>
335
+ <span class='kw'>else</span>
336
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>unknown</span><span class='tstring_end'>'</span></span>
337
+ <span class='kw'>end</span>
338
+
339
+ <span class='kw'>end</span>
340
+ <span class='kw'>end</span></pre>
341
+ </td>
342
+ </tr>
343
+ </table>
344
+ </div>
345
+
346
+ <div class="method_details ">
347
+ <p class="signature " id="browser_webkit_version-instance_method">
348
+
349
+ - <strong>browser_webkit_version</strong>
350
+
351
+
352
+
353
+ </p><div class="docstring">
354
+ <div class="discussion">
355
+ <p>Determine the version of webkit.
356
+ Useful for determing rendering capabilties</p>
357
+
358
+ </div>
359
+ </div>
360
+ <div class="tags">
361
+
362
+ </div><table class="source_code">
363
+ <tr>
364
+ <td>
365
+ <pre class="lines">
366
+
367
+
368
+ 52
369
+ 53
370
+ 54
371
+ 55
372
+ 56
373
+ 57
374
+ 58
375
+ 59
376
+ 60
377
+ 61
378
+ 62
379
+ 63</pre>
380
+ </td>
381
+ <td>
382
+ <pre class="code"><span class="info file"># File 'lib/browser_detect.rb', line 52</span>
383
+
384
+ <span class='kw'>def</span> <span class='id browser_webkit_version'>browser_webkit_version</span>
385
+ <span class='kw'>if</span> <span class='id browser_is?'>browser_is?</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>webkit</span><span class='tstring_end'>'</span></span>
386
+ <span class='id match'>match</span> <span class='op'>=</span> <span class='id ua'>ua</span><span class='period'>.</span><span class='id match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='regexp_beg'>%r{</span><span class='tstring_content'>\bapplewebkit/([\d\.]+)\b</span><span class='regexp_end'>}</span></span><span class='rparen'>)</span>
387
+ <span class='kw'>if</span> <span class='lparen'>(</span><span class='id match'>match</span><span class='rparen'>)</span>
388
+ <span class='id match'>match</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id to_f'>to_f</span>
389
+ <span class='kw'>else</span>
390
+ <span class='kw'>nil</span>
391
+ <span class='kw'>end</span>
392
+ <span class='kw'>else</span>
393
+ <span class='kw'>nil</span>
394
+ <span class='kw'>end</span>
395
+ <span class='kw'>end</span></pre>
396
+ </td>
397
+ </tr>
398
+ </table>
399
+ </div>
400
+
401
+ <div class="method_details ">
402
+ <p class="signature " id="ua-instance_method">
403
+
404
+ - <strong>ua</strong>
405
+
406
+
407
+
408
+ </p><div class="docstring">
409
+ <div class="discussion">
410
+ <p>Gather the user agent and store it for use.</p>
411
+
412
+ </div>
413
+ </div>
414
+ <div class="tags">
415
+
416
+ </div><table class="source_code">
417
+ <tr>
418
+ <td>
419
+ <pre class="lines">
420
+
421
+
422
+ 66
423
+ 67
424
+ 68
425
+ 69
426
+ 70
427
+ 71
428
+ 72</pre>
429
+ </td>
430
+ <td>
431
+ <pre class="code"><span class="info file"># File 'lib/browser_detect.rb', line 66</span>
432
+
433
+ <span class='kw'>def</span> <span class='id ua'>ua</span>
434
+ <span class='ivar'>@ua</span> <span class='op'>||=</span> <span class='kw'>begin</span>
435
+ <span class='id request'>request</span><span class='period'>.</span><span class='id env'>env</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>HTTP_USER_AGENT</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id downcase'>downcase</span>
436
+ <span class='kw'>rescue</span>
437
+ <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span>
438
+ <span class='kw'>end</span>
439
+ <span class='kw'>end</span></pre>
440
+ </td>
441
+ </tr>
442
+ </table>
443
+ </div>
444
+
445
+ </div>
446
+
447
+ </div>
448
+
449
+ <div id="footer">
450
+ Generated on Wed Nov 3 16:31:07 2010 by
451
+ <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
452
+ 0.6.1 (ruby-1.9.2).
453
+ </div>
454
+
455
+ </body>
456
+ </html>