Commit graph

710 commits

Author SHA1 Message Date
9c8f7f498f basic translation infrastructure for items - search is still english-only, and probably will have to be replaced with a legit search engine 2013-01-24 18:24:34 -06:00
d79c225c1e apply globalize3 to items 2013-01-24 18:24:34 -06:00
b213f6d0ba i18n for closet_hangers#index, closet_lists#edit, closet_lists#new, and maybe some more closet-related things - this was a biggie 2013-01-24 18:23:19 -06:00
c32425bc14 i18n for neopets_pages#new 2013-01-24 18:23:19 -06:00
ac0490dc1d i18n for items#show (including javascripts/items/show.js) 2013-01-24 18:23:19 -06:00
5e89e2b947 i18n for items#index (and layouts#items) 2013-01-24 18:23:18 -06:00
132a49d30b i18n for outfits#new (and layouts#application), including caching 2013-01-24 18:23:18 -06:00
bfd825d98e attempt to fix new species_support_ids format. sigh. 2013-01-23 00:25:09 -06:00
9701221035 wardrobe now considers item.species_support_ids when deciding compatibility
For example, the Meerca Maid Tray is a foreground item, so the SWF is marked
as compatible with all body types, but the item itself is clearly marked as
Meercas-only. items#show reflected this properly, but the swf_assets#index
call that the wardrobe uses ignored item.species_support_ids.

