bgg 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/.document +5 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +6 -0
  5. data/Gemfile +20 -0
  6. data/Gemfile.lock +54 -0
  7. data/LICENSE.txt +20 -0
  8. data/README.md +73 -0
  9. data/Rakefile +38 -0
  10. data/VERSION +1 -0
  11. data/bgg.gemspec +122 -0
  12. data/lib/bgg.rb +53 -0
  13. data/lib/bgg/collection.rb +58 -0
  14. data/lib/bgg/collection_item.rb +69 -0
  15. data/lib/bgg/game.rb +57 -0
  16. data/lib/bgg/play.rb +64 -0
  17. data/lib/bgg/plays.rb +26 -0
  18. data/lib/bgg/plays_iterator.rb +64 -0
  19. data/lib/bgg/search.rb +34 -0
  20. data/lib/bgg/search_result.rb +18 -0
  21. data/lib/bgg/user.rb +60 -0
  22. data/sample_data/collection?username=texasjdl +5224 -0
  23. data/sample_data/collection?username=texasjdl&own=1&excludesubtype=boardgameexpansion +2606 -0
  24. data/sample_data/collection?username=yyyyyyy +3 -0
  25. data/sample_data/hot?type=boardgame +253 -0
  26. data/sample_data/plays?pages=9999999999999&username=ryanmacg +2 -0
  27. data/sample_data/plays?username=beetss&page=1 +3 -0
  28. data/sample_data/plays?username=ryanmacg +504 -0
  29. data/sample_data/plays?username=texasjdl&id=84876 +192 -0
  30. data/sample_data/plays?username=texasjdl&id=84876&type=thing +199 -0
  31. data/sample_data/plays?username=texasjdl&page=1 +717 -0
  32. data/sample_data/plays?username=texasjdl&page=2 +709 -0
  33. data/sample_data/plays?username=texasjdl&page=3 +707 -0
  34. data/sample_data/plays?username=yyyyyyy&page=1 +667 -0
  35. data/sample_data/search?query=Burgun +47 -0
  36. data/sample_data/search?query=Burgun&exact=1 +3 -0
  37. data/sample_data/search?query=Burgund&type=boardgame +12 -0
  38. data/sample_data/search?query=The+Castles+of+Burgundy&exact=1 +7 -0
  39. data/sample_data/search?query=yyyyyyy +3 -0
  40. data/sample_data/thing?id=10000000&type=boardgame +3 -0
  41. data/sample_data/thing?id=29773&type=boardgame +90 -0
  42. data/sample_data/thing?id=70512&type=boardgame +82 -0
  43. data/sample_data/thing?id=84876&type=boardgame +82 -0
  44. data/sample_data/user?name=texasjdl +17 -0
  45. data/sample_data/user?name=yyyyyyy +17 -0
  46. data/spec/bgg_api_spec.rb +113 -0
  47. data/spec/bgg_collection_item_spec.rb +259 -0
  48. data/spec/bgg_collection_spec.rb +83 -0
  49. data/spec/bgg_game_spec.rb +232 -0
  50. data/spec/bgg_play_spec.rb +166 -0
  51. data/spec/bgg_plays_iterator_spec.rb +156 -0
  52. data/spec/bgg_plays_spec.rb +60 -0
  53. data/spec/bgg_search_result_spec.rb +73 -0
  54. data/spec/bgg_search_spec.rb +84 -0
  55. data/spec/bgg_user_spec.rb +113 -0
  56. data/spec/spec_helper.rb +29 -0
  57. metadata +241 -0
