unwind 0.2.1

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.
@@ -0,0 +1,361 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://j.mp/xZVND1
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ Accept-Encoding:
11
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
12
+ - none
13
+ Accept:
14
+ - "*/*"
15
+ User-Agent:
16
+ - Ruby
17
+ Host:
18
+ - j.mp
19
+ response:
20
+ status:
21
+ code: 301
22
+ message: Moved
23
+ headers:
24
+ Server:
25
+ - nginx
26
+ Date:
27
+ - Tue, 28 Jan 2014 05:45:13 GMT
28
+ Content-Type:
29
+ - text/html; charset=utf-8
30
+ Connection:
31
+ - keep-alive
32
+ Set-Cookie:
33
+ - _bit=52e743e9-00127-05f3a-431cf10a;domain=.j.mp;expires=Sun Jul 27 05:45:13
34
+ 2014;path=/; HttpOnly
35
+ Cache-Control:
36
+ - private; max-age=90
37
+ Location:
38
+ - http://t.co/8AEDlX2P
39
+ Mime-Version:
40
+ - '1.0'
41
+ Content-Length:
42
+ - '112'
43
+ body:
44
+ encoding: UTF-8
45
+ string: |-
46
+ <html>
47
+ <head>
48
+ <title>bit.ly</title>
49
+ </head>
50
+ <body>
51
+ <a href="http://t.co/8AEDlX2P">moved here</a>
52
+ </body>
53
+ </html>
54
+ http_version:
55
+ recorded_at: Tue, 28 Jan 2014 05:45:13 GMT
56
+ - request:
57
+ method: get
58
+ uri: http://t.co/8AEDlX2P
59
+ body:
60
+ encoding: US-ASCII
61
+ string: ''
62
+ headers:
63
+ Accept-Encoding:
64
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
65
+ - none
66
+ Accept:
67
+ - "*/*"
68
+ User-Agent:
69
+ - Ruby
70
+ Host:
71
+ - t.co
72
+ response:
73
+ status:
74
+ code: 301
75
+ message: Moved Permanently
76
+ headers:
77
+ Cache-Control:
78
+ - private,max-age=300
79
+ Content-Length:
80
+ - '0'
81
+ Date:
82
+ - Tue, 28 Jan 2014 05:45:14 GMT
83
+ Expires:
84
+ - Thu, 01-Jan-1970 00:00:00 GMT
85
+ Location:
86
+ - http://ow.ly/i/s1O0
87
+ Server:
88
+ - tfe
89
+ Set-Cookie:
90
+ - muc=1;Domain=t.co;Expires=Sun, 10-Jan-2016 05:45:14 GMT
91
+ body:
92
+ encoding: UTF-8
93
+ string: ''
94
+ http_version:
95
+ recorded_at: Tue, 28 Jan 2014 05:45:14 GMT
96
+ - request:
97
+ method: get
98
+ uri: http://ow.ly/i/s1O0
99
+ body:
100
+ encoding: US-ASCII
101
+ string: ''
102
+ headers:
103
+ Accept-Encoding:
104
+ - gzip;q=1.0,deflate;q=0.6,identity;q=0.3
105
+ - none
106
+ Accept:
107
+ - "*/*"
108
+ User-Agent:
109
+ - Ruby
110
+ Host:
111
+ - ow.ly
112
+ response:
113
+ status:
114
+ code: 200
115
+ message: OK
116
+ headers:
117
+ Date:
118
+ - Tue, 28 Jan 2014 05:45:14 GMT
119
+ Server:
120
+ - Apache/2.2.14 (Ubuntu)
121
+ X-Powered-By:
122
+ - PHP/5.3.2-1ubuntu4.22
123
+ Set-Cookie:
124
+ - OWLYSID=c8e1262b399c9151a80b68eafbd7bebf92540edd; path=/
125
+ Expires:
126
+ - Thu, 19 Nov 1981 08:52:00 GMT
127
+ Cache-Control:
128
+ - no-store, no-cache, must-revalidate, post-check=0, pre-check=0
129
+ Pragma:
130
+ - no-cache
131
+ X-Gridnum:
132
+ - '37'
133
+ Vary:
134
+ - Accept-Encoding
135
+ Content-Length:
136
+ - '5250'
137
+ Connection:
138
+ - close
139
+ Content-Type:
140
+ - text/html
141
+ body:
142
+ encoding: UTF-8
143
+ string: "<!DOCTYPE html>\r\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\"
144
+ lang=\"en\">\r\n<head prefix=\"og: http://ogp.me/ns# fb: http://ogp.me/ns/fb#
145
+ \ website: http://ogp.me/ns/website#\">\r\n\t<meta http-equiv=\"Content-Type\"
146
+ content=\"text/html; charset=utf-8\" />\r\n\t<title>Ow.ly - image uploaded
147
+ by @JZJewelry </title>\r\n\t<meta name=\"keywords\" content=\"Ow.ly, Shorten
148
+ urls, share files, track visits, twitter file sharing, twitter image sharing,
149
+ tweet comments\" />\r\n\t\t\t<meta name=\"description\" content=\"\" />\r\n\r\n\t\r\n\t\t\r\n\t\t<meta
150
+ name=\"twitter:card\" content=\"photo\">\r\n\t\t<meta name=\"twitter:site\"
151
+ content=\"\">\r\n\t\t<meta name=\"twitter:site:id\" content=\"\">\r\n\t\t<meta
152
+ name=\"twitter:creator\" content=\"\">\r\n\t\t<meta name=\"twitter:title\"
153
+ content=\"\">\r\n\r\n\t\t<meta name=\"twitter:app:name:iphone\" content=\"HootSuite\"/>\r\n\t\t<meta
154
+ name=\"twitter:app:id:iphone\" content=\"341249709\"/>\r\n\t\t<meta name=\"twitter:app:name:ipad\"
155
+ content=\"HootSuite\"/>\r\n\t\t<meta name=\"twitter:app:id:ipad\" content=\"341249709\"/>\r\n\t\t<meta
156
+ name=\"twitter:app:name:googleplay\" content=\"HootSuite\"/>\r\n\t\t<meta
157
+ name=\"twitter:app:id:googleplay\" content=\"com.hootsuite.droid.full\"/>\r\n\r\n\t\t<meta
158
+ property=\"fb:app_id\" content=\"183319479511\"> \t\t<meta property=\"og:type\"
159
+ content=\"article\">\r\n\t\t<meta property=\"og:url\" content=\"http://ow.ly/i/s1O0\">\r\n\t\t<meta
160
+ property=\"og:image\" content=\"http://static.ow.ly/photos/original/s1O0.png\">\r\n\t\t<meta
161
+ property=\"og:title\" content=\"Ow.ly - image uploaded by @JZJewelry \">\r\n\t\t<meta
162
+ property=\"og:description\" content=\"\">\r\n\t\t\t\t\t<meta property=\"og:image:width\"
163
+ content=\"327\">\r\n\t\t\t<meta property=\"og:image:height\" content=\"366\">\r\n\t\t
164
+ \ \r\n\t\t\t\t\t\t<link href=\"http://static.ow.ly/4-9-34/css/owly.gz.css\"
165
+ type=\"text/css\" rel=\"stylesheet\" />\r\n\t\t\t\t<!--[if lt IE 7]>\r\n\t<link
166
+ rel=\"stylesheet\" type=\"text/css\" href=\"http://static.ow.ly/4-9-34/css/ie6.css\"
167
+ />\r\n\t<![endif]-->\r\n\t<!--[if IE 7]>\r\n\t<link rel=\"stylesheet\" type=\"text/css\"
168
+ href=\"http://static.ow.ly/4-9-34/css/ie7.css\" />\r\n\t<![endif]-->\r\n\r\n\t\n<script
169
+ type=\"text/javascript\">\n\tvar owly = new Object();\n\towly.c = new Object();\n\towly.c.rootUrl
170
+ = \"http://ow.ly\";\n\towly.c.photoRootUrl = \"http://static.ow.ly/photos\";\n\towly.c.swfUrl
171
+ = \"http://static.ow.ly/4-9-34/swf\";\n</script>\n\n<script type='text/javascript'>\n\tvar
172
+ googletag = googletag || {};\n\tgoogletag.cmd = googletag.cmd || [];\n\t(function()
173
+ {\n\t\tvar gads = document.createElement('script');\n\t\tgads.async = true;\n\t\tgads.type
174
+ = 'text/javascript';\n\t\tvar useSSL = 'https:' == document.location.protocol;\n\t\tgads.src
175
+ = (useSSL ? 'https:' : 'http:') + '//www.googletagservices.com/tag/js/gpt.js';\n\t\tvar
176
+ node = document.getElementsByTagName('script')[0];\n\t\tnode.parentNode.insertBefore(gads,
177
+ node);\n\t})();\n\t\n\tgoogletag.cmd.push(function() {\n\t\tgoogletag.defineSlot('/5280035/OwlyImagesBanner',
178
+ [300, 250], 'div-gpt-ad-1329423447822-0').addService(googletag.pubads());\n\t\tgoogletag.pubads().enableSingleRequest();\n\t\tgoogletag.enableServices();\n\t});\n</script>\n\n\t\t\t<script
179
+ type=\"text/javascript\" src=\"http://static.ow.ly/4-9-34/js/owly.gz.js\"></script>\n\t\r\n\t<link
180
+ rel=\"shortcut icon\" href=\"http://static.ow.ly/4-9-34/images/favicon.ico\"
181
+ />\r\n\t<link rel=\"apple-touch-icon\" href=\"http://static.ow.ly/4-9-34/images/apple-touch-icon.png\"/>\r\n\t<script
182
+ src=\"//cdn.optimizely.com/js/196974338.js\"></script>\r\n</head>\r\n\r\n\r\n<body>\r\n<div
183
+ id=\"statusContainer\" style=\"display: none;\">\r\n\t<div class=\"y-n\">\r\n\t\t<span
184
+ class=\"cn-3\">\r\n\t\t\t<span class=\"tl\"><!-- --></span>\r\n\t\t\t<span
185
+ class=\"tc\"><!-- --></span>\r\n\t\t\t<span class=\"tr\"><!-- --></span>\r\n\t\t\t<span
186
+ class=\"ml\"><!-- --></span>\r\n\t\t\t<span class=\"mr\"><!-- --></span>\r\n\t\t\t<span
187
+ class=\"bl\"><!-- --></span>\r\n\t\t\t<span class=\"bc\"><!-- --></span>\r\n\t\t\t<span
188
+ class=\"br\"><!-- --></span>\r\n\t\t</span>\r\n\t\t<span class=\"_statusMsgContent\"></span>\r\n\t</div>\r\n</div>\r\n\r\n<div
189
+ id=\"wrapper\">\r\n\t<div id=\"header\">\r\n\t\t<h1 class=\"logo\"><a href=\"http://ow.ly\">Owly</a></h1>\r\n\t\t<div
190
+ id=\"globalNav\">\r\n\t\t\t\t\t\t\t\t\t\t<span id=\"btnLogin\" class=\"_twitterConnect
191
+ btn-sta\" typename=\"twitter\">\r\n\t\t\t\t\t<span class=\"icon-sn-16 twitter\"></span>&nbsp;&nbsp;<span
192
+ class=\"btn-text\">Sign in with Twitter</span>\r\n\t\t\t\t</span>\r\n\t\t\t\t<input
193
+ type=\"hidden\" id=\"loggedIn\" value=\"0\" />\r\n\t\t\t\t<input type=\"hidden\"
194
+ id=\"loggedInTwitterAccountId\" value=\"-1\" />\r\n\t\t\t\t\t</div>\r\n\t</div>\r\n\r\n\t<div
195
+ id=\"page\">\r\n\t\t<div id=\"primary\">\r\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"box
196
+ mediaBox last\">\r\n\t\t\t<div id=\"bar\">\r\n\t<div id=\"tools\">\r\n\t<!--<img
197
+ src=\"http://static.ow.ly/4-9-34/images/load.gif\" id=\"throbber\" />-->\r\n\t\t<a
198
+ href=\"#comments\" class=\"_localScroll _actionbarComment btn-sta comments\">\r\n\t\t\t<span
199
+ class=\"icon-19\"></span>&nbsp;&nbsp;<strong class=\"btn-text\">Comments</strong>
200
+ (<span class=\"_actionbarCommentCount\">...</span>)\r\n\t\t</a>\r\n\t\t<span
201
+ class=\"btn-sta\" onclick=\"expandBar('photo', 'panel-retweet',291);\">\r\n\t\t\t<span
202
+ class=\"icon-sn-16 twitter\"></span>&nbsp;&nbsp;<strong class=\"btn-text\">Tweet</strong>\r\n\t\t</span>\r\n\t\t<a
203
+ class=\"btn-sta share\" href=\"#\" title=\"Bookmark and Share\" onclick=\"expandBar('photo',
204
+ 'panel-share',291); return false;\">\r\n\t\t\t<span class=\"icon-19\"></span>&nbsp;&nbsp;<strong
205
+ class=\"btn-text\">Share</strong>\r\n\t\t</a>\r\n\t\t&nbsp;&nbsp;\r\n\t\t<span
206
+ class=\"rate\"><a class=\"icon rateUp\" href=\"#\" onclick=\"fileScoreClick('photo',
207
+ '6680128', 'up');return false;\"><span class=\"icon-19\"></span></a><a class=\"icon
208
+ rateDown\" href=\"#\" onclick=\"fileScoreClick('photo', '6680128', 'down');return
209
+ false;\"><span class=\"icon-19\"></span></a>\r\n\t\t\t<strong>Rate </strong><span
210
+ class=\"score\" id=\"fileScoreRatingNumber\">(<em>+1</em>)</span>\r\n\t\t</span>\r\n\t\t&nbsp;&nbsp;\r\n\t\t\t\t\t<!--
211
+ View Original is Photo only -->\r\n\t\t\t<a class=\"btn-sta magnify\" href=\"http://ow.ly/i/s1O0/original\"
212
+ title=\"View Original Size\">\r\n\t\t\t\t<span class=\"icon-19\"></span>&nbsp;&nbsp;<strong
213
+ class=\"btn-text\">Original Size</strong>\r\n\t\t\t</a>\r\n\t\t\t</div>\r\n</div>\r\n\r\n<input
214
+ id=\"shortUrl\" type=\"hidden\" value=\"http://ow.ly/i/s1O0\" />\r\n<input
215
+ id=\"hash\" type=\"hidden\" value=\"s1O0\" />\r\n<input id=\"defaultContent\"
216
+ type=\"hidden\" value=\"RT @JZJewelry: Screen shot 2012-02-09 at 4.54.43 AM.png
217
+ http://ow.ly/i/s1O0\" />\r\n<input id=\"username\" type=\"hidden\" value=\"JZJewelry\"
218
+ />\r\n\r\n<div id=\"panels\"></div>\r\n\r\n<script src=\"http://cdn.gigya.com/wildfire/js/wfapiv2.js\"></script>
219
+ \ <div class=\"imageWrapper\">\r\n \t<a href=\"http://ow.ly/i/s1O0/original\"
220
+ title=\"View original size\">\r\n <img src=\"http://static.ow.ly/photos/normal/s1O0.jpg\"
221
+ alt=\"Screen shot 2012-02-09 at 4.54.43 AM.png\" />\r\n </a>\r\n
222
+ \ </div>\r\n <div class=\"caption _tweetContent\">\r\n\t\t\t\t\t\t
223
+ \ </div>\r\n </div>\r\n<div class=\"mediaCredit\">\r\n <span class=\"icon
224
+ arrow-down\"><span class=\"icon-19\"></span></span>\r\n\t<a class=\"icon-plus
225
+ flag _flagPhoto\" href=\"#flagPhoto\">&nbsp;<span class=\"icon-12\"></span>Report
226
+ Abuse</a>\r\n <div class=\"avatar-48\">\r\n \t<a class=\"border\" href=\"http://ow.ly/user/JZJewelry\"
227
+ title=\"JZJewelry\">\r\n \t<img src=\"https://pbs.twimg.com/profile_images/1791733662/jzj-logo-01_TWITTER_4___2__normal.jpg\"
228
+ onerror=\"doAvatarSearch(this, 'JZJewelry')\" alt=\"JZJewelry\" />\r\n </a>\r\n
229
+ \ </div>\r\n <h3 class=\"username\"><a href=\"http://ow.ly/user/JZJewelry\"
230
+ title=\"JZJewelry\">JZJewelry</a></h3>\r\n <h4 class=\"postdate\">Posted
231
+ 719 days ago</h4>\r\n \r\n </div>\r\n\r\n\t\t<div class=\"listWrapper\">\r\n\t<a
232
+ name=\"comments\"></a>\r\n\t<div class=\"listTabs\">\r\n\t\t<div class=\"tab
233
+ active\">\r\n\t\t\t<a href=\"#\">Comments (<span class=\"_commentTabCount\">...</span>)</a>\r\n\t\t</div>\r\n\t\t\t</div>\r\n\t\r\n\t<div
234
+ class=\"listBoxes\">\r\n\t\t<div id=\"_comments\" class=\"listBox box\"> \r\n\t\t\t\t\t\t<div
235
+ class=\"item\"> \r\n\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"avatar-48\">\r\n\t\t\t\t\t\t<a
236
+ class=\"border\">\r\n\t\t\t\t\t\t\t<img src=\"../images/avatar_icon.jpg\"
237
+ alt=\"Default Avatar\" />\r\n\t\t\t\t\t\t</a>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<input
238
+ type=\"button\" id=\"btnLoginComment\" value=\"Login to Comment\" style=\"display:none\"
239
+ />\r\n\t\t\t\t\t\t\t\t<div class=\"comment new-comment\">\r\n\t\t\t\t\t<span
240
+ class=\"arrow-left\"><span class=\"icon-19\"></span></span>\r\n\t\t\t\t\t<div
241
+ class=\"message\"> \r\n\t\t\t\t\t\t<form id=\"formComment\" class=\"retweet
242
+ _commentForm\" action=\"\" method=\"get\" target=\"_blank\" onsubmit=\"return
243
+ submitComment();\">\r\n\t\t\t\t\t\t\t<strong>Tweet a comment:</strong> <span
244
+ class=\"disclaimer\">(Note: This will post to your Twitter account as a reply
245
+ to @JZJewelry)</span>\r\n\t\t\t\t\t\t\t<div class=\"txa c-u\" onclick=\"$('._commentForm
246
+ #commentContent').focus(); $(this).addClass('focus');\">\r\n\t\t\t\t\t\t\t\t@JZJewelry&#0133\t\t\t\t\t\t\t\t<textarea
247
+ name=\"comment[content]\" id=\"commentContent\" onblur=\"$('._commentForm
248
+ .txa').removeClass('focus');\"></textarea>\r\n\t\t\t\t\t\t\t\t&#0133http://ow.ly/i/s1O0\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<div
249
+ id=\"commentUploadSwf\" class=\"_commentUploader\"> \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
250
+ \r\n\t\t\t\t\t\t\t\t<a href=\"#\" class=\"_signInToUpload\"><strong>Sign in</strong></a>
251
+ \ to attach an image or document to your comment\r\n\t\t\t\t\t\t\t \r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<span
252
+ id=\"retweet-error\"></span>\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelType]\"
253
+ value=\"photo\" />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelId]\"
254
+ value=\"6680128\" />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelTwitterAccountId]\"
255
+ value=\"3658446\" />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelUsername]\"
256
+ value=\"JZJewelry\" />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelAvatar]\"
257
+ value=\"https://pbs.twimg.com/profile_images/1791733662/jzj-logo-01_TWITTER_4___2__normal.jpg\"
258
+ />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelTweetId]\"
259
+ value=\"\" />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[replyModelType]\"
260
+ />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[replyModelId]\"
261
+ />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[replyItemInfo]\"
262
+ />\r\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"comment[modelItemInfo]\"
263
+ value='http://static.ow.ly/photos/thumb/s1O0.jpg' />\r\n\t\t\t\t\t\t\t<div
264
+ class=\"sbt\">\r\n\t\t\t\t\t\t\t\t<input type=\"submit\" value=\"Send Tweet\"
265
+ />\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"clear\"></div>\r\n\t\t\t\t\t\t</form>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t</div>\r\n\t\t\r\n\t\t<div
266
+ class=\"_commentList\">\r\n\t\t\tLoading comments...<img src=\"../images/load.gif\"
267
+ alt=\"loading\" />\r\n\t\t</div>\r\n\t\t<a name=\"latestcomment\"></a>\r\n\t</div>\r\n\t</div>\r\n</div>\r\n<script
268
+ type=\"text/javascript\">\r\n\t$(document).ready(function() {\r\n\t\tif ($(\"._signInToUpload\").size()
269
+ > 0) {\r\n\t\t\t$(\"._signInToUpload\").click(function(e){\r\n\t\t\t\t$(\"#btnLogin\").click();\r\n\t\t\t\te.preventDefault();\r\n\t\t\t});\r\n\t\t}\r\n\t\tgetComments();\r\n\t});\r\n</script>\r\r\n\r\n\r\n<script
270
+ type=\"text/javascript\">\r\n\t$(document).ready(function(){\r\n\t\t$(\"a._flagPhoto\").bind(\"click\",
271
+ function(event) {\r\n\t\t\tflagFile('photo', 6680128, this);\r\n\t\t\tevent.preventDefault();\r\n\t\t});\r\n\t\t\r\n\t\t\t\t\t/*\r\n\t\t\tvar
272
+ searchTerm = \"http://ow.ly/i/s1O0\";\r\n\t\t\tvar hash = searchTerm.substring(searchTerm.lastIndexOf(\"/\")+1);\r\n\t\t\tgetTweetContentBySearch('JZJewelry',
273
+ owly.c.rootUrl +'/i ' + hash, true, $(\"._tweetContent\"), 'Screen shot 2012-02-09
274
+ at 4.54.43 AM.png');\r\n\t\t\t*/\r\n\t\t\tsearchOriginalTweet('photo', '6680128',
275
+ $(\"._tweetContent\"), 'Screen shot 2012-02-09 at 4.54.43 AM.png');\r\n\t\t\t\r\n\r\n\t\t$('.imageWrapper').bind(\"contextmenu\",function(e){\r\n\t\t\treturn
276
+ false;\r\n\t\t});\r\n\r\n\t});\r\n\t\r\n\t\r\n</script>\r\t\t</div>\r\n\t\t<!--
277
+ only show sidebar if not viewing original size -->\r\n\t\t\t\t\t<div id=\"secondary\">\r\n\t\t\t\t\t\t\t\t<div
278
+ class=\"adbox\">\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div id='div-gpt-ad-1329423447822-0'
279
+ style='width:300px; height:250px;'>\r\n\t\t\t\t\t\t<script type='text/javascript'>googletag.cmd.push(function()
280
+ { googletag.display('div-gpt-ad-1329423447822-0'); });</script>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<!--
281
+ embed info -->\r\n\t\t\t\t\t<div id=\"embed\">\r\n\t\t\t\t\t\t<div class=\"box\">\r\n\t\t\t\t\t\t\t<div
282
+ class=\"innerBorder\">\r\n\t\t\t\t\t\t\t<label class=\"title\"><strong>Direct
283
+ Link:</strong></label>\r\n\t\t\t\t\t\t\t\t<div class=\"ipt\">\r\n\t\t\t\t\t\t\t\t<input
284
+ type=\"text\" onclick=\"this.focus(); this.select();\" value=\"http://ow.ly/i/s1O0\"
285
+ />\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<div
286
+ class=\"listWrapper\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"listTabs\">\r\n\t\t\t\t\t\t\t\t\t<div
287
+ class=\"tab active\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" rel=\"_smallThumb\">Thumbnail</a>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div
288
+ class=\"tab\">\r\n\t\t\t\t\t\t\t\t\t\t<a href=\"#\" rel=\"_fullThumb\">Full
289
+ Image</a>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t<div
290
+ class=\"listBoxes\">\r\n\t\t\t\t\t\t\t\t\t<div id=\"_smallThumb\" class=\"listBox
291
+ box\">\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"innerBorder\">\r\n\t\t\t\t\t\t\t\t\t\t\t<div
292
+ class=\"ipt\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<input type=\"text\" onclick=\"this.focus();
293
+ this.select();\" value='<a href=\"http://ow.ly/i/s1O0\" target=\"_blank\"><img
294
+ src=\"http://static.ow.ly/photos/thumb/s1O0.jpg\" alt=\"Owly Images\" /></a>'
295
+ />\r\n\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t<div
296
+ id=\"_fullThumb\" class=\"listBox box\" style=\"display: none;\">\r\n\r\n\t\t\t\t\t\t\t\t\t\t<div
297
+ class=\"innerBorder\">\r\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"ipt\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t<input
298
+ type=\"text\" onclick=\"this.focus(); this.select();\" value='<a href=\"http://ow.ly/i/s1O0\"
299
+ target=\"_blank\"><img src=\"http://static.ow.ly/photos/normal/s1O0.jpg\"
300
+ alt=\"Owly Images\" /></a>' />\r\n\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<!--
301
+ photo info -->\r\n\t\t\t\t\t\t\t\t\t\t\t<!-- no photo info -->\r\n\t\t\t\t\t\t\t\t\t\t<!--
302
+ more-by-this-user info -->\r\n\t\t\t\t\t\t\t\t\t\t\t<div class=\"thumbs box\">\r\n\t\t\t\t\t\t<div
303
+ class=\"innerBorder\">\r\n\t\t\t\t\t\t\t<p class=\"title\">\r\n\t\t\t\t\t\t\t\t<a
304
+ class=\"more\" href=\"http://ow.ly/user/JZJewelry\"><strong>See All &raquo;</strong></a>\r\n\t\t\t\t\t\t\t\t<strong>More
305
+ photos from JZJewelry</strong>\r\n\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div
306
+ class=\"thumb-77\">\r\n\t\t\t\t\t\t\t\t<a class=\"border\" href=\"http://ow.ly/i/3dks9\"
307
+ title=\"Screen shot 2013-09-20 at 2.08.51 PM.png\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img
308
+ src=\"http://static.ow.ly/photos/thumb/3dks9.jpg\" alt=\"Screen shot 2013-09-20
309
+ at 2.08.51 PM.png\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div
310
+ class=\"thumb-77\">\r\n\t\t\t\t\t\t\t\t<a class=\"border\" href=\"http://ow.ly/i/3b5i3\"
311
+ title=\"Screen shot 2013-09-15 at 11.42.05 PM.png\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img
312
+ src=\"http://static.ow.ly/photos/thumb/3b5i3.jpg\" alt=\"Screen shot 2013-09-15
313
+ at 11.42.05 PM.png\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div
314
+ class=\"thumb-77\">\r\n\t\t\t\t\t\t\t\t<a class=\"border\" href=\"http://ow.ly/i/383VF\"
315
+ title=\"image_3.jpeg\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img src=\"http://static.ow.ly/photos/thumb/383VF.jpg\"
316
+ alt=\"image_3.jpeg\" />\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t</a>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div
317
+ style=\"margin-bottom:10px;\">\r\n\t\t\t\t\t<a href=\"http://hootsuite.com\"
318
+ target=\"_blank\"><img src=\"http://static.ow.ly/4-9-34/images/hootsuite_promo.jpg\"
319
+ alt=\"HootSuite\" title=\"HootSuite\" /></a>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div
320
+ class=\"advertisment last\">\r\n\t\t\t\t\t<!-- VideoEgg tag --><!--\r\n\t\t\t\t\t<script>\r\n\t\t\t\t\t\tvar
321
+ ve_publisher = \"Owly\";\r\n\t\t\t\t\t\tvar ve_site = \"OW_LY\";\r\n\t\t\t\t\t\tvar
322
+ ve_area = \"OW_LY\";\r\n\t\t\t\t\t\tvar ve_location = \"OW_LY_PICTURE_300X600\";\r\n\t\t\t\t\t\tvar
323
+ ve_placement = \"OTHER_picture\";\r\n\t\t\t\t\t\tvar ve_width = 300;\r\n\t\t\t\t\t\tvar
324
+ ve_height = 600;\r\n\t\t\t\t\t\tvar ve_alternate = \"collapse\";\r\n\t\t\t\t\t\tdocument.write(\"<script
325
+ src='http://core.videoegg.com/eap/html/js/init.js?\"+Math.random()+\"'></sc\"+\"ript>\");\r\n\t\t\t\t\t</script>\r\n\t\t\t\t\t--><!--
326
+ end VideoEgg tag -->\r\n\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t</div>\r\n\r\n\t<div
327
+ id=\"footer\">\r\n\t\t&copy; 2009-2013 ow.ly - <a href=\"http://ow.ly/privacy\">Privacy
328
+ Policy</a> | <a href=\"http://ow.ly/copyright\">Copyright Policy</a> | <a
329
+ href=\"http://ow.ly/terms\">Terms of Service</a> | <a class=\"fdbk\" target=\"_blank\"
330
+ href=\"http://getsatisfaction.com/hootsuite/products/hootsuite_owly\">Feedback</a>\r\n\t</div>\r\n\r\n\t<div
331
+ id=\"userMessage\">\r\n\t</div>\r\n\r\n</div>\r\n\r\n\r\n<script type=\"text/javascript\">\r\n\t$(document).ready(function()
332
+ {\r\n\t\t// convert all relative dates\r\n\t\t$(\"._relativeDate\").each(function()
333
+ {\r\n\t\t\tthis.innerHTML = getRelativeTime(this.innerHTML);\r\n\t\t\t$(this).css(\"visibility\",
334
+ \"visible\");\r\n\t\t});\r\n\r\n\t\t// bind url \"copy to clipboard\" textboxes\r\n\t\t$(\"input._copyUrl\").bind(\"click\",
335
+ function() {\r\n\t\t\tthis.focus();\r\n\t\t\tthis.select();\r\n\t\t});\r\n\r\n\t\t//
336
+ bind all local scroll links\r\n\t\t$(\"._localScroll\").live(\"click\", function(e)
337
+ {\r\n\t\t\tvar href = $(this).attr(\"href\");\r\n\t\t\tvar name = href.substring(href.indexOf(\"#\")+1);\r\n\t\t\tscrollToAnchor(name);\r\n\t\t\te.preventDefault();\r\n\t\t});\r\n\r\n\r\n\t\t\t\t\t//
338
+ popauth\r\n\t\t\tvar p = new popauth(\"twitter\", '/ajax/twitter/get-auth-url',
339
+ function(e, ot, ov) {\r\n\t\t\t\t$.getJSON('/ajax/twitter/get-access-token?ot='+ot+'&ov='+ov,
340
+ function(data) {\r\n\t\t\t\t\tif (data.success) {\r\n\t\t\t\t\t\tsetTimeout(function(){
341
+ window.location = window.location; }, 0.1);\t// refresh\r\n\t\t\t\t\t} else
342
+ {\r\n\t\t\t\t\t\tdisplayUserMessage(\"Login failed, please try again\");\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t\t//
343
+ bind button\r\n\t\t\t$(\"#btnLogin\").bind(\"click\", function(e) {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tp.start();\t//
344
+ start auth\r\n\t\t\t});\r\n\r\n\t\t\r\n\t\t$('.listTabs .tab a').click(function(e)
345
+ {\r\n\t\t\tif (!$(this).closest('.listTabs').hasClass('_nonAjax')) {\r\n\t\t\t\tif($(this).attr('rel')
346
+ && $('#'+$(this).attr('rel')).length) {\r\n\t\t\t\t$(this).closest('.listTabs').find('.active').removeClass('active');\r\n\t\t\t\t$(this).parent().addClass('active');\r\n\t\t\t\t$(this).closest('.listWrapper').find('.listBoxes
347
+ .listBox').hide();\r\n\t\t\t\t\tvar target = $(this).attr('rel');\r\n\t\t\t\t\t$('#'+target).show();\r\n\t\t\t\t}\r\n\t\t\t\te.preventDefault();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t$.preloadImages
348
+ = function() {\r\n\t\t\tfor (var i = 0; i<arguments.length; i++) {\r\n\t\t\t\timg
349
+ = new Image();\r\n\t\t\t\timg.src = arguments[i];\r\n\t\t\t}\r\n\t\t}\r\n\t\t$.preloadImages(\r\n\t\t\t'http://static.ow.ly/4-9-34/images/new/maps/map-12-hover.png',\r\n\t\t\t'http://static.ow.ly/4-9-34/images/new/maps/map-12-active.png',\r\n\t\t\t'http://static.ow.ly/4-9-34/images/new/maps/map-19-hover.png',\r\n\t\t\t'http://static.ow.ly/4-9-34/images/new/maps/map-19-active.png',\r\n\t\t\t'http://static.ow.ly/4-9-34/images/new/maps/map-73-hover.png',\r\n\t\t\t'http://static.ow.ly/4-9-34/images/new/maps/map-73-active.png'\r\n\t\t);\r\n\t});\r\n</script>\r\n\r\n\t<script
350
+ type=\"text/javascript\">\r\n\t\tvar _gaq = _gaq || [];\r\n\t\t_gaq.push(['_setAccount',
351
+ 'UA-51223-22']);\r\n\t\t_gaq.push(['_trackPageview']);\r\n\r\n\t\t(function()
352
+ {\r\n\t\t\tvar ga = document.createElement('script'); ga.type = 'text/javascript';
353
+ ga.async = true;\r\n\t\t\tga.src = ('https:' == document.location.protocol
354
+ ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r\n\t\t\tvar
355
+ s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga,
356
+ s);\r\n\t\t})();\r\n\t</script>\r\n\t<script type=\"text/javascript\">\r\n\t\ttry
357
+ {\r\n\t\t\tvar pageTracker = _gat._getTracker(\"UA-51223-22\");\r\n\t\t\tpageTracker._trackPageview();\r\n\t\t}
358
+ catch(err) {}\r\n\t</script>\r\n</body>\r\n</html>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r"
359
+ http_version:
360
+ recorded_at: Tue, 28 Jan 2014 05:45:15 GMT
361
+ recorded_with: VCR 2.8.0
metadata ADDED
@@ -0,0 +1,138 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: unwind
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.1
5
+ platform: ruby
6
+ authors:
7
+ - Scott Watermasysk
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-01-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '10.1'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '10.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '5.2'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: '5.2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: vcr
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '2.8'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '2.8'
55
+ - !ruby/object:Gem::Dependency
56
+ name: webmock
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '1.17'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ~>
67
+ - !ruby/object:Gem::Version
68
+ version: '1.17'
69
+ - !ruby/object:Gem::Dependency
70
+ name: addressable
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '2.2'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: '2.2'
83
+ description: "\t\t\t\t\t\t\t\t\t\tFollows a chain of redirects and reports back on
84
+ all the steps. \n\t\t\t\t\t\t\t\t\t\tHeavily inspired by John Nunemaker's blog post.\n\t\t\t\t\t\t\t\t\t\thttp://railstips.org/blog/archives/2009/03/04/following-redirects-with-nethttp/\n"
85
+ email:
86
+ - scottwater@gmail.com
87
+ executables: []
88
+ extensions: []
89
+ extra_rdoc_files: []
90
+ files:
91
+ - .gitignore
92
+ - Gemfile
93
+ - Rakefile
94
+ - Readme.md
95
+ - example/sample.rb
96
+ - lib/unwind.rb
97
+ - lib/unwind/version.rb
98
+ - test/redirect_follower_test.rb
99
+ - unwind.gemspec
100
+ - vcr_cassettes/amazon.yml
101
+ - vcr_cassettes/canonical_url.yml
102
+ - vcr_cassettes/meta_refresh.yml
103
+ - vcr_cassettes/missing_redirect.yml
104
+ - vcr_cassettes/no_redirect.yml
105
+ - vcr_cassettes/pdf.yml
106
+ - vcr_cassettes/relative_canonical_url.yml
107
+ - vcr_cassettes/relative_meta_refresh.yml
108
+ - vcr_cassettes/relative_stackoverflow.yml
109
+ - vcr_cassettes/relative_stackoverflow_2.yml
110
+ - vcr_cassettes/ssl_tpope.yml
111
+ - vcr_cassettes/with_cookie.yml
112
+ - vcr_cassettes/xZVND1.yml
113
+ homepage: http://www.scottw.com/unwind
114
+ licenses:
115
+ - MIT
116
+ metadata: {}
117
+ post_install_message:
118
+ rdoc_options: []
119
+ require_paths:
120
+ - lib
121
+ required_ruby_version: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ required_rubygems_version: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - '>='
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ requirements: []
132
+ rubyforge_project: unwind
133
+ rubygems_version: 2.2.1
134
+ signing_key:
135
+ specification_version: 4
136
+ summary: Follows a chain redirects.
137
+ test_files:
138
+ - test/redirect_follower_test.rb