So, /bodies/:body_id/swf_assets.json?item_ids[]=... was deprecated in favor
of /pet_types/:pet_type_id/items/swf_assets.json?item_ids=[]..., which is
much like the former route but, before loading assets, also loads the pet
type and items, then filters the items by compatibility, then only loads
assets for the compatible items.
2013-01-02 23:15:32 -05:00
339a730779 timeout on background jobs 2012-11-04 12:01:03 -06:00
f56b544963 brought-to-you-by on items#show lists contributors 2012-10-24 22:09:05 -05:00
671641cc16 a more forgiving "type" search filter 2012-10-08 21:20:18 -05:00
775ef7fa51 finally fix encased in ice - woo! 2012-10-05 20:56:52 -05:00
9fcc1b244a bug fix: pet importer no longer chokes when two pets wear the same item 2012-10-01 13:22:17 -05:00
ddec043209 support pea chia cape in infinite closet 2012-09-29 12:40:55 -05:00
7dfc6d81a2 add timeout to pet load 2012-08-11 18:47:25 -04:00
412c401c5f better cache items#show 2012-08-10 00:02:11 -04:00
99669b8e4e cache homepage latest contribution 2012-08-09 22:59:35 -04:00
f6d34841ec cache newest items on homepage and items#index 2012-08-09 22:35:30 -04:00
1e3938eea9 improve closet performance by caching item link 2012-08-09 19:34:56 -04:00
4a69772cd2 remove N+1 queries on current user outfits page 2012-08-09 18:32:33 -04:00
72237f225c modeling hub 2012-08-06 21:15:31 -04:00
2435c7f7e9 oh shoot, properly unlink outfit tempfiles now... 2012-08-01 21:30:22 -04:00
82c4a8d4b4 on creating outfit image, skip broken images instead of throwing exception 2012-07-31 12:05:49 -04:00
2b88ce9b4b use openneo-uploads bucket 2012-07-31 11:42:27 -04:00
ec40e6ae67 new outfit image filename: preview instead of thumb, one more partition level 2012-07-31 10:41:13 -04:00
05acae3cb8 retroactively enqueue outfit images 2012-07-31 10:20:37 -04:00
42827362b6 optimize outfit image generation - 4x speed boost on my box
Use the ImageMagick flatten command to generate the output all at
once instead of compositing each layer individually, and download
the layers in parallel. On my box, saving roopal27 five times took
a total of 30 seconds before, whereas now it takes 7 seconds. I
expect it to be even better on the production box, where latency
is even lower.
2012-07-27 23:07:20 -04:00
374c7e6147 Sharing now fully supports saved outfits, not just shared ones 2012-07-26 23:47:22 -04:00
7b5856ebf9 basic sharing
Sharing pane works, everything is great for guests. Logged in
users are on the way, since right now Share Outfit re-saves
anonymously rather than showing sharing data for the existing
outfit.
2012-07-17 12:15:04 -04:00
cf2546d832 basic image thumbnails 2012-07-16 16:47:28 -04:00
7c015e2d88 carrierwave for asset swfs 2012-07-16 16:45:26 -04:00
5a5b5fffc7 outfit default url 2012-07-16 16:45:26 -04:00
220aca9311 outfit thumbnails initial commit 2012-07-16 16:45:26 -04:00
22cfff66e9 outfits now know their own visible assets 2012-07-16 16:40:07 -04:00
644fac99da improve gender/mood sorting using new labels 2012-06-20 16:10:53 -04:00
6cdf1567f8 fix error loading lookups when given pet name has trailing spaces 2012-06-05 13:28:59 -04:00
b25b6e55b3 ignore errors loading gender/mood data
For example, the site was throwing a 500 error when loading pets
belonging to frozen users. Instead, we'll now rescue that
Neopets::User::AccountDisabledError and ignore it, since it's not
*vital* that we load gender/mood data from this pet; we can still
proceed to load its customization data without it.
2012-06-05 13:02:49 -04:00
c2c6a800f2 track pet state gender/mood 2012-05-23 20:00:38 -04:00
4e7e98beca use Neopets::User for username-based closet imports 2012-05-21 12:48:19 -04:00
f3d64840d6 filter lists on petpage export 2012-04-08 15:59:51 -05:00
44156c5b21 can now have the same item in more than one list 2012-03-23 16:25:10 -05:00
7795119a8c fix gender/emotion states with corridor of chance effects sorting to the front
So it turns out this was just one of those things I forgot to fix
the big database restructure came along: we were comparing
swf_asset.remote_id against parents_swf_assets.swf_asset_id, which
are two different identifiers entirely. Now using swf_asset.id,
so fixed :)
2012-03-15 17:01:21 -05:00
baae0c9954 fix bug where some pet states would also show many items on top of them
At first I thought this was an error in the data migration process when moving SWF assets
to having their own unique IDs, but then realized that the query for a pet state's SWFs
didn't include the (parent_type = 'Item') condition. Oops. Turns out, I only connected the
items to parent_swf_asset_relationships polymorphically. Pet states were still doing it the
hackish way. Set the pet states to use the lovely polymorphic relationship and we're good
to go.
2012-02-21 13:25:11 -06:00
4d314417e2 fix parent-swf-asset-relationship destruction bug
After changing the database structure, we lost the feature where, once we discover
new assets for an item for a given body ID, we disconnect previously connected
assets. This commit reinstates that feature.
2012-01-26 13:51:30 -06:00
4566bca906 another attempt to fix pet state rel autosave 2012-01-13 16:11:44 -06:00
bcb5644b12 stop autosaving biology swf rels 2012-01-13 16:02:14 -06:00
ec3088fdec ensure that pet state is saved before trying to save its assets 2012-01-13 15:56:31 -06:00
171d691a98 fix nc mall spider for remote ID 2012-01-13 15:27:30 -06:00
ec9e997ac5 fix user:owns id ambiguity 2012-01-13 15:20:47 -06:00
9c0c7b78cf another oops, better fix 2012-01-12 22:02:12 -06:00
c2c0fe92e8 oops, be consistent in using remote ID when loading pets 2012-01-12 21:47:17 -06:00
696b2aedaf give SWFs real, unique ID numbers
Lots of scary bugs were being caused by the fact that the possibly-duplicate Neopets ID
was being treated as an SWF's real primary key, meaning that a save meant for object swf
number 123 could be saved to biology swf number 123. Which is awful.

This update gives SWFs their own unique internal ID numbers. All external lookups still use
the remote ID and the type, meaning that the client side remains totally unchanged (phew).
However, all database relationships with SWFs use the new ID numbers, making everything
cleaner. Yay.