@@ -0,0 +1,667 @@
1
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
+ <html>
3
+ <head>
4
+ <!--[if lte IE 8]>
5
+ <script src="/js/json2.min.js"></script>
6
+ <![endif]-->
7
+
8
+
9
+
10
+
11
+
12
+ <meta name="og:image" content="http://cf.geekdo-static.com/images/geekfacebook.png">
13
+ <meta name="og:fb_admins" content="27817827944">
14
+
15
+ <meta property="fb:page_id" content="205486880281" />
16
+
17
+ <meta name="description" content="">
18
+ <meta name="keywords" content="board game, boardgames, boardgame, board, games, game, hobby, boardgamegeek, geek, geekdo">
19
+ <meta http-equiv="content-type" content="text/html;charset=UTF-8">
20
+ <link rel='stylesheet' type='text/css' href='http://cf.geekdo-static.com/static/css_master2_52e017f2c4a13.css'>
21
+
22
+
23
+ <style type='text/css'>
24
+ .tilebadge
25
+ {
26
+ background-image: url('http://cf.geekdo-static.com/sprites/mbs/tilemb_0_11.png');
27
+ }
28
+
29
+ .icon
30
+ {
31
+ background-image: url('http://cf.geekdo-static.com/sprites/icons/tileicon_0_25.png');
32
+ }
33
+ </style>
34
+
35
+ <link rel="apple-touch-icon" href="http://cf.geekdo-static.com/icons/appleicon.png" />
36
+ <link rel="shortcut icon" href="http://cf.geekdo-static.com/icons/favicon.ico" type="image/ico" />
37
+ <link rel="icon" href="http://cf.geekdo-static.com/icons/favicon.ico" type="image/ico" />
38
+ <link rel="search" href="/game-opensearch.xml" type="application/opensearchdescription+xml" title="BGG Game Search" />
39
+
40
+
41
+
42
+ <title>XMLAPI | BoardGameGeek</title>
43
+
44
+ <script type="text/javascript">
45
+
46
+ window.google_analytics_uacct = "UA-104725-1";
47
+ var googletag = googletag || {};
48
+ googletag.cmd = googletag.cmd || [];
49
+ ( function() {
50
+ var gads = document.createElement('script');
51
+ gads.async = true;
52
+ gads.type = 'text/javascript';
53
+ gads.src = "http://www.googletagservices.com/tag/js/gpt.js";
54
+ var node = document.getElementsByTagName('script')[0];
55
+ node.parentNode.insertBefore(gads, node);
56
+ } )();
57
+
58
+
59
+ adunits = [
60
+ {
61
+ name: 'boardgame_button_120x45',
62
+ size: [ 120, 45 ],
63
+ target: 'dfp-button'
64
+ },
65
+ {
66
+ name: 'boardgame_leaderboard_728x90',
67
+ size: [ 728, 90 ],
68
+ target: 'dfp-leaderboard'
69
+ },
70
+ {
71
+ name: 'boardgame_skyscraper_160x600',
72
+ size: [ 160, 600 ],
73
+ target: 'dfp-skyscraper'
74
+ },
75
+ {
76
+ name: 'boardgame_rectangle_300x250',
77
+ size: [ 300, 250 ],
78
+ target: 'dfp-medrect'
79
+ }
80
+ ];
81
+
82
+
83
+ googletag.cmd.push(function() {
84
+ for( var i=0; i<adunits.length; i++ )
85
+ {
86
+ unit = adunits[i];
87
+ googletag.defineUnit('/1005854/ca-pub-7206761047394129/'+unit.name, unit.size, unit.target).
88
+ addService(googletag.pubads());
89
+ }
90
+
91
+
92
+ googletag.pubads().setTargeting( "subdomain", "all" );
93
+
94
+ googletag.enableServices();
95
+ } );
96
+
97
+ </script>
98
+
99
+
100
+ </head>
101
+
102
+ <body class='yui-skin-sam'>
103
+
104
+
105
+
106
+ <script type='text/javascript' src='http://cf.geekdo-static.com/static/js_master2_5301c1d9abec8.js'></script>
107
+
108
+
109
+
110
+
111
+
112
+ <div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
113
+
114
+ <script language="JavaScript" type="text/javascript">
115
+ function start()
116
+ {
117
+
118
+ }
119
+
120
+ function ondomready()
121
+ {
122
+
123
+
124
+ GEEK.addHandlers();
125
+ }
126
+
127
+
128
+
129
+ window.addEvent('domready', function(){
130
+ ondomready();
131
+ });
132
+ window.onload = start;
133
+ </script>
134
+
135
+ <div id='container'>
136
+ <div id='maincontent'>
137
+
138
+
139
+
140
+ <table width='100%' style='margin:10px 0;'>
141
+ <tr>
142
+ <td width='120' valign='top'>
143
+ <a href="/"><img style='width:120px; height:90px;' src="http://cf.geekdo-static.com/images/geekdo/bgg_cornerlogo.png" class='fl'></a>
144
+ </td>
145
+
146
+ <td style='padding-left:10px; width:90px;'>
147
+ <div class='menu_login'>
148
+ <table align='center' class='pt2'>
149
+ <tr>
150
+ <td>
151
+ <a href='/geekmail' onmouseover="return overlib('Mailbox', WRAP);" onmouseout="return nd();"><img class='icon i_silk_email' title='' alt='mail' style='' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==' /></a>
152
+ </td>
153
+ <td align='right'>
154
+ <a href='/geekmail' onmouseover="return overlib('Mailbox', WRAP);" onmouseout="return nd();"><span class='sf'><span id='num_messages'>0</span> new</span></a>
155
+ </td>
156
+ </tr>
157
+ <tr>
158
+ <td><a href='/subscriptions' onmouseover="return overlib('Subscriptions', WRAP);" onmouseout="return nd();"><img class='icon i_silk_newspaper' title='' alt='subs' style='' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==' /></a></td><td align='right'><span id='GSUB_numevents_main'><a href='/subscriptions' onmouseover="return overlib('Subscriptions', WRAP);" onmouseout="return nd();"><span id='GSUB_subcount' class='sf'>0&nbsp;new</span></a></span></td>
159
+ </tr>
160
+ <tr>
161
+ <td colspan='2' align='right'>
162
+ <a href='/subscriptions/next' onmouseover="return overlib('Next New Subscribed Item', WRAP);" onmouseout="return nd();"><span class='sf'>Next:&nbsp;</span><span class='subsicon'><img class='icon nextsubgray vam i_silk_newspaper_go_gray' title='' alt='' style='' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==' /><img class='icon dn nextsubcol vam i_silk_newspaper_go' title='' alt='' style='' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==' /></span></a>
163
+ </td>
164
+ </tr>
165
+ </table>
166
+ <div>
167
+ <a href='/user/texasjdl'>texasjdl</a>
168
+ </div>
169
+ <div>
170
+ [<a href="/logout">Log&nbsp;Out</a>]
171
+ </div>
172
+ </div>
173
+
174
+ </td>
175
+
176
+ <td>
177
+
178
+
179
+ <div id='header' style='width:550px; min-width:550px;'>
180
+
181
+ <div id='header_top'>
182
+ <div class='mainmenu'>
183
+ <ul class='mainmenutabs'>
184
+ <li class='js-tablist'>
185
+ <a class='selected' href="http://boardgamegeek.com">
186
+ <div class='fl'>
187
+ Board Games
188
+ </div>
189
+ <span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span>
190
+ </a>
191
+ <div class='dn'>
192
+ <div class='menutab-open' id='subdomain_links' style='width:370px;'>
193
+ <ul>
194
+ <li><a href="/">Home</a></li>
195
+ <li><a href="/recentadditions">Recent Additions</a></li>
196
+ <li><a href="/wiki/page/Welcome_to_BoardGameGeek">Welcome</a></li>
197
+ <li><a href="/wiki/page/Index">Wiki</a></li>
198
+ </ul>
199
+ <div class='clear'></div>
200
+ <div class='submenu_header'>Subdomains</div>
201
+ <ul>
202
+ <li><a href="/all">All</a></li>
203
+ <li><a href="/abstracts">Abstract Games</a></li>
204
+ <li><a href="/cgs">Customizable Games</a></li>
205
+ <li><a href="/childrensgames">Children&#039;s Games</a></li>
206
+ <li><a href="/familygames">Family Games</a></li>
207
+ <li><a href="/partygames">Party Games</a></li>
208
+ <li><a href="/strategygames">Strategy Games</a></li>
209
+ <li><a href="/thematic">Thematic Games</a></li>
210
+ <li><a href="/wargames">Wargames</a></li>
211
+ </ul>
212
+ </div>
213
+ </div>
214
+
215
+ </li>
216
+ <li class='js-tablist'>
217
+ <a href="http://rpggeek.com/">
218
+ <div class='fl'>
219
+ RPGs
220
+ </div>
221
+ </a>
222
+
223
+ </li>
224
+
225
+ <li class='js-tablist'>
226
+ <a href="http://videogamegeek.com/">
227
+ <div class='fl'>
228
+ Video Games
229
+ </div>
230
+ </a>
231
+
232
+ </li>
233
+
234
+ <li class='js-tablist' id="bggcon_label">
235
+ <a href="/bggcon"><div class='fl'><span style='border: solid 1px orange; background:orange; border-radius:10px; padding:3px; color:blue;'>BGG.CON</span></div></a>
236
+ </li>
237
+
238
+ <li class='js-tablist' id="logout_label">
239
+
240
+ <a href="javascript://" id='geek-logout'>
241
+ <div class='fl'>
242
+ Logout
243
+ </div>
244
+ </a>
245
+ </li>
246
+
247
+ <li id='quickbar_label'>
248
+ <div>
249
+ Quickbar:
250
+ </div>
251
+ </li>
252
+ </ul>
253
+ </div>
254
+
255
+ <div class='searchmenu' style='background-color:#1d265c;'>
256
+ <ul class='searchmenutabs'>
257
+ <li>
258
+ <form method="get" action="/geeksearch.php">
259
+ SEARCH
260
+ <input type="hidden" name="action" value="search" id="action">
261
+ <select name='objecttype' onchange="$('sitesearch').focus();">
262
+
263
+ <option value='boardgame'>Board Game</option>
264
+
265
+ <option value='boardgameartist'>Artists</option>
266
+
267
+ <option value='boardgamedesigner'>Designers</option>
268
+
269
+ <option value='boardgamepublisher'>Publishers</option>
270
+
271
+ <option value='boardgameaccessory'>Accessories</option>
272
+
273
+ <option value='boardgamefamily'>Families</option>
274
+
275
+ <option value='article'>Forums</option>
276
+
277
+ <option value='geeklist'>GeekLists</option>
278
+
279
+ <option value='boardgamehonor'>Honors</option>
280
+
281
+ <option value='tag'>Tags</option>
282
+
283
+ <option value='wiki'>Wiki</option>
284
+
285
+ <option value='user'>Users</option>
286
+
287
+ <option value='boardgamepodcast'>Podcast</option>
288
+
289
+ <option value='boardgamepodcastepisode'>Podcast Ep.</option>
290
+
291
+ <option value='boardgameaccessory'>Accessory</option>
292
+ </select>
293
+ <input type="text" name="q" size="32" id='sitesearch' autocorrect='off' autocapitalize='off'>
294
+ <input type='submit' name='B1' value='Go'>
295
+ </form>
296
+ </li>
297
+ <li>
298
+ <a href="/advsearch/boardgame">Adv. Search</a>
299
+ </li>
300
+ </ul>
301
+ <div class='clear'></div>
302
+ </div>
303
+
304
+ </div>
305
+
306
+ <div class='menucontainer' style='background-color:#1d265c;'>
307
+ <ul class='submenutabs'>
308
+ <li class='js-tablist'>
309
+ <a href="/user/texasjdl"><div class='fl'>My Geek</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
310
+ <div class='dn'>
311
+ <div class='menutab-open' style='width:250px;'>
312
+ <ul>
313
+ <li><a href="/user/texasjdl">Profile</a></li>
314
+ <li><a href="/geekaccount/edit">Account</a></li>
315
+ <li><a href="/collection/user/texasjdl">Collection</a></li>
316
+ <li><a href="/wishlist/texasjdl">Wishlist</a></li>
317
+ <li><a href="/tags/user/texasjdl">Tags</a></li>
318
+ <li><a href="/user/texasjdl/guilds">Guilds</a></li>
319
+ <li><a href="/subscriptions">Subscriptions</a></li>
320
+ <li><a href="/images/mygallery">Gallery</a></li>
321
+ <li><a href="/trade">Trades</a></li>
322
+ <li><a href="/plays/user/texasjdl/subtype/boardgame">Played</a></li>
323
+ <li><a href="/geekstore.php3?action=manageaccount">Marketplace</a></li>
324
+ <li><a href="/geekbuddy.php3">GeekBuddies</a></li>
325
+ <li><a href="/geekexchange/myexchanges">GeekExchanges</a></li>
326
+ <li><a href="/blogs/myblogs">Blogs</a></li>
327
+ </ul>
328
+ </div>
329
+ </div>
330
+ </li>
331
+
332
+
333
+ <li class='js-tablist'>
334
+ <a href="#"><div class='fl'>Browse</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
335
+ <div class='dn'>
336
+ <div class='menutab-open' id='browse_links' style='width:370px;'>
337
+ <div class='submenu_header'>
338
+ Database
339
+ </div>
340
+ <ul>
341
+ <li><a href="/browse/boardgame">Games (69825)</a></li> <li><a href="/browse/boardgamefamily">Families (2024)</a></li> <li><a href="/browse/boardgamecategory">Categories (84)</a></li> <li><a href="/browse/boardgamemechanic">Mechanics (51)</a></li> <li><a href="/browse/boardgameartist">Artists (10837)</a></li> <li><a href="/browse/boardgamedesigner">Designers (19538)</a></li> <li><a href="/browse/boardgamepublisher">Publishers (14159)</a></li> <li><a href="/browse/boardgameaccessory">Accessories (507)</a></li> <li><a href="/browse/boardgamehonor">Honors (2544)</a></li> <li><a href="/boardgame/random">Random Game</a></li>
342
+ <li><a href='/gonecardboard'>Gone Cardboard</a></li>
343
+ </ul>
344
+ <div class='clear'></div>
345
+
346
+ <div class='submenu_header'>User Submitted Content</div>
347
+ <ul>
348
+ <li><a href="/files/boardgame/all">Files (89983)</a></li>
349
+ <li><a href="/images/boardgame/all?sort=recent">Images</a></li>
350
+ <li><a href="/thread/browse/boardgame/0?sort=recent&amp;forumname=reviews">Reviews (47289)</a></li>
351
+ <li><a href="/thread/browse/boardgame/0?sort=recent&amp;forumname=sessions">Session Reports (65102)</a></li>
352
+ <li><a href="/videos/boardgame/all">Videos</a></li>
353
+ <li><a href="/blogs">Blogs</a></li>
354
+ </ul>
355
+ <div class='clear'></div>
356
+
357
+ <div class='submenu_header'>Podcasts</div>
358
+ <ul>
359
+ <li><a href="/browse/boardgamepodcast">Podcasts (204)</a></li>
360
+ <li><a href="/browse/boardgamepodcastepisode">Podcast Episodes (13010)</a></li>
361
+ </ul>
362
+ <div class='clear'></div>
363
+ </div>
364
+ </div>
365
+ </li>
366
+
367
+ <li class='js-tablist'>
368
+ <a href="/forums/region/1/boardgamegeek"><div class='fl'>Forums</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
369
+ <div class='dn'>
370
+ <div class='menutab-open' style='width:250px;'>
371
+ <ul>
372
+ <li><a href="/forums/region/1/boardgamegeek">Forums</a></li>
373
+ <li><a href="/thread/browse/region/1?sort=hot&amp;days=2">Hot</a></li>
374
+ <li><a href="/thread/browse/region/1?sort=recent">Recent</a></li>
375
+ <li><a href="/thread/browse/region/1?sort=active">Active</a></li>
376
+ <li><a href="/forum/search/region/1">Search</a></li>
377
+ <li><a href="/article/create/region/1">Post Thread</a></li>
378
+ <li><a href="/wiki/page/Admins">Moderators</a></li>
379
+ <li><a href="/thread/bookmarks">Bookmarks</a></li>
380
+ <li><a href="/thread/subscriptions">Subscriptions</a></li>
381
+ <li><a href="/community_rules">Rules</a></li>
382
+ </ul>
383
+
384
+ </div>
385
+ </div>
386
+ </li>
387
+
388
+ <li class='js-tablist'>
389
+ <a href="#"><div class='fl'>GeekLists</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
390
+ <div class='dn'>
391
+ <div class='menutab-open' style='width:150px;'>
392
+ <ul>
393
+ <li><a href="/geeklist/lists?sortby=hot&amp;interval=twodays">Hot</a></li>
394
+ <li><a href="/geeklist/lists?sortby=date">Recent</a></li>
395
+ <li><a href="/geeklist/lists?sortby=active">Active</a></li>
396
+ <li><a href="/geeklist/favorites">Favorites</a></li>
397
+ <li><a href="/geeklist/mylists">My GeekLists</a></li>
398
+ <li><a href="/geeklist/new">Create New GeekList</a></li>
399
+ </ul>
400
+ </div>
401
+ </div>
402
+ </li>
403
+
404
+ <li class='js-tablist'>
405
+ <a href="#"><div class='fl'>Bazaar</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
406
+ <div class='dn'>
407
+ <div class='menutab-open' style='width:150px;'>
408
+ <ul>
409
+ <li><a href="/geekstore.php3">Marketplace</a></li>
410
+ <li><a href="/geekauction.php3">Auctions</a></li>
411
+ <li><a href="/trade">Trades</a></li>
412
+ <li><a href="http://boardgamegeekstore.com">Geek Store</a></li>
413
+ </ul>
414
+ <div class='clear'></div>
415
+ <div class='submenu_header'>eBay</div>
416
+ <ul>
417
+ <li><a href="/geekbay/browse?sort=hot">Hot</a></li>
418
+ <li><a href="/geekbay/browse?sort=endtime">Ending</a></li>
419
+ <li><a href="/geekbay/browse?sort=recent">Recently Added</a></li>
420
+ </ul>
421
+ </div>
422
+ </div>
423
+ </li>
424
+
425
+ <li class='js-tablist'>
426
+ <a href="#"><div class='fl'>Misc</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
427
+ <div class='dn'>
428
+ <div class='menutab-open' style='width:250px;'>
429
+ <ul>
430
+ <li><a href="/guild/home">Guilds</a></li>
431
+ <li><a href="/geekmod">GeekMod</a></li>
432
+ <li><a href="/geekchat">GeekChat</a></li>
433
+ <li><a href="/geekquestions">GeekQuestions</a></li>
434
+ <li><a href="/onlinegames">Online Games</a></li>
435
+ <li><a href="/stats.php">Stats</a></li>
436
+ <li><a href="/users.php">Find Users</a></li>
437
+ <li><a href="/recentadditions">RSS</a></li>
438
+ <li><a href="/tags/cloud">Tag Cloud</a></li>
439
+ <li><a href="/users?showavatar=1">Avatars</a></li>
440
+ <li><a href="/forum/88/boardgamegeek/bgg-bugs">Bugs</a></li>
441
+ <li><a href="/microbadges">Microbadges</a></li>
442
+ <li><a href="/geekads/manager">Ad Manager</a></li>
443
+ <li><a href="/geekexchange/browse">GeekExchange</a></li>
444
+ <li><a href="/collection/current">GeekCurrent</a></li>
445
+ </ul>
446
+ <div class='clear'></div>
447
+ <div class='submenu_header'>Add to Database</div>
448
+ <ul>
449
+ <li><a href="/item/create/boardgame">Board Game</a></li>
450
+ <li><a href="/item/create/boardgameaccessory">Accessory</a></li>
451
+ <li><a href="/item/create/boardgameperson">Person</a></li>
452
+ <li><a href="/item/create/boardgamepublisher">Publisher</a></li>
453
+ <li><a href="/item/create/boardgamefamily">Family</a></li>
454
+ <li><a href="/item/create/boardgamepodcast">Podcast</a></li>
455
+
456
+ </ul>
457
+ </div>
458
+ </div>
459
+ </li>
460
+
461
+ <li class='js-tablist'>
462
+ <a href="#"><div class='fl'>Help</div><span><div class="arrow"><img class='icon' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='></div></span></a>
463
+ <div class='dn'>
464
+ <div class='menutab-open' style='width:125px;'>
465
+ <ul>
466
+ <li><a href="/wiki/page/BoardGameGeek+FAQ">FAQ</a></li>
467
+ <li><a href="/wiki/page/Guide_To_BoardGameGeek">Guide To BoardGameGeek</a></li>
468
+ <li><a href="/wiki/page/Glossary">Glossary</a></li>
469
+ <li><a href="/wiki/page/Admins">Admins</a></li>
470
+ </ul>
471
+ </div>
472
+ </div>
473
+ </li>
474
+
475
+
476
+ </ul>
477
+ </div>
478
+
479
+ <div class='clear-both'></div>
480
+ </div>
481
+ </td>
482
+
483
+ <td width='100%'>
484
+ <div id='quickbar'>
485
+ <div class='status' id='quickbar_status'></div>
486
+ <div id='quickbar' class='menu_quickbar'>
487
+ <table width='100%' id='module_quickbar'>
488
+ <tr>
489
+ <td>
490
+ <div class='quickbar_pager'>
491
+ <a href="javascript://" onclick="LoadQuickBar( 1 );" class='b'>1</a><a href="javascript://" onclick="LoadQuickBar( 2 );" >2</a><a href="javascript://" onclick="LoadQuickBar( 3 );" >3</a><a href="javascript://" onclick="LoadQuickBar( 4 );" >4</a><a href="javascript://" onclick="LoadQuickBar( 5 );" >5</a><a href="javascript://" onclick="LoadQuickBar( 6 );" >6</a><a href="javascript://" onclick="LoadQuickBar( 7 );" >7</a><a href="javascript://" onclick="LoadQuickBar( 8 );" >8</a><a href="javascript://" onclick="LoadQuickBar( 9 );" >9</a><a href="javascript://" onclick="LoadQuickBar( 10 );" >10</a>| <a href="/quickbar/edit/1">Edit</a>
492
+ </div>
493
+
494
+ <table class='sf'>
495
+ <tr>
496
+ <td class='quickbar_link'>
497
+ <a href="http://www.boardgamegeek.com/geeklist/160770">BGG 2013 Virtual Flea Market</a>
498
+
499
+ </td>
500
+ <td class='quickbar_link'>
501
+ <a href="http://www.boardgamegeek.com/game/12">RA</a>
502
+
503
+ </td>
504
+ </tr><tr>
505
+ <td class='quickbar_link'>
506
+ <a href="http://www.boardgamegeek.com/geeklist/47269/print-play-productions-prototypes">Board Game Parts</a>
507
+
508
+ </td>
509
+ <td class='quickbar_link'>
510
+ <a href="http://www.boardgamegeek.com/metasearch.php?searchtype=game&amp;search=age+of+steam&amp;B1=Go">age of steam + maps</a>
511
+
512
+ </td>
513
+ </tr><tr>
514
+ <td class='quickbar_link'>
515
+ <a href="http://www.boardgamegeek.com/geeklist/57532/winsome-games-reprint-requests-petitions">Winsome Reprints</a>
516
+
517
+ </td>
518
+ <td class='quickbar_link'>
519
+ <a href="http://www.boardgamegeek.com/metasearch.php?searchtype=game&amp;search=ticket+to+ride&amp;B1=Go">Ticket to Ride (All)</a>
520
+
521
+ </td>
522
+ </tr><tr>
523
+ <td class='quickbar_link'>
524
+ <a href="http://www.boardgamegeek.com/geeklist/55845/artscow-decks-i-have-ordered">Brett&#039;s Artscow decks</a>
525
+
526
+ </td>
527
+ <td class='quickbar_link'>
528
+ <a href="http://www.boardgamegeek.com/collection/user/Geekdo?own=1&amp;subtype=boardgame&amp;ff=1">BGG Library Collection</a>
529
+
530
+ </td>
531
+ </tr><tr>
532
+ <td class='quickbar_link'>
533
+ <a href="http://www.boardgamegeek.com/metasearch.php?searchtype=game&amp;search=DVONN%7CTZAAR%7CYINSH%7CGIPF%7CZERTZ%7CPUNCT&amp;B1=Go">GIPF Series</a>
534
+
535
+ </td>
536
+ <td class='quickbar_link'>
537
+ <a href="http://www.boardgamegeek.com/geeklist/22030">The GIMP&#039;s Guide To Image Editing</a>
538
+
539
+ </td>
540
+ </tr><tr>
541
+ </tr>
542
+ </table>
543
+
544
+ </td>
545
+ </table>
546
+ </div>
547
+ </div>
548
+ </td>
549
+
550
+ </tr>
551
+ </table>
552
+
553
+ <table width='100%'>
554
+ <tr>
555
+
556
+ <td valign='top' >
557
+ <table width='100%'>
558
+ <tr>
559
+ <td valign='top'>
560
+
561
+ <div id='main_content'>
562
+
563
+
564
+
565
+ <div class='messagebox error'>
566
+ Invalid object or user
567
+ </div>
568
+ </div>
569
+ </td>
570
+
571
+ </tr>
572
+ </table>
573
+ </td>
574
+ </tr>
575
+ </table>
576
+ </div>
577
+
578
+ <table width='100%' align='center' style='margin-top:20px;'>
579
+ <tr>
580
+ <td align='center'></td>
581
+ </tr>
582
+ <tr>
583
+ <td align='center'>
584
+ <table>
585
+ <tr>
586
+ <td class='sf' align='center' valign='middle' colspan=3>
587
+ <a href="/">Front Page</a>
588
+ | <a href="/wiki/page/Welcome_to_BoardGameGeek">Welcome</a>
589
+ | <a href="/contact">Contact</a>
590
+ | <a href="/privacy">Privacy Policy</a>
591
+ | <a href="/terms">Terms of Service</a>
592
+ | <a href="/geekads/buy">Advertise</a>
593
+ | <a href="/support">Support BGG</a>
594
+ | <a href="/recentadditions">Feeds</a>
595
+ <a href="/recentadditions"><img class='icon i_silk_feed' title='' alt='RSS' style='' src='data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==' /></a>
596
+ <div class='smallerfont' style='margin-bottom:1em;'>
597
+ Geekdo, BoardGameGeek, the Geekdo logo, and the BoardGameGeek logo are trademarks of BoardGameGeek, LLC.
598
+ </div>
599
+
600
+ <div>
601
+
602
+ </div>
603
+
604
+ </td>
605
+ </tr>
606
+ </table>
607
+ </td>
608
+ </tr>
609
+ </table>
610
+ </div>
611
+
612
+ <a href="/geekbay/block"></a>
613
+
614
+ <script>
615
+ angular.bootstrap( document, ['geekmodule'] );
616
+ </script>
617
+
618
+ <script type="text/javascript">
619
+ var _gaq = _gaq || [];
620
+ _gaq.push( ['_setAccount', 'UA-104725-1']);
621
+ _gaq.push( ['_setDomainName', '.boardgamegeek.com']);
622
+ _gaq.push( ['_setCustomVar', 1, 'loggedin', '1' ]);
623
+ _gaq.push( ['_trackPageview'] );
624
+ _gaq.push( ['_trackPageLoadTime'] );
625
+
626
+
627
+
628
+ (function() {
629
+ var ga = document.createElement('script');
630
+ ga.type = 'text/javascript';
631
+ ga.async = true;
632
+ ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
633
+ var s = document.getElementsByTagName('script')[0];
634
+ s.parentNode.insertBefore(ga, s);
635
+ } )();
636
+ </script>
637
+
638
+
639
+
640
+ <!-- Quantcast Tag -->
641
+ <script type="text/javascript">
642
+ var _qevents = _qevents || [];
643
+
644
+ (function() {
645
+ var elem = document.createElement('script');
646
+ elem.src = (document.location.protocol == "https:" ? "https://secure" : "http://edge") + ".quantserve.com/quant.js";
647
+ elem.async = true;
648
+ elem.type = "text/javascript";
649
+ var scpt = document.getElementsByTagName('script')[0];
650
+ scpt.parentNode.insertBefore(elem, scpt);
651
+ })();
652
+
653
+ _qevents.push({
654
+ qacct:"p-24_p-AKYmF5zs"
655
+ });
656
+ </script>
657
+ <noscript>
658
+ <div style="display:none;">
659
+ <img src="//pixel.quantserve.com/pixel/p-24_p-AKYmF5zs.gif" border="0" height="1" width="1" alt="Quantcast"/>
660
+ </div>
661
+ </noscript>
662
+ <!-- End Quantcast tag -->
663
+
664
+
665
+ <div id='geekextjs'></div>
666
+ </body>
667
+ </html>