worth_watching 0.0.3 → 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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e35fd2e5e42565ad5098cfba862e9416a45201d1
4
+ data.tar.gz: d6bb20f5f5d8ce4b1a2282057c1e937df33930cc
5
+ SHA512:
6
+ metadata.gz: 67b77513e14d79377de17e6538500ca0f9d8061afdc975f4912f6f5474f185aa448ff5b803c9870b7b73f0a91529f59c7466cbed15a8abf965d52a178a1c83f9
7
+ data.tar.gz: 185fd25dbff8bc88d45a93aa8b082c53d299daf9d564d2a0ddcbfc2ef0839562e922d9765aeec8d0e373ab3063eaccb0cf2a7b0b2359ebdd451ddcef62a71393
data/.rspec CHANGED
@@ -1 +1,2 @@
1
- --COLOR
1
+ --color
2
+ --format documentation
data/README.md CHANGED
@@ -29,7 +29,7 @@ Or install it yourself as:
29
29
 
30
30
  ```ruby
31
31
  # Create a new aggregator
32
- movie_aggregator = WorthWatching::Aggregator.new
32
+ movie_aggregator = WorthWatching::Aggregator.new("rotten_tomatoes_api_key", "tmdb_api_key")
33
33
 
34
34
  # Search for movie by Rotten Tomatoes ID
35
35
  toy_story_3 = movie_aggregator.movie_info('770672122')
@@ -69,4 +69,4 @@ critic_review.quote
69
69
  2. Create your feature branch (`git checkout -b my-new-feature`)
70
70
  3. Commit your changes (`git commit -am 'Add some feature'`)
71
71
  4. Push to the branch (`git push origin my-new-feature`)
72
- 5. Create new Pull Request
72
+ 5. Create new Pull Request
@@ -9,12 +9,11 @@ module WorthWatching
9
9
 
10
10
  RT_API_BASE_URL = 'http://api.rottentomatoes.com/api/public/v1.0'
11
11
  TMDB_API_BASE_URL = 'http://api.themoviedb.org/3'
12
-
12
+
13
13
  # Initialize a new Aggregator object to retrieve movie info
14
- def initialize
15
- config = YAML.load_file('config/config.yml')
16
- @rt_api_key = config['rt_api_key']
17
- @tmdb_api_key = config['tmdb_api_key']
14
+ def initialize(rt_api_key, tmdb_api_key)
15
+ @rt_api_key = rt_api_key
16
+ @tmdb_api_key = tmdb_api_key
18
17
  end
19
18
 
20
19
  # Retrieve the details of a specific movie using its IMDB ID
@@ -23,6 +22,7 @@ module WorthWatching
23
22
  def movie_info(rt_id)
24
23
  uri = "#{RT_API_BASE_URL}/movies/#{rt_id}.json?apikey=#{rt_api_key}"
25
24
  movie_hash = HTTParty.get(uri)
25
+
26
26
  aggregate(Movie.new(movie_hash))
27
27
  end
28
28
 
@@ -63,7 +63,7 @@ module WorthWatching
63
63
 
64
64
  movie.imdb_rating = extra_info[:imdb_rating]
65
65
  movie.metacritic_rating = extra_info[:metacritic_rating]
66
- movie.metacritic_url = extra_info[:metacritic_url]
66
+ movie.metacritic_url = extra_info[:metacritic_url]
67
67
 
68
68
  movie.poster = get_poster(movie.imdb_id)
69
69
  movie.reviews = get_reviews(movie.rt_id)
@@ -96,45 +96,54 @@ module WorthWatching
96
96
  extra_info[:metacritic_url] = imdb_mc_page.css(".see-more .offsite-link")[0]["href"]
97
97
  else
98
98
  extra_info[:metacritic_rating] = "No Rating"
99
- extra_info[:metacritic_url] = "No URL"
99
+ extra_info[:metacritic_url] = "No URL"
100
100
  end
101
-
101
+
102
102
  return extra_info
103
103
  end
104
104
 
105
- # TEMPORARY METHOD NAME. Horrible name, I know.
106
105
  def get_extra_info_via_omdb(imdb_id)
107
106
  extra_info = {}
108
- omdb_response = HTTParty.get("http://www.omdbapi.com/?i=tt#{imdb_id}&r=xml")
107
+ omdb_response = HTTParty.get("http://www.omdbapi.com/?i=tt#{imdb_id}")
109
108
 
110
- if omdb_response["root"]["response"] == "True"
111
- imdb_rating = omdb_response["root"]["movie"]["imdbRating"]
112
- movie_title = omdb_response["root"]["movie"]["title"]
109
+ if omdb_response["Response"] == "True"
110
+ imdb_rating = omdb_response["imdbRating"]
111
+ movie_title = omdb_response["Title"]
113
112
 
114
- # Extract Metacritic rating (IMDB has a page listing MC reviews)
115
- metacritic_page = Nokogiri::HTML(open("http://www.metacritic.com/search/"\
116
- "movie/#{CGI.escape(movie_title)}/results"))
117
- mc_rating = metacritic_page.css('.first_result .metascore').text
118
- mc_link = "http://www.metacritic.com#{metacritic_page.at_css('.first_result a').attr(:href)}"
113
+ mc_info = scrape_metacritic_info(movie_title)
114
+
115
+ mc_rating = mc_info[:mc_rating]
116
+ mc_link = mc_info[:mc_url]
119
117
  else
120
118
  imdb_rating = "Unavailable"
121
119
  end
122
120
 
123
121
  # Extract IMDB rating
124
- extra_info[:imdb_rating] =imdb_rating
122
+ extra_info[:imdb_rating] = imdb_rating
125
123
 
126
124
  if mc_rating != ""
127
125
  extra_info[:metacritic_rating] = mc_rating
128
126
  extra_info[:metacritic_url] = mc_link
129
127
  else
130
128
  extra_info[:metacritic_rating] = "Unavailable"
131
- extra_info[:metacritic_url] = "No URL"
129
+ extra_info[:metacritic_url] = "No URL"
132
130
  end
133
-
131
+
134
132
  return extra_info
135
133
  end
136
134
 
135
+ # Scrapes the metacritic rating and URL, returning a hash containing the info
136
+ def scrape_metacritic_info(movie_title)
137
+ mc_info = {}
137
138
 
139
+ # Extract Metacritic rating (IMDB has a page listing MC reviews)
140
+ metacritic_page = Nokogiri::HTML(open("http://www.metacritic.com/search/"\
141
+ "movie/#{CGI.escape(movie_title)}/results"))
142
+ mc_info[:mc_rating] = metacritic_page.css('.first_result .metascore_w').text
143
+ mc_info[:mc_url] = "http://www.metacritic.com#{metacritic_page.at_css('.first_result a').attr(:href)}"
144
+
145
+ return mc_info
146
+ end
138
147
 
139
148
  # Retrieves the URL of a high resolution poster of a movie
140
149
  # @params imdb_id [String] the IMDb ID of the required movie (without 'tt' prefixed)
@@ -143,7 +152,7 @@ module WorthWatching
143
152
  uri = "#{TMDB_API_BASE_URL}/movie/tt#{imdb_id}?api_key=#{tmdb_api_key}"
144
153
  movie_info = HTTParty.get(uri, :headers => { 'Accept' => 'application/json'})
145
154
 
146
- if movie_info.has_key?("poster_path")
155
+ if movie_info.has_key?("poster_path")
147
156
  "http://cf2.imgobject.com/t/p/original" + movie_info["poster_path"]
148
157
  else
149
158
  "No poster available"
@@ -154,10 +163,10 @@ module WorthWatching
154
163
  uri = "#{RT_API_BASE_URL}/movies/#{rt_id}/reviews.json?review_type=top_critic"\
155
164
  "&page_limit=5&page=1&country=uk&apikey=#{rt_api_key}"
156
165
  review_hash = HTTParty.get(uri)
157
-
166
+
158
167
  review_list = []
159
168
 
160
- review_hash["reviews"].each do |review|
169
+ review_hash["reviews"].each do |review|
161
170
  review_list << WrittenReview.new(review)
162
171
  end
163
172
 
@@ -185,17 +194,16 @@ module WorthWatching
185
194
  has_imdb_id = !movie["alternate_ids"]["imdb"].empty?
186
195
  end
187
196
  end
188
-
189
- return has_release_date && has_imdb_id
197
+ return has_release_date && has_imdb_id
190
198
  end
191
199
 
192
200
  # Removes movies from an array that do no have the required rating information
193
201
  # @param movie_list [Array] the list to clean up
194
202
  # @return [Array] the pruned list of movies
195
203
  def self.clean_up(movie_list)
196
- movie_list.delete_if do |movie|
204
+ movie_list.delete_if do |movie|
197
205
  movie.metacritic_rating == "No Rating"
198
206
  end
199
207
  end
200
208
  end
201
- end
209
+ end
@@ -3,17 +3,17 @@ require 'date'
3
3
  module WorthWatching
4
4
  class Movie
5
5
  attr_accessor :title, :plot, :director, :genre, :rt_rating, :rt_url, :cast,
6
- :imdb_rating, :imdb_url, :metacritic_rating, :metacritic_url,
6
+ :imdb_rating, :imdb_url, :metacritic_rating, :metacritic_url,
7
7
  :release_date, :poster, :rt_id, :imdb_id, :reviews
8
8
 
9
- def initialize(movie_params)
9
+ def initialize(movie_params)
10
10
  @title = movie_params['title']
11
11
  @plot = movie_params['synopsis']
12
12
  @director = movie_params['abridged_directors'][0]['name']
13
13
  @genre = movie_params['genres'][0]
14
14
  @rt_rating = movie_params['ratings']['critics_score']
15
15
  @rt_url = movie_params['links']['alternate']
16
- @cast = extract_cast(movie_params['abridged_cast'])
16
+ @cast = build_cast_list(movie_params['abridged_cast'])
17
17
  @imdb_id = movie_params['alternate_ids']['imdb']
18
18
  @imdb_url = "http://www.imdb.com/title/tt#{imdb_id}/"
19
19
  @release_date = Date.parse(movie_params['release_dates']['theater'])
@@ -22,14 +22,14 @@ module WorthWatching
22
22
 
23
23
  private
24
24
 
25
- def extract_cast(cast)
26
- cast_list = ""
27
- # Extract the first 4 actors, formatting with a comma when necessary
28
- cast[0..3].each_with_index do |actor, i|
29
- actor = (i < 3) ? "#{actor['name']}, " : "#{actor['name']}"
30
- cast_list << actor
25
+ # Builds a cast list string from an array of actor names (up to 4 actors)
26
+ def build_cast_list(cast)
27
+ cast_list = cast[0..3].inject("") do |cast_list_string, actor, i|
28
+ cast_list_string << "#{actor["name"]}, "
31
29
  end
32
- return cast_list
30
+
31
+ # Remove the trailing comma
32
+ cast_list.sub(/, \z/, "")
33
33
  end
34
34
  end
35
- end
35
+ end
@@ -1,3 +1,3 @@
1
1
  module WorthWatching
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
@@ -0,0 +1,1276 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
2
+ "http://www.w3.org/TR/html4/strict.dtd">
3
+ <html xmlns:og="http://opengraphprotocol.org/schema/"
4
+ xmlns:fb="http://ogp.me/ns/fb#">
5
+ <head>
6
+ <script type="text/javascript">var NREUMQ=NREUMQ||[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script>
7
+ <title>Toy Story 3 - Reviews, Articles, People, Trailers and more at Metacritic - Metacritic</title>
8
+
9
+
10
+
11
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
12
+
13
+
14
+ <meta name="description" content="Search results for Toy Story 3 at Metacritic.com">
15
+
16
+
17
+
18
+ <meta name="viewport" content="width=1024" />
19
+
20
+
21
+
22
+ <meta name="robots" content="NOINDEX, FOLLOW">
23
+
24
+
25
+
26
+ <meta name="application-name" content="Metacritic"/>
27
+ <meta name="msapplication-TileColor" content="#000000"/>
28
+ <meta name="msapplication-TileImage" content="/images/win8tile/76bf1426-2886-4b87-ae1c-06424b6bb8a2.png"/>
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+ <link rel="stylesheet" href="/css/global.min.1395685624.css" type="text/css">
38
+ <link rel="stylesheet" href="/css/search/base.min.1395685526.css" type="text/css">
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+ <script type="text/javascript" src="/js/global.min.1395685624.js"></script>
50
+
51
+
52
+ <script type="text/javascript">
53
+
54
+ var googletag = googletag || {};
55
+ googletag.cmd = googletag.cmd || [];
56
+ var metac_g_ads_pushdisplay = metac_g_ads_pushdisplay || [];
57
+ (function() {
58
+ var gads = document.createElement('script');
59
+ gads.async = true;
60
+ gads.type = 'text/javascript';
61
+ var useSSL = 'https:' == document.location.protocol;
62
+ gads.src = (useSSL ? 'https:' : 'http:') +'//www.googletagservices.com/tag/js/gpt.js';
63
+ var node = document.getElementsByTagName('script')[0];
64
+ node.parentNode.insertBefore(gads, node);
65
+ })();
66
+
67
+ </script>
68
+
69
+ <script type="text/javascript">
70
+
71
+ (function(d,c){var a,b,g,e;a=d.createElement("script");a.type="text/javascript";
72
+ a.async=!0;a.src=("https:"===d.location.protocol?"https:":"http:")+
73
+ '//api.mixpanel.com/site_media/js/api/mixpanel.2.js';b=d.getElementsByTagName("script")[0];
74
+ b.parentNode.insertBefore(a,b);c._i=[];c.init=function(a,d,f){var b=c;
75
+ "undefined"!==typeof f?b=c[f]=[]:f="mixpanel";g=['disable','track','track_pageview',
76
+ 'track_links','track_forms','register','register_once','unregister','identify',
77
+ 'name_tag','set_config'];
78
+ for(e=0;e<g.length;e++)(function(a){b[a]=function(){b.push([a].concat(
79
+ Array.prototype.slice.call(arguments,0)))}})(g[e]);c._i.push([a,d,f])};window.mixpanel=c}
80
+ )(document,[]);
81
+
82
+ var mixpanelDistinctId = "1450e733d774ea-023cd605-1815425d-1fa400-1450e733d78886";
83
+ mixpanel.init("6e219fd5dbf2cb77082a6cebb50b01a5");
84
+ </script>
85
+
86
+ <script>
87
+ MC_USER_LOGGED_IN = false;
88
+ </script>
89
+ </head>
90
+ <body>
91
+ <div id="site_layout">
92
+ <div id="masthead">
93
+
94
+
95
+ <div id="masthead_primary">
96
+ <div class="masthead_wrap">
97
+ <div class="logo">
98
+ <a href="http://www.metacritic.com">
99
+ <img src="http://static.metacritic.com/images/layout/mc_logo_inverted.png">
100
+ </a>
101
+ </div>
102
+ <div class="masthead_search">
103
+ <div class="search basic_search has_adv_search_link">
104
+ <div class="search_section basic_search_section">
105
+ <form class="search" method="post" action="/search">
106
+ <fieldset>
107
+ <legend>Basic Search Fields</legend>
108
+ <div class="search_wrap">
109
+
110
+ <ol class="fields search_fields">
111
+
112
+ <li class="field search_field search_query">
113
+ <div class="field_wrap">
114
+ <span class="field">
115
+ <input class="text" type="text" size="50" name="search_term" id="masthead_search_term" tabindex="1" value="Toy Story 3" autocomplete="off" />
116
+ </span>
117
+ <span class="search_msg">
118
+ Search Metacritic
119
+ </span>
120
+ </div>
121
+ </li>
122
+ <li class="field search_field search_submit">
123
+ <div class="submit"><div class="btn"><button class="submit" type="submit"><span>Search</span></button></div></div>
124
+ </li>
125
+ <li class="field hidden">
126
+ <input type="hidden" name="search_filter" value="movie" />
127
+ </li>
128
+ </ol>
129
+ </div>
130
+ </fieldset>
131
+ </form>
132
+ </div>
133
+
134
+
135
+
136
+
137
+
138
+
139
+
140
+
141
+
142
+ </div>
143
+ </div>
144
+
145
+
146
+ <div id="primary_nav">
147
+ <ul class="nav_items primary_nav">
148
+ <li class="nav nav_movies has_menu_set">
149
+ <span class="nav_item menu_hover_toggler">
150
+ <span class="nav_item_wrap">
151
+ <a href="http://www.metacritic.com/movie">
152
+ <span class="nav_text">Movies</span>
153
+ </a>
154
+ <span class="menu_click_toggler">&raquo;</span>
155
+ </span>
156
+ </span>
157
+ <div id="primary_nav_movies_menu" class="menu_items primary_nav_menu">
158
+ <ul class="menu_items">
159
+ <li class="menu_item">
160
+ <a href="http://www.metacritic.com/browse/movies/release-date/theaters/date">In Theaters</a>
161
+ </li>
162
+ <li class="menu_item">
163
+ <a href="http://www.metacritic.com/browse/dvds/release-date/new-releases/date">DVD / Blu Ray</a>
164
+ </li>
165
+ <li class="menu_item">
166
+ <a href="http://www.metacritic.com/browse/movies/release-date/coming-soon/date">Coming Soon</a>
167
+ </li>
168
+ </ul>
169
+ </div>
170
+ </li>
171
+ <li class="nav nav_games has_menu_set">
172
+ <span class="nav_item menu_hover_toggler">
173
+ <span class="nav_item_wrap">
174
+ <a href="http://www.metacritic.com/game">
175
+ <span class="nav_text">Games</span>
176
+ </a>
177
+ <span class="menu_click_toggler">&raquo;</span>
178
+ </span>
179
+ </span>
180
+ <div id="primary_nav_games_menu" class="menu_items primary_nav_menu">
181
+ <ul class="menu_items">
182
+ <li class="menu_item">
183
+ <a href="http://www.metacritic.com/game/playstation-4">PS4</a>
184
+ </li>
185
+ <li class="menu_item">
186
+ <a href="http://www.metacritic.com/game/xbox-one">Xbox One</a>
187
+ </li>
188
+ <li class="menu_item">
189
+ <a href="http://www.metacritic.com/game/playstation-3">PS3</a>
190
+ </li>
191
+ <li class="menu_item">
192
+ <a href="http://www.metacritic.com/game/xbox-360">Xbox 360</a>
193
+ </li>
194
+ <li class="menu_item">
195
+ <a href="http://www.metacritic.com/game/pc">PC</a>
196
+ </li>
197
+ <li class="menu_item">
198
+ <a href="http://www.metacritic.com/game/wii-u">Wii U</a>
199
+ </li>
200
+ <li class="menu_item">
201
+ <a href="http://www.metacritic.com/game/3ds">3DS</a>
202
+ </li>
203
+ <li class="menu_item">
204
+ <a href="http://www.metacritic.com/game/playstation-vita">PS Vita</a>
205
+ </li>
206
+ <li class="menu_item">
207
+ <a href="http://www.metacritic.com/game/ios">iPhone/iPad</a>
208
+ </li>
209
+ <li class="menu_item">
210
+ <a href="http://www.metacritic.com/game/legacy">Legacy</a>
211
+ </li>
212
+ </ul>
213
+ </div>
214
+ </li>
215
+ <li class="nav nav_tv">
216
+ <span class="nav_item">
217
+ <span class="nav_item_wrap">
218
+ <a href="http://www.metacritic.com/tv">
219
+ <span class="nav_text">TV</span>
220
+ </a>
221
+ </span>
222
+ </span>
223
+ </li>
224
+ <li class="nav nav_music">
225
+ <span class="nav_item">
226
+ <span class="nav_item_wrap">
227
+ <a href="http://www.metacritic.com/music">
228
+ <span class="nav_text">Music</span>
229
+ </a>
230
+ </span>
231
+ </span>
232
+ </li>
233
+ <li class="nav nav_features">
234
+ <span class="nav_item">
235
+ <span class="nav_item_wrap">
236
+ <a href="http://www.metacritic.com/feature">
237
+ <span class="nav_text">Features</span>
238
+ </a>
239
+ </span>
240
+ </span>
241
+ </li>
242
+ </ul>
243
+ </div>
244
+
245
+ </div>
246
+ </div>
247
+ <div id="masthead_secondary">
248
+ <div class="masthead_wrap">
249
+
250
+
251
+ <div id="userpanel">
252
+ <div class="panel_wrap logged_out">
253
+ <div class="user_options">
254
+ <div class="user_options_label">User Panel Options!!</div>
255
+ <ul class="user_options">
256
+ <li class="user_option login">
257
+ <a name="login" href="https://secure.metacritic.com/login">Log In</a>
258
+ </li>
259
+ <li class="user_option signup">
260
+ <a name="signup" href="https://secure.metacritic.com/signup">Sign up</a>
261
+ </li>
262
+
263
+ </ul>
264
+ </div>
265
+ </div>
266
+ </div>
267
+
268
+ </div>
269
+ </div>
270
+ </div>
271
+
272
+ <div id="gutters" class="site_gutters">
273
+ <div id="superleader">
274
+ <div id="leader_plus_top" class="ad_unit">
275
+ <script type="text/javascript">
276
+
277
+ googletag.cmd.push(function() {
278
+
279
+ window.metac_g_ad_leader_plus_top = googletag.defineSlot("/8264/uk-metacritic/search/movie/Toy+Story+3/results",
280
+ [[728,90],[970,66],[970,250]], "leader_plus_top").addService(googletag.pubads()).setTargeting("pos", "top");
281
+
282
+
283
+ });
284
+
285
+ metac_g_ads_pushdisplay.push("leader_plus_top");
286
+ </script>
287
+ </div>
288
+
289
+
290
+
291
+
292
+
293
+
294
+
295
+ </div>
296
+ <div id="gutters_mid" class="site_gutters">
297
+ <div id="gutters_btm" class="site_gutters">
298
+ <div id="gutters_top" class="site_gutters">
299
+ <div id="container">
300
+
301
+ <div id="col_layout" class="col_layout">
302
+
303
+ <div id="main_content" class="content_section mpu_layout">
304
+ <div class="layout">
305
+ <div id="main" class="col main_col">
306
+ <div class="module search_module">
307
+ <div class="search_filters">
308
+ <ol class="search_filters">
309
+ <li class="search_filter filter_all first_filter">
310
+ <span class="filter_item">
311
+ <span class="filter_item_wrap">
312
+ <a rel="nofollow" class="all" href="/search/all/Toy%2BStory%2B3/results">
313
+ <span class="link_text">All Items</span>
314
+ </a>
315
+ </span>
316
+ </span>
317
+ </li>
318
+ <li class="search_filter filter_movie">
319
+ <span class="filter_item">
320
+ <span class="filter_item_wrap">
321
+ <span class="active"><span class="link_text">Movies</span></span>
322
+ </span>
323
+ </span>
324
+ </li>
325
+ <li class="search_filter filter_game">
326
+ <span class="filter_item">
327
+ <span class="filter_item_wrap">
328
+ <a rel="nofollow" class="game" href="/search/game/Toy%2BStory%2B3/results">
329
+ <span class="link_text">Games</span>
330
+ </a>
331
+ </span>
332
+ </span>
333
+ </li>
334
+ <li class="search_filter filter_album">
335
+ <span class="filter_item">
336
+ <span class="filter_item_wrap">
337
+ <a rel="nofollow" class="album" href="/search/album/Toy%2BStory%2B3/results">
338
+ <span class="link_text">Albums</span>
339
+ </a>
340
+ </span>
341
+ </span>
342
+ </li>
343
+ <li class="search_filter filter_tv">
344
+ <span class="filter_item">
345
+ <span class="filter_item_wrap">
346
+ <a rel="nofollow" class="tv" href="/search/tv/Toy%2BStory%2B3/results">
347
+ <span class="link_text">TV Shows</span>
348
+ </a>
349
+ </span>
350
+ </span>
351
+ </li>
352
+ <li class="search_filter filter_person">
353
+ <span class="filter_item">
354
+ <span class="filter_item_wrap">
355
+ <a rel="nofollow" class="person" href="/search/person/Toy%2BStory%2B3/results">
356
+ <span class="link_text">Person</span>
357
+ </a>
358
+ </span>
359
+ </span>
360
+ </li>
361
+ <li class="search_filter filter_video">
362
+ <span class="filter_item">
363
+ <span class="filter_item_wrap">
364
+ <a rel="nofollow" class="video" href="/search/video/Toy%2BStory%2B3/results">
365
+ <span class="link_text">Trailers</span>
366
+ </a>
367
+ </span>
368
+ </span>
369
+ </li>
370
+ <li class="search_filter filter_company last_filter">
371
+ <span class="filter_item">
372
+ <span class="filter_item_wrap">
373
+ <a rel="nofollow" class="company" href="/search/company/Toy%2BStory%2B3/results">
374
+ <span class="link_text">Companies</span>
375
+ </a>
376
+ </span>
377
+ </span>
378
+ </li>
379
+ </ol>
380
+ </div>
381
+
382
+ <div class="search basic_search has_adv_search_link">
383
+ <div class="search_section basic_search_section">
384
+ <form class="search" method="post" action="/search">
385
+ <fieldset>
386
+ <legend>Basic Search Fields</legend>
387
+ <div class="search_wrap">
388
+
389
+ <ol class="fields search_fields">
390
+
391
+ <li class="field search_field search_query">
392
+ <div class="field_wrap">
393
+ <span class="field">
394
+ <input class="text" type="text" size="50" name="search_term" id="search_term" value="Toy Story 3" autocomplete="off" />
395
+ </span>
396
+ <span class="search_msg">
397
+ Search Metacritic
398
+ </span>
399
+ </div>
400
+ </li>
401
+ <li class="field search_field search_submit">
402
+ <div class="submit"><div class="btn"><button class="submit" type="submit"><span>Search</span></button></div></div>
403
+ </li>
404
+ <li class="field hidden">
405
+ <input type="hidden" name="search_filter" value="movie" />
406
+ </li>
407
+ </ol>
408
+ </div>
409
+ </fieldset>
410
+ </form>
411
+ </div>
412
+
413
+
414
+
415
+
416
+
417
+
418
+
419
+
420
+
421
+ </div>
422
+ </div>
423
+
424
+
425
+
426
+ <div class="module search_results">
427
+ <div class="body">
428
+
429
+ <div>
430
+ <p class="query_results">Showing 3 results</p>
431
+ <a class="advanced_search_beta" href="/advanced-search">Advanced Search Beta &raquo;</a>
432
+ <div class="clr"></div>
433
+ </div>
434
+
435
+
436
+ <div class="tabs ">
437
+ <div class="tab_wrap">
438
+ <ul class="tabs tabs_type_1"> <li class="tab tab_type_1 tab_relevancy first">
439
+ <span class="active"><span>Relevancy</span></span>
440
+ </li>
441
+ <li class="tab tab_type_1 tab_score">
442
+ <a href="/search/movie/Toy+Story+3/results?sort=score"><span>Score</span></a>
443
+ </li>
444
+ <li class="tab tab_type_1 tab_recent last">
445
+ <a href="/search/movie/Toy+Story+3/results?sort=recent"><span>Most Recent</span></a>
446
+ </li>
447
+ </ul> </div>
448
+ </div>
449
+
450
+
451
+ <div style="background-color:#FEFFF7; margin-top:10px; padding: 5px; width:625px;">
452
+ <div id="gafscsa-top"></div>
453
+ </div>
454
+
455
+ <script src="http://www.google.com/adsense/search/ads.js" type="text/javascript"></script>
456
+ <script type="text/javascript" charset="utf-8">
457
+ var pageOptions = {
458
+ 'pubId': 'cnet-metacritic-search',
459
+ 'query': 'Toy Story 3',
460
+ 'channel': 'search',
461
+ 'adPage' : 1,
462
+ 'adtest': 'off',
463
+ 'hl': 'en'
464
+ };
465
+
466
+ var adblock1 = {
467
+ 'container': 'gafscsa-top',
468
+ 'maxTop': 3,
469
+ 'longerHeadlines' : true,
470
+ 'lines': '2',
471
+
472
+ 'fontSizeTitle' : 14,
473
+ 'colorTitleLink': '#0099ff',
474
+ 'noTitleUnderline': true,
475
+ 'titleBold' : true,
476
+
477
+ 'colorText': '#333333',
478
+
479
+ 'colorDomainLink': '#333333',
480
+
481
+ 'attributionText': 'Ads',
482
+ 'fontSizeAttribution': 10,
483
+ 'colorAttribution': '#777777',
484
+ 'attributionSpacingBelow' : 6,
485
+
486
+ 'colorBorder': '#cccccc',
487
+ 'borderSelections': 'bottom',
488
+ 'colorBackground' : '#fefff7'
489
+ };
490
+
491
+ var adblock2 = {
492
+ 'container': 'gafscsa-bottom',
493
+ 'number': 3,
494
+ 'longerHeadlines' : true,
495
+ 'lines': '2',
496
+
497
+ 'fontSizeTitle' : 14,
498
+ 'colorTitleLink': '#0099ff',
499
+ 'noTitleUnderline': true,
500
+ 'titleBold' : true,
501
+
502
+ 'colorText': '#333333',
503
+
504
+ 'colorDomainLink': '#333333',
505
+
506
+ 'attributionText': 'Ads',
507
+ 'fontSizeAttribution': 10,
508
+ 'colorAttribution': '#777777',
509
+ 'attributionSpacingBelow' : 6,
510
+
511
+ 'colorBorder': '#cccccc',
512
+ 'borderSelections': 'bottom',
513
+ 'colorBackground' : '#fefff7'
514
+ };
515
+
516
+ var adblock3 = {
517
+ 'container': 'gafscsa-right',
518
+ 'number': 3,
519
+ 'longerHeadlines' : true,
520
+ 'lines': '2',
521
+
522
+ 'fontSizeTitle' : 14,
523
+ 'colorTitleLink': '#0099ff',
524
+ 'noTitleUnderline': true,
525
+ 'titleBold' : true,
526
+
527
+ 'colorText': '#333333',
528
+
529
+ 'colorDomainLink': '#333333',
530
+
531
+ 'attributionText': 'Ads',
532
+ 'fontSizeAttribution': 10,
533
+ 'colorAttribution': '#777777',
534
+ 'attributionSpacingBelow' : 6,
535
+
536
+ 'colorBorder': '#cccccc',
537
+ 'borderSelections': 'bottom',
538
+ 'colorBackground' : '#fefff7'
539
+ };
540
+
541
+ try {
542
+ new google.ads.search.Ads(pageOptions, adblock1, adblock2, adblock3);
543
+ } catch (err) {
544
+ }
545
+ </script>
546
+
547
+
548
+ <ul class="search_results module">
549
+
550
+
551
+
552
+ <li class="result first_result">
553
+ <div class="result_type">
554
+ <strong>Movie</strong>
555
+ </div>
556
+
557
+ <div class="result_wrap">
558
+ <div class="basic_stats has_score">
559
+ <div class="main_stats">
560
+ <h3 class="product_title basic_stat"><a href="/movie/toy-story-3">Toy Story 3</a></h3>
561
+
562
+
563
+
564
+ <span class="metascore_w medium movie positive">92</span>
565
+
566
+
567
+ </div>
568
+ <div class="more_stats extended_stats">
569
+ <ul class="more_stats">
570
+ <li class="stat release_date">
571
+ <span class="label">Release Date:</span>
572
+ <span class="data">June 18, 2010</span>
573
+ </li>
574
+ <li class="stat rating">
575
+ <span class="label">Rated:</span>
576
+ <span class="data">
577
+ G
578
+ </span>
579
+ </li>
580
+ <li class="stat cast">
581
+ <span class="label">Starring:</span>
582
+ <span class="data">
583
+ Tim Allen, Tom Hanks </span>
584
+ </li>
585
+ <li class="stat genre">
586
+ <span class="label">Genre(s):</span>
587
+ <span class="data">
588
+ Adventure, Fantasy, Comedy, Animation, Family </span>
589
+ </li>
590
+ <li class="stat product_avguserscore">
591
+ <span class="label">User Score:</span>
592
+ <span class="data textscore textscore_outstanding">9.1</span>
593
+
594
+ </li>
595
+ <li class="stat runtime">
596
+ <span class="label">Runtime:</span>
597
+ <span class="data">103 min</span>
598
+ </li>
599
+ </ul>
600
+
601
+ </div>
602
+
603
+ </div>
604
+ <p class="deck basic_stat">Toy Story 3 is a comical new adventure in Disney Digital 3D that lands the toys in a room full of untamed tots who can't wait to get their sticky little fingers on these "new" toys. It's... </div>
605
+ </li>
606
+
607
+
608
+
609
+ <li class="result">
610
+ <div class="result_type">
611
+ <strong>Movie</strong>
612
+ </div>
613
+
614
+ <div class="result_wrap">
615
+ <div class="basic_stats has_score">
616
+ <div class="main_stats">
617
+ <h3 class="product_title basic_stat"><a href="/movie/toy-story">Toy Story</a></h3>
618
+
619
+
620
+
621
+ <span class="metascore_w medium movie positive">92</span>
622
+
623
+
624
+ </div>
625
+ <div class="more_stats extended_stats">
626
+ <ul class="more_stats">
627
+ <li class="stat release_date">
628
+ <span class="label">Release Date:</span>
629
+ <span class="data">November 22, 1995</span>
630
+ </li>
631
+ <li class="stat rating">
632
+ <span class="label">Rated:</span>
633
+ <span class="data">
634
+ G
635
+ </span>
636
+ </li>
637
+ <li class="stat cast">
638
+ <span class="label">Starring:</span>
639
+ <span class="data">
640
+ Tim Allen, Tom Hanks </span>
641
+ </li>
642
+ <li class="stat genre">
643
+ <span class="label">Genre(s):</span>
644
+ <span class="data">
645
+ Adventure, Fantasy, Comedy, Animation, Family </span>
646
+ </li>
647
+ <li class="stat product_avguserscore">
648
+ <span class="label">User Score:</span>
649
+ <span class="data textscore textscore_outstanding">9.0</span>
650
+
651
+ </li>
652
+ </ul>
653
+
654
+ </div>
655
+
656
+ </div>
657
+ <p class="deck basic_stat">In the first full-length computer-animated movie, a little boy's toys are thrown into chaos when a new Space Ranger arrives to vie for supremacy with the boy's favorite, an old wooden cowboy. </div>
658
+ </li>
659
+
660
+
661
+
662
+ <li class="result">
663
+ <div class="result_type">
664
+ <strong>Movie</strong>
665
+ </div>
666
+
667
+ <div class="result_wrap">
668
+ <div class="basic_stats has_score">
669
+ <div class="main_stats">
670
+ <h3 class="product_title basic_stat"><a href="/movie/toy-story-2">Toy Story 2</a></h3>
671
+
672
+
673
+
674
+ <span class="metascore_w medium movie positive">88</span>
675
+
676
+
677
+ </div>
678
+ <div class="more_stats extended_stats">
679
+ <ul class="more_stats">
680
+ <li class="stat release_date">
681
+ <span class="label">Release Date:</span>
682
+ <span class="data">November 24, 1999</span>
683
+ </li>
684
+ <li class="stat rating">
685
+ <span class="label">Rated:</span>
686
+ <span class="data">
687
+ G
688
+ </span>
689
+ </li>
690
+ <li class="stat cast">
691
+ <span class="label">Starring:</span>
692
+ <span class="data">
693
+ Tim Allen, Tom Hanks </span>
694
+ </li>
695
+ <li class="stat genre">
696
+ <span class="label">Genre(s):</span>
697
+ <span class="data">
698
+ Adventure, Fantasy, Comedy, Animation, Family </span>
699
+ </li>
700
+ <li class="stat product_avguserscore">
701
+ <span class="label">User Score:</span>
702
+ <span class="data textscore textscore_outstanding">8.6</span>
703
+
704
+ </li>
705
+ <li class="stat runtime">
706
+ <span class="label">Runtime:</span>
707
+ <span class="data">92 min</span>
708
+ </li>
709
+ </ul>
710
+
711
+ </div>
712
+
713
+ </div>
714
+ <p class="deck basic_stat">The sequel to the landmark 1995 computer-animated blockbuster from Disney and Pixar. This time around, the fun and adventure continue when Andy goes off to cowboy camp and the toys are left to... </div>
715
+ </li>
716
+ </ul>
717
+
718
+ <div style="background-color:#FEFFF7; margin-top:10px; padding: 5px; width:625px;">
719
+ <div id="gafscsa-bottom"></div>
720
+ </div>
721
+
722
+ </div>
723
+ </div>
724
+
725
+
726
+ <div style="margin-bottom: 15px;">
727
+
728
+ <script type="text/javascript"><!--
729
+ google_ad_client = "ca-pub-1991679624331369";
730
+ /* AFC - Metacritic - 336x280 */
731
+ google_ad_slot = "8542536043";
732
+ google_ad_width = 336;
733
+ google_ad_height = 280;
734
+ //-->
735
+ </script>
736
+ <script type="text/javascript"
737
+ src="//pagead2.googlesyndication.com/pagead/show_ads.js">
738
+ </script>
739
+
740
+ </div>
741
+ </div>
742
+ <div id="side" class="col side_col">
743
+
744
+ <div id="mpu_top" class="ad_unit">
745
+ <script type="text/javascript">
746
+
747
+ googletag.cmd.push(function() {
748
+
749
+ window.metac_g_ad_mpu_top = googletag.defineSlot("/8264/uk-metacritic/search/movie/Toy+Story+3/results",
750
+ [300,250], "mpu_top").addService(googletag.pubads()).setTargeting("pos", "top");
751
+
752
+
753
+ });
754
+
755
+ metac_g_ads_pushdisplay.push("mpu_top");
756
+ </script>
757
+ </div>
758
+
759
+
760
+
761
+
762
+
763
+
764
+
765
+
766
+
767
+
768
+
769
+
770
+ <div id="mpu_bottom" class="ad_unit">
771
+ <script type="text/javascript">
772
+
773
+ googletag.cmd.push(function() {
774
+
775
+ window.metac_g_ad_mpu_bottom = googletag.defineSlot("/8264/uk-metacritic/search/movie/Toy+Story+3/results",
776
+ [300,250], "mpu_bottom").addService(googletag.pubads()).setTargeting("pos", "bottom");
777
+
778
+
779
+ });
780
+
781
+ metac_g_ads_pushdisplay.push("mpu_bottom");
782
+ </script>
783
+ </div>
784
+
785
+
786
+
787
+
788
+
789
+
790
+
791
+
792
+
793
+ <div style="background-color:#FEFFF7; margin-top:10px; padding: 5px;">
794
+ <div id="gafscsa-right"></div>
795
+ </div>
796
+
797
+ </div>
798
+ </div>
799
+ </div>
800
+ </div>
801
+ </div>
802
+ </div>
803
+ </div>
804
+ </div>
805
+
806
+ <div id="leader_bottom" class="ad_unit">
807
+ <script type="text/javascript">
808
+
809
+ googletag.cmd.push(function() {
810
+
811
+ window.metac_g_ad_leader_bottom = googletag.defineSlot("/8264/uk-metacritic/search/movie/Toy+Story+3/results",
812
+ [[728,90],[970,66]], "leader_bottom").addService(googletag.pubads()).setTargeting("pos", "bottom");
813
+
814
+
815
+ });
816
+
817
+ metac_g_ads_pushdisplay.push("leader_bottom");
818
+ </script>
819
+ </div>
820
+
821
+
822
+
823
+
824
+
825
+
826
+
827
+
828
+ </div>
829
+
830
+
831
+ <div id="mastfoot">
832
+
833
+ <div id="site_footer" class="mastfoot_section">
834
+ <div class="mastfoot_wrap">
835
+
836
+
837
+ <div class="about_metacritic_nav"></div>
838
+
839
+
840
+
841
+ <div id="providers">
842
+ <a href="http://www.allmusic.com">Music title data, credits, and images provided by <span>AMG</span></a>
843
+ | <a href="http://www.imdb.com">Movie title data, credits, and poster art provided by <span>IMDb</span></a>
844
+ | <a href="http://www.internetvideoarchive.com">Video and Images provided by <span>IVA</span></a>
845
+ <div id="trademark">
846
+ We Deal With Criticism<sup>&reg;</sup>&nbsp;
847
+ </div>
848
+ </div>
849
+
850
+ <div class="soc_med_gms">
851
+ <div class="page_title">
852
+ <img src="http://static.metacritic.com/images/layout/mc_logo_inverted.png">
853
+ </div>
854
+
855
+
856
+ <div class="links gms_sites_nav">
857
+ <div class="link_item link_tv">
858
+ <span class="link_item">
859
+ <span class="link_item_wrap">
860
+ <a class="tv" href="http://www.gamespot.com/">
861
+ <span class="link_text">GameSpot Properties</span>
862
+ </a>
863
+ </span>
864
+ </span>
865
+ </div>
866
+ </div>
867
+
868
+
869
+
870
+ <div class="links social_media_nav">
871
+ <div class="links_label">Metacritic on:</div> <ul class="links social_media_nav">
872
+ <li class="link_item link_twitter first_link">
873
+ <span class="link_item">
874
+ <span class="link_item_wrap">
875
+ <a class="twitter" href="http://twitter.com/metacritic">
876
+ <span class="link_text">Twitter</span>
877
+ </a>
878
+ </span>
879
+ </span>
880
+ </li>
881
+ <li class="link_item link_facebook last_link">
882
+ <span class="link_item">
883
+ <span class="link_item_wrap">
884
+ <a class="facebook" href="http://www.facebook.com/Metacritic">
885
+ <span class="link_text">Facebook</span>
886
+ </a>
887
+ </span>
888
+ </span>
889
+ </li>
890
+ </ul>
891
+ </div>
892
+
893
+ </div>
894
+
895
+
896
+ <div class="links site_nav">
897
+ <ul class="links site_nav">
898
+ <li class="link_item link_movies first_link">
899
+ <span class="link_item">
900
+ <span class="link_item_wrap">
901
+ <a class="movies" href="http://www.metacritic.com/movie">
902
+ <span class="link_text">Movies</span>
903
+ </a>
904
+ </span>
905
+ </span>
906
+ </li>
907
+ <li class="link_item link_tv">
908
+ <span class="link_item">
909
+ <span class="link_item_wrap">
910
+ <a class="tv" href="http://www.metacritic.com/tv">
911
+ <span class="link_text">TV</span>
912
+ </a>
913
+ </span>
914
+ </span>
915
+ </li>
916
+ <li class="link_item link_music">
917
+ <span class="link_item">
918
+ <span class="link_item_wrap">
919
+ <a class="music" href="http://www.metacritic.com/music">
920
+ <span class="link_text">Music</span>
921
+ </a>
922
+ </span>
923
+ </span>
924
+ </li>
925
+ <li class="link_item link_ps3">
926
+ <span class="link_item">
927
+ <span class="link_item_wrap">
928
+ <a class="ps3" href="http://www.metacritic.com/game/playstation-3">
929
+ <span class="link_text">PS3</span>
930
+ </a>
931
+ </span>
932
+ </span>
933
+ </li>
934
+ <li class="link_item link_xbox360">
935
+ <span class="link_item">
936
+ <span class="link_item_wrap">
937
+ <a class="xbox360" href="http://www.metacritic.com/game/xbox-360">
938
+ <span class="link_text">Xbox360</span>
939
+ </a>
940
+ </span>
941
+ </span>
942
+ </li>
943
+ <li class="link_item link_wii">
944
+ <span class="link_item">
945
+ <span class="link_item_wrap">
946
+ <a class="wii" href="http://www.metacritic.com/game/wii">
947
+ <span class="link_text">Wii</span>
948
+ </a>
949
+ </span>
950
+ </span>
951
+ </li>
952
+ <li class="link_item link_ds">
953
+ <span class="link_item">
954
+ <span class="link_item_wrap">
955
+ <a class="ds" href="http://www.metacritic.com/game/ds">
956
+ <span class="link_text">DS</span>
957
+ </a>
958
+ </span>
959
+ </span>
960
+ </li>
961
+ <li class="link_item link_3ds">
962
+ <span class="link_item">
963
+ <span class="link_item_wrap">
964
+ <a class="3ds" href="http://www.metacritic.com/game/3ds">
965
+ <span class="link_text">3DS</span>
966
+ </a>
967
+ </span>
968
+ </span>
969
+ </li>
970
+ <li class="link_item link_psp">
971
+ <span class="link_item">
972
+ <span class="link_item_wrap">
973
+ <a class="psp" href="http://www.metacritic.com/game/psp">
974
+ <span class="link_text">PSP</span>
975
+ </a>
976
+ </span>
977
+ </span>
978
+ </li>
979
+ <li class="link_item link_pc">
980
+ <span class="link_item">
981
+ <span class="link_item_wrap">
982
+ <a class="pc" href="http://www.metacritic.com/game/pc">
983
+ <span class="link_text">PC</span>
984
+ </a>
985
+ </span>
986
+ </span>
987
+ </li>
988
+ <li class="link_item link_ios">
989
+ <span class="link_item">
990
+ <span class="link_item_wrap">
991
+ <a class="ios" href="http://www.metacritic.com/game/ios">
992
+ <span class="link_text">iOS</span>
993
+ </a>
994
+ </span>
995
+ </span>
996
+ </li>
997
+ <li class="link_item link_vita">
998
+ <span class="link_item">
999
+ <span class="link_item_wrap">
1000
+ <a class="vita" href="http://www.metacritic.com/game/playstation-vita">
1001
+ <span class="link_text">PS Vita</span>
1002
+ </a>
1003
+ </span>
1004
+ </span>
1005
+ </li>
1006
+ <li class="link_item link_features">
1007
+ <span class="link_item">
1008
+ <span class="link_item_wrap">
1009
+ <a class="features" href="http://www.metacritic.com/feature">
1010
+ <span class="link_text">Features</span>
1011
+ </a>
1012
+ </span>
1013
+ </span>
1014
+ </li>
1015
+ <li class="link_item link_rss_feeds last_link">
1016
+ <span class="link_item">
1017
+ <span class="link_item_wrap">
1018
+ <a class="rss_feeds" href="http://www.metacritic.com/rss">
1019
+ <span class="link_text">RSS Feeds</span>
1020
+ </a>
1021
+ </span>
1022
+ </span>
1023
+ </li>
1024
+ </ul>
1025
+ </div>
1026
+
1027
+ </div>
1028
+ </div>
1029
+ <div id="corporate_footer" class="mastfoot_section">
1030
+ <div class="mastfoot_wrap">
1031
+
1032
+
1033
+ <form id="cbs_related_sites_form" class="related_sites" action="">
1034
+ <fieldset>
1035
+ <legend>Other CBS Interactive Sites</legend>
1036
+ <label for="cbsi_footer_menu">Visit other CBS Interactive Sites</label>
1037
+ <select id="cbsi_footer_menu">
1038
+ <option value="">Select Site</option>
1039
+ <option value="http://www.cbscares.com">CBS Cares</option>
1040
+ <option value="http://www.cbsfilms.com">CBS Films</option>
1041
+ <option value="http://www.cbsradio.com">CBS Radio</option>
1042
+ <option value="http://www.cbs.com">CBS.com</option>
1043
+ <option value="http://www.cbsinteractive.com">CBSInteractive</option>
1044
+ <option value="http://www.cbsnews.com">CBSNews.com</option>
1045
+ <option value="http://www.cbssports.com">CBSSports.com</option>
1046
+ <option value="http://www.chow.com">CHOW</option>
1047
+ <option value="http://www.cnet.com">CNET</option>
1048
+ <option value="http://www.gamespot.com">GameSpot</option>
1049
+ <option value="http://www.help.com">Help.com</option>
1050
+ <option value="http://www.last.fm">Last.fm</option>
1051
+ <option value="http://www.maxpreps.com">MaxPreps</option>
1052
+ <option value="http://www.metacritic.com">Metacritic</option>
1053
+ <option value="http://moneywatch.bnet.com">Moneywatch</option>
1054
+ <option value="http://www.mysimon.com">mySimon</option>
1055
+ <option value="http://www.radio.com">Radio.com</option>
1056
+ <option value="http://www.search.com">Search.com</option>
1057
+ <option value="http://www.shopper.com">Shopper.com</option>
1058
+ <option value="http://www.sho.com">Showtime</option>
1059
+ <option value="http://www.smartplanet.com">SmartPlanet</option>
1060
+ <option value="http://www.techrepublic.com">TechRepublic</option>
1061
+ <option value="http://www.tv.com">TV.com</option>
1062
+ <option value="http://www.urbanbaby.com">UrbanBaby.com</option>
1063
+ <option value="http://www.zdnet.com">ZDNet</option>
1064
+ <option value="http://collegenetwork.cbssports.com">College Network</option>
1065
+ <option value="http://www.metrolyrics.com">MetroLyrics</option>
1066
+ <option value="http://www.tvguide.com/">TvGuide.com</option>
1067
+ </select>
1068
+ <input type="button" value="Go" onclick="window.location=document.getElementById('cbsi_footer_menu').options[document.getElementById('cbsi_footer_menu').selectedIndex].value;" />
1069
+ </fieldset>
1070
+ </form>
1071
+ <div class="about_cbs">
1072
+ <p id="footer_about_links">
1073
+ <a class="first" href="http://www.cbsinteractive.com">About CBS Interactive</a>
1074
+ | <a href="http://www.cbsinteractive.com/careers/">Jobs</a>
1075
+ | <a href="http://www.cbsinteractive.com/advertise/">Advertise</a>
1076
+ | <a href="http://www.metacritic.com/faq">FAQ</a>
1077
+ | <a href="http://www.metacritic.com/about-metacritic">About Metacritic</a>
1078
+ | <a href="http://www.metacritic.com/contact-us">Contact</a>
1079
+ </p>
1080
+ <p id="footer_rights">
1081
+ &copy; 2014 CBS Interactive Inc. All rights reserved.
1082
+ <span id="footer_privacy">| <a href="http://legalterms.cbsinteractive.com/privacy">Privacy Policy</a></span>
1083
+ <span id="footer_terms">| <a href="https://cbsi.secure.force.com/CBSi/articles/FAQ/CBSi-Terms-of-Use?template=template_tougl&referer=tougl.com&data=&cfs=default">Terms of Use</a></span>
1084
+ </p>
1085
+ </div>
1086
+ </div>
1087
+ </div>
1088
+ </div>
1089
+ </div>
1090
+
1091
+ <div id="site_scripts" class="dw_tracking">
1092
+
1093
+ <script type="text/javascript">
1094
+
1095
+
1096
+ googletag.cmd.push(function() {
1097
+ googletag.pubads().setTargeting("ptype", "statistics");
1098
+ googletag.pubads().setTargeting("env", "prod");
1099
+ googletag.pubads().enableAsyncRendering();
1100
+ googletag.pubads().enableSingleRequest();
1101
+ googletag.pubads().collapseEmptyDivs();
1102
+ googletag.enableServices();
1103
+ });
1104
+
1105
+
1106
+ </script>
1107
+
1108
+
1109
+
1110
+
1111
+
1112
+ <script type="text/javascript" src="/js/omniture/uuid.js"></script>
1113
+ <script language="JavaScript" type="text/javascript">
1114
+ var omdata = {
1115
+ isDev:0,
1116
+ context:{
1117
+
1118
+
1119
+ siteSection:"movies",
1120
+ pageType:"search",
1121
+ pageFindingMethod:"External",
1122
+ searchEventSearch:"1",userId:null,userState:"not authenticated",userType:"anon",
1123
+
1124
+ pageViewGuid:uuid.v1()
1125
+ }
1126
+ };
1127
+ </script>
1128
+ <!-- Adobe Marketing Cloud Tag Loader Code-->
1129
+ <script type="text/javascript">//<![CDATA[
1130
+ var amc=amc||{};if(!amc.on){amc.on=amc.call=function(){}};
1131
+ document.write("<scr"+"ipt type=\"text/javascript\" src=\"//www.adobetag.com/d2/v2/ZDItY2JzaW50ZXJhY3RpdmUtNDgxNC04NTAt/amc.js\"></sc"+"ript>");
1132
+ //]]></script>
1133
+
1134
+ <!-- End Adobe Marketing Cloud Tag Loader Code -->
1135
+
1136
+
1137
+
1138
+ <script type="text/javascript">
1139
+ amc.on('load', function (event, data) {
1140
+ MetaC.checkOmniEvents();
1141
+ });
1142
+ </script>
1143
+
1144
+
1145
+
1146
+ <script src='//dws.cbsimg.net/js/cbsi/dw.js'></script>
1147
+ <script type="text/javascript">
1148
+
1149
+ dwVars = {"siteId":"50","onId":"1","ptId":"6056"};
1150
+ if (typeof DW == "object"){
1151
+ DW.pageParams = dwVars;
1152
+ DW.regSilo = 12;
1153
+ DW.clear();
1154
+ }
1155
+ </script>
1156
+
1157
+
1158
+
1159
+
1160
+ <script>
1161
+ var cbsiApexGlobal = {
1162
+ 'SITE': dwVars.siteId,
1163
+ 'NODE': dwVars.onId,
1164
+ 'PTYPE':dwVars.ptId
1165
+ };
1166
+ </script>
1167
+
1168
+
1169
+ <script src='http://cn.cbsimg.net/cnwk.1d/Aud/javascript/apex.js'></script>
1170
+
1171
+
1172
+
1173
+ <script>
1174
+ var _gaq = _gaq || [];
1175
+ _gaq.push(['_setAccount', 'UA-22577913-5']);
1176
+ _gaq.push(['_setCustomVar',1,'PageType',dwVars.ptId,3]);
1177
+ _gaq.push(['_trackPageview']);
1178
+ _gaq.push(['_trackPageLoadTime']);
1179
+ _gaq.push(['_setAllowLinker', true]);
1180
+ _gaq.push(['nT._setAccount', 'UA-27653683-1']);
1181
+ _gaq.push(['nT._setAllowLinker', true]);
1182
+ _gaq.push(['nT._setSampleRate', '1']);
1183
+ _gaq.push(['nT._trackPageview']);
1184
+
1185
+ (function() {
1186
+ var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
1187
+ ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
1188
+ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
1189
+ })();
1190
+ </script>
1191
+
1192
+
1193
+
1194
+
1195
+ <script>
1196
+ setTimeout(function(){var a=document.createElement("script"); var b=document.getElementsByTagName("script")[0]; a.src=document.location.protocol+"//dnn506yrbagrg.cloudfront.net/pages/scripts/0012/9026.js?"+Math.floor(new Date().getTime()/3600000); a.async=true;a.type="text/javascript";b.parentNode.insertBefore(a,b)}, 1);
1197
+ </script>
1198
+
1199
+
1200
+
1201
+ <div id="fb-root"></div>
1202
+ <script>
1203
+ window.fbAsyncInit = function() {
1204
+ FB.init({
1205
+ appId : '123113677890173',
1206
+ channelUrl : 'http://www.metacritic.com/static/fbchannel.html',
1207
+ status : true,
1208
+ xfbml : true,
1209
+ cookie : true
1210
+ });
1211
+ MetaC.FB.initialized();
1212
+ };
1213
+
1214
+ (function(d, s, id){
1215
+ var js, fjs = d.getElementsByTagName(s)[0];
1216
+ if (d.getElementById(id)) {return;}
1217
+ js = d.createElement(s); js.id = id;
1218
+ js.src = "//connect.facebook.net/en_US/all.js";
1219
+ fjs.parentNode.insertBefore(js, fjs);
1220
+ }(document, 'script', 'facebook-jssdk'));
1221
+
1222
+ </script>
1223
+
1224
+
1225
+
1226
+ <script>
1227
+ window.twttr = (function (d,s,id) {
1228
+ var t, js, fjs = d.getElementsByTagName(s)[0];
1229
+ if (d.getElementById(id)) return; js=d.createElement(s); js.id=id;
1230
+ js.src="https://platform.twitter.com/widgets.js"; fjs.parentNode.insertBefore(js, fjs);
1231
+ return window.twttr || (t = { _e: [], ready: function(f){ t._e.push(f) } });
1232
+ }(document, "script", "twitter-wjs"));
1233
+ </script>
1234
+ <script>
1235
+ twttr.ready(function (twttr) {
1236
+ MetaC.Twitter.initialized();
1237
+ });
1238
+ </script>
1239
+
1240
+
1241
+ <!-- Begin BlueKai Tag -->
1242
+
1243
+ <iframe name="__bkframe" height="0" width="0" frameborder="0" src="javascript:void(0)"></iframe>
1244
+ <script type="text/javascript" src="//tags.bkrtx.com/js/bk-coretag.js"></script>
1245
+ <script type="text/javascript">
1246
+ bk_addPageCtx("anon_id", "cEHL91Hw91PlpHyyw7o");
1247
+ bk_addPageCtx("site", "50");
1248
+
1249
+
1250
+ bk_addPageCtx("ptype", "Search");
1251
+ bk_addPageCtx("path", "/search/movie/Toy+Story+3/results");
1252
+ bk_addPageCtx("tag", "Toy Story 3 - Reviews, Articles, People, Trailers and more at Metacritic");
1253
+ bk_ignore_meta = true;
1254
+ bk_doJSTag(3341, 4);
1255
+ </script>
1256
+
1257
+ <!-- End BlueKai Tag -->
1258
+
1259
+
1260
+
1261
+
1262
+
1263
+
1264
+
1265
+ <script>
1266
+ if (typeof cbsiLoadOffer == "function"){
1267
+ cbsiLoadOffer(cbsiApexGlobal,1000);
1268
+ }
1269
+ </script>
1270
+
1271
+ </div>
1272
+
1273
+ <script type="text/javascript">if(!NREUMQ.f){NREUMQ.f=function(){NREUMQ.push(["load",new Date().getTime()]);var e=document.createElement("script");e.type="text/javascript";e.src=(("http:"===document.location.protocol)?"http:":"https:")+"//"+"js-agent.newrelic.com/nr-100.js";document.body.appendChild(e);if(NREUMQ.a)NREUMQ.a();};NREUMQ.a=window.onload;window.onload=NREUMQ.f;};NREUMQ.push(["nrfj","beacon-6.newrelic.com","860f7644b8","2033002","MgQEZ0dYCxEAVRBbDQtOJUZGTQoPTmUBUxAGCVwJR1wWFw1CFw==",0,584,new Date().getTime(),"","","","",""]);</script>
1274
+ </body>
1275
+ </html>
1276
+