There are probably a few places where it would be appropriate to optimize certain lookups
that still depend on remote ID and type. Whatever. Today's goal was to remove crazy
glitches that have been floating around like mad. And I think that goal has been met.
2012-01-12 17:17:59 -06:00
cc23f7435b automatically rezone bio 2011-10-31 16:22:24 -05:00
f7723ac1c8 automatically rezone items 2011-10-23 14:09:53 -05:00
285c7858c0 app can now load environment even if schema not yet loaded 2011-09-06 11:15:09 -05:00
b50b9d237d allow broken image resubmits after 1hr 2011-08-07 20:43:42 -04:00
7358aae680 report broken images 2011-08-07 18:23:44 -04:00
4e74589118 privacy bug: would show hangers even in private lists as Trading if unlisted hangers were marked Trading 2011-08-06 23:15:32 -04:00
a4feee89b5 allow the new items migration to run. sigh 2011-08-04 10:04:15 -04:00
d99a1ad792 newest items 2011-08-04 10:01:44 -04:00
b939c7fce6 Merge branch 'closet' 2011-08-03 11:35:07 -04:00
2398f34071 import items from pets 2011-08-03 11:35:06 -04:00
c2648c5343 Merge branch 'closet' 2011-08-03 10:33:21 -04:00
63bc0067c0 user#assign_closeted_to_items! now assigns when there are duplicates 2011-08-03 10:18:03 -04:00
2dd6586ea6 Merge branch 'closet' 2011-08-02 22:42:59 -04:00
513711bf60 import sdb as well as closet 2011-08-02 22:42:56 -04:00
fed5ccb7fb Merge branch 'closet' 2011-08-01 00:00:40 -04:00
2f0b0743e8 throw a search error on user:owns when user owns no items 2011-07-31 23:50:33 -04:00
f6ed50a62f Merge branch 'closet' 2011-07-31 23:05:26 -04:00
30096f6b0a items petpage export 2011-07-31 02:52:19 -04:00
137aeac8d4 show traders on items#show 2011-07-31 00:19:28 -04:00
0c92bf5987 set list visibility in closet_lists#edit 2011-07-30 22:34:27 -04:00
34a4ef201a privacy dropdowns moved to be more out of the way 2011-07-30 22:08:38 -04:00
75961abc17 privacy for unlisted hangers 2011-07-30 19:45:28 -04:00
c76c261444 validate that closet hanger list belongs to the same user 2011-07-29 13:47:01 -04:00
358840076c closet lists, round one 2011-07-29 10:52:04 -04:00
b86ce67c02 first pass at closet lists, including form 2011-07-26 20:27:23 -04:00
033e71e9bf parameterize user params like items, plus a cleaner parameterization scheme 2011-07-26 18:49:52 -04:00
c592459d02 improve Your Items copy given the different groups 2011-07-26 18:41:15 -04:00
d9f94ae3fa Your Items page aware of wanting items 2011-07-22 17:55:05 -04:00
12f5b28c94 wardrobe now works with owned/wanted 2011-07-22 17:06:21 -04:00
6d155ecaf1 show owned/wanted icons and search filters 2011-07-22 16:52:40 -04:00
85af53417b distinguish between owning and wanting an item 2011-07-22 15:35:38 -04:00
946001243a attempt to fix production bug with relationships not always saving 2011-07-22 15:08:17 -04:00
c5103b6557 neomail link on closets 2011-07-20 15:16:22 -04:00
884ad2d5b8 user:owns in item search 2011-07-17 17:24:29 -04:00
fab612950a basic hanger interface from item 2011-07-14 13:56:44 -04:00
3a193d534d closeted icon, all over the place 2011-07-14 13:56:44 -04:00
a33898a393 import closet page 2011-07-14 13:56:20 -04:00
6ebacc99dd closet page saving backend 2011-07-14 13:56:20 -04:00
1c84a4bef9 closet page, closet hanger 2011-07-14 13:56:20 -04:00
1caa296359 capitalize each word of a species/color name (for Swamp Gas) 2011-07-12 18:22:16 -04:00
714f2fddf5 sort unconverted to the end, too 2011-06-21 22:56:42 -04:00
99a23fc2cb sort effects to the end of the gender/emotion list 2011-06-21 20:42:41 -04:00
43f373fc36 use resque-retry to reschedule failed jobs 2011-06-21 11:22:45 -04:00
9eaeadaa8c delete tmp dir after converting swfs 2011-06-10 14:45:33 -04:00
cf94c7ef59 utf-8 support in both ruby 1.9 and 1.8 2011-06-04 18:40:15 -04:00
4e919aca04 ree compatibility 2011-05-31 10:36:32 -04:00
b57043e0d2 Merge branch 'images' 2011-05-22 16:34:31 -04:00
6c9ddac8dd totally pro wardrobe image adapter, via konami 2011-05-22 16:30:02 -04:00
926f2a5350 improve swf image request enqueue on creation 2011-05-22 13:10:29 -04:00
3d05bbeeed instead of crashing in mall spider when pet not found, delete pet and find a new one 2011-05-21 22:32:01 -04:00
740693018b sitemap.xml 2011-05-20 20:49:48 -04:00
183430adb6 remove non-alphanumeric chars from item pretty urls
mainly because they were causing the router to freak out when they
contained periods, because that looks like a format, e.g. show.html
2011-05-20 19:50:06 -04:00
c18a333bd2 pretty item urls 2011-05-20 19:29:04 -04:00
b13fd7ae99 moving toward s3 image storage 2011-05-20 19:19:14 -04:00
883ecde836 convert_swf! method runs 2011-05-14 10:25:11 -04:00
27f3111b65 remove warnings on each environment boot about modifying StandardBodyIds 2011-05-13 08:26:06 -04:00
648649f5cc support special colors in the infinite closet 2011-05-02 18:07:56 -04:00
d7d2d5f0e5 include share button for logged in users, too 2011-03-28 17:29:03 -04:00
1207e84804 nice page to view current user's outfits 2011-03-23 18:23:01 -04:00
838f89c8fb save user even if points do not change. oops 2011-03-01 15:32:26 -05:00
dfea1a1097 add extra error tracking to saving user, too 2011-02-23 16:01:43 -05:00
abb29aae4b hopefully raise more descriptive error message when contribution fails to save 2011-02-22 18:45:53 -05:00
8ff6c5ad9c pet state order fix, and maybe some contribution fixes 2011-02-22 17:54:20 -05:00
3aeeac3bfc maybe the redundant += contributions for user is triggering the RecordNotSaved exception. remove that line and see what happens 2011-02-21 12:02:45 -05:00
a8ab993a31 support pet names with illegal characters by not including them in pet type image hash updates 2011-02-19 23:09:59 -05:00
2a7fea11e6 handle timeout errors for pet data, swfs, pet images 2011-02-19 22:49:13 -05:00
ea4ec0f99d gracefully handle connection errors with neopets servers 2011-02-19 22:09:12 -05:00
fa14232473 allow guests to share outfits 2011-02-10 17:50:47 -05:00
bcffdc0630 stop using radio and label for pet states, to fix ie bug 2011-02-07 08:46:15 -05:00
bb1f10c60b Merge branch 'fixleak' 2011-02-05 10:33:39 -05:00
b1015c9a5c species check was in the wrong place. fixed 2011-01-27 17:50:08 -05:00
8a36155994 hopeful roulette species support ids fix 2011-01-27 17:46:20 -05:00
7152cd0c50 check species compatibility before adding to roulette list 2011-01-27 17:36:19 -05:00
d2e8e9e009 fix bug causing roulette to sometimes choose items in same zone 2011-01-27 16:52:43 -05:00
4b66a560e7 roulette system :) 2011-01-27 16:35:46 -05:00
8c8776ff63 devise implemented, but not remembering 2011-01-26 13:40:15 -05:00
1e8ec13bfe move to unstable rocketamf so that it builds hashes from registries, not arrays 2011-01-13 17:22:07 -05:00
ca155314fa home page caching, reset top contributors only when necessary 2010-12-11 09:37:39 -05:00
ca9e1fb0ca cache item show pages as a first try :) 2010-12-08 20:15:46 -05:00
8847a87fd9 clear sold_in_mall flag for items not currently sold in mall, add sold_in_mall flag to items we found that are already in our database 2010-12-05 16:06:48 -05:00
b45faa6753 Merge branch 'mall_spider' 2010-11-27 18:51:08 -05:00
3d29f7784f asset spider, yaaay 2010-11-27 18:41:06 -05:00
8447667f62 Merge branch 'bugmash' 2010-11-25 21:33:37 -05:00
99fb6b984f ensure that we're only returning item assets for items and biology assets for pet states 2010-11-25 21:33:34 -05:00
d63da31ac2 add rake items:mall_spider
includes allowing null on some item fields, and putting the swf_assets
type and id index in an actual migration, or this commit would have removed
it upon migrating
2010-11-25 11:10:21 -05:00
e2d48a67df sort colors by name on frontpage, in wardrobe 2010-11-24 21:17:24 -05:00
63ae4558b1 ensure that we're looking only at biology assets when saving new pet states 2010-11-20 10:35:59 -05:00
a196c43253 stop -type:x queries from lagging out due to group by optimization blah 2010-11-19 16:31:58 -05:00
8b159c02bd catch species not found errors in search 2010-11-18 23:25:34 -05:00
badc2e6b3c good negative type search filter; limit type filters to one per query to prevent conflicts 2010-11-18 23:21:03 -05:00
d33723aa84 implement condition negation manually, since removed from arel 2 2010-11-17 00:30:17 -05:00
6903752933 dodge weird arel bug by preloading basic pet types 2010-11-17 00:12:14 -05:00
1f1c219005 fix species:x bug on new arel, start tracking unintended search exceptions 2010-11-16 23:32:53 -05:00
60ab4db8c1 rails 3.0.3, negating arel condition is not(c) instead of c.not now 2010-11-16 17:26:06 -05:00
e92e9947b8 rake task to, hopefully, repair duplicate pet state ids cleanly 2010-11-15 21:15:33 -05:00
8e6a34b69c fix contributions for pet states and items
dependent contributables would only count as contributed if their parent
was being contributed for the first time, too. the trick was to delay
actually *assigning* them to their parents until the very, very end
2010-11-15 17:56:16 -05:00
2501e6e21f use basic image hash on items stuff 2010-11-14 23:14:04 -05:00
f99c7527d0 prevent bad behavior when no unworn items 2010-11-14 22:31:41 -05:00
9b0cf8b597 show outfit page 2010-11-13 17:26:27 -05:00
51f3650ce2 save current outfit, save copy 2010-11-13 08:50:37 -05:00
e3ca78203b require unique outfit names for each user 2010-11-12 21:10:01 -05:00
01ccf1aaca fix some bugs with item loading
whole outfit saved on toggleStar, which was not intended
saving and then loading an outfit on same session glitched on clone
2010-11-12 16:31:01 -05:00
6b92c2aa33 loading current user outfit list, deleting outfits, toggling star 2010-11-11 13:43:22 -05:00
1dd2ccb00b lovely interface for saving outfits. still no reading them yet 2010-11-10 16:59:54 -05:00
7db0beec75 points for bulk pet adding 2010-11-06 19:07:15 -04:00
d10ab2615f actually contributing things, yay 2010-11-06 18:08:45 -04:00
ef004cc6cb needed objects 2010-11-06 13:07:12 -04:00
446a117ec8 top contributors 2010-11-06 12:15:10 -04:00
a5b119a9bc contributions viewing 2010-11-06 11:52:58 -04:00
db56b0d218 start from scratch home js 2010-11-05 20:17:42 -04:00
c8acdc4e8d working home page 2010-11-05 18:45:05 -04:00
895c6e721e auth works - yaaay 2010-10-18 17:58:45 -04:00
e40d4601d8 a functioning wardrobe 2010-10-10 22:18:42 -04:00
5c34b79186 move from deprecated def before_save to before_save do 2010-10-10 14:43:01 -04:00
33711f6fc6 quick pets controller to redirect to wardrobe 2010-10-10 14:33:54 -04:00
16629926fb ignore effects in pet biology 2010-10-09 12:40:55 -04:00
3b92bea537 remove swf asset conflicts (same parent id, body id), fix glitch in items with existing swf assets 2010-10-09 12:22:40 -04:00
3eee2633bd set body id to 0 when appropriate 2010-10-09 11:35:36 -04:00
3ab730135f check if items are compatible before saving 2010-10-09 11:06:59 -04:00
04138ac4a7 full saving pets, serving assets directly from this domain 2010-10-09 10:53:58 -04:00
ff629b9419 pet type now loads image hash on save 2010-10-08 10:53:28 -04:00
bb233359d8 core of pet loading, still needs get image hash, download assets 2010-10-07 10:46:23 -04:00
c93066e679 is:pb filter for deluxe paint brush items 2010-10-03 20:14:48 -04:00
3c473bee2c nice pretty upgrade to item show page 2010-09-08 22:49:39 -04:00
460a406bd5 add rarity index to json output for nc ui 2010-09-08 20:07:09 -04:00
844be37abe is:nc filter 2010-07-10 12:42:18 -04:00
fbba36005e distribute items as jsonp 2010-06-22 13:00:55 -04:00
8e69d38ff7 refactoring search, removing database from set, fixing show.js to work with new swf 2010-06-22 12:42:25 -04:00
f9bbd3cb94 items can scope by occupying zone 2010-06-10 00:51:53 -04:00
9671a02ecc zones are now a static resource, like species and color. database table remains for compatibility with main PHP app 2010-06-09 23:15:51 -04:00
37372544b0 alter item swf asset routes to allow for page caching 2010-06-08 18:26:42 -04:00
10f6d721e1 add only:species filter 2010-06-08 17:25:27 -04:00
c8f20b2f34 zones_restrict respected in preview 2010-06-07 19:50:49 -04:00
5e5032d671 bulk preloading item assets after 5 seconds, to be able to show reds more quickly 2010-06-07 16:33:43 -04:00
240a070281 put id, body id, etc in HTML 2010-06-07 16:08:53 -04:00
e20a936368 sort species list 2010-05-20 22:09:55 -04:00
743ec4d910 restrict item swf assets by fitting body id 2010-05-20 21:30:12 -04:00
82c2ff6206 ensure that we are only selecting biology assets when we want biology assets, objects when objects, etc 2010-05-20 21:23:24 -04:00
7fc59745e5 pet state models now own assets, not pet types 2010-05-20 21:11:08 -04:00
cccfe08eb5 include body ID in asset JSON 2010-05-20 20:25:36 -04:00
8411d4c64a swf asset json for pet types 2010-05-20 19:56:08 -04:00
a5866a19e3 zone model in order to be able to include depth for swf_asset JSON 2010-05-20 19:04:56 -04:00
8baa09d633 whoops - that was in the wrong spot. move swf_asset_parent.rb, refactor a bit 2010-05-19 19:17:33 -04:00
7a32b9c894 both items, pet types own assets 2010-05-16 20:45:30 -04:00
66c43e220a move species supported images for item show into pet_type method 2010-05-16 16:15:21 -04:00
f6dce65dfb add color model, have it and species descend from PetAttribute 2010-05-16 15:44:32 -04:00
f69f64f18f pet type model, controller 2010-05-16 15:33:56 -04:00
230026597b groundwork for preview, swf asset and relationship model 2010-05-16 15:01:38 -04:00
fd61838946 add error for invalid species in search 2010-05-15 18:23:23 -04:00
1de7df3c4a restrict search filters to description, species 2010-05-15 15:00:53 -04:00
80b1bf7c61 modify search behavior - require 3 characters, remove description searches to description: filter, consider items with no species support IDs to support all 2010-05-15 14:56:21 -04:00
3062dd9376 pagination for results 2010-05-15 14:14:17 -04:00
8519f9131b item presentation is neat 2010-05-15 14:01:15 -04:00
ae09fe0515 item search throws exception if not given query 2010-05-15 13:28:34 -04:00
5b86e640b0 negate search conditions 2010-05-15 12:43:54 -04:00
851aa49091 basic specs for items, including search 2010-05-15 11:38:45 -04:00
fb73d23db8 basic framework for items 2010-05-14 18:41:40 -04:00