Commit graph

36 commits

Author SHA1 Message Date
Matchu
ca6a573c0a Add user:owns/wants back to item search
Not so bad, using a condition on `has_many` `through` was a cute trick!!
2023-07-28 15:06:33 -07:00
Matchu
f997513e87 Update to new scope syntax
Ohh ok, without this change all of our `scope`s were just immediately evaluating the argument and fetching _all_ such matching records immediately, instead of waiting to actually be called. This led to bugs like `pet_type.as_json` returning ALL pet states in the whole db, because the `PetState.emotion_order` scope was being treated as a single predefined query, rather than a query fragment to merge into the current context.

This also explains what happened in 724ed83: that's why things before the scope in the query were being ignored.
2023-07-22 14:04:01 -07:00
Matchu
dcf254a78d finally let people remove all items from the list at once.
I've been doing this manually via email for a long time,
since building new stuff in the logged-in world was a pain in the old env.

But now here we are! Finally, finally :)
2015-07-19 12:35:49 -04:00
ebb0a75b72 whoops; if no contact neopets username, return nil 2014-04-25 23:04:59 -05:00
b2fca6b6c1 closet hangers index uses neopets connections dropdown 2014-01-18 22:50:14 -06:00
72b174c9b3 store all neopets usernames for logged-in users, but breaks closet_hangers#index 2014-01-18 21:55:01 -06:00
8288b8a10d username form, backed by localstorage for guests; not yet backed by db for logged-in users 2014-01-17 11:12:56 -06:00
6b340f906e Cache trade info on items#show, finally! I think it's the performance culprit. 2013-12-27 14:49:46 -05:00
9e3cac82ec use proxies for item html, too
Some lame benchmarking on my box, dev, cache classes, many items:

No proxies:
    Fresh JSON:  175,  90,  90,  93,  82, 88, 158, 150, 85, 167 = 117.8
    Cached JSON: (none)
    Fresh HTML:  371, 327, 355, 328, 322, 346 = 341.5
    Cached HTML: 173, 123, 175, 187, 171, 179 = 168

Proxies:
    Fresh JSON:  175, 183, 269, 219, 195, 178 = 203.17
    Cached JSON:  88,  70,  89, 162,  80,  77 = 94.3
    Fresh HTML:  494, 381, 350, 334, 451, 372 = 397
    Cached HTML: 176, 170, 104, 101, 111, 116 = 129.7

So, overhead is significant, but the gains when cached (and that should be
all the time, since we currently have 0 evictions) are definitely worth
it. Worth pushing, and probably putting some future effort into reducing
overhead.

On production (again, lame), items#index was consistently averaging
73-74ms when super healthy, and 82ms when pets#index was being louder
than usual. For reference is all. This will probably perform
significantly worse at first (in JSON, anyway, since HTML is already
mostly cached), so it might be worth briefly warming the cache after
pushing.
2013-06-26 23:50:19 -07:00
5e55423dca now that we're on rails 3.2, mount resque at /resque - just for
meeeeee :)

`User#admin?` is now defined as `name == 'matchu'`. I feel kinda
bad about hardcoding that, but I also don't care enough right
now :P
2013-03-05 21:09:08 -06:00
a80f70bb88 phew, fixed some issues with contribution saving in rails 3.2 2013-03-05 20:51:24 -06:00
f3d64840d6 filter lists on petpage export 2012-04-08 15:59:51 -05:00
285c7858c0 app can now load environment even if schema not yet loaded 2011-09-06 11:15:09 -05:00
63bc0067c0 user#assign_closeted_to_items! now assigns when there are duplicates 2011-08-03 10:18:03 -04:00
75961abc17 privacy for unlisted hangers 2011-07-30 19:45:28 -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
6d155ecaf1 show owned/wanted icons and search filters 2011-07-22 16:52:40 -04:00
c5103b6557 neomail link on closets 2011-07-20 15:16:22 -04:00
3a193d534d closeted icon, all over the place 2011-07-14 13:56:44 -04:00
1c84a4bef9 closet page, closet hanger 2011-07-14 13:56:20 -04: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
bcffdc0630 stop using radio and label for pet states, to fix ie bug 2011-02-07 08:46:15 -05:00
8c8776ff63 devise implemented, but not remembering 2011-01-26 13:40:15 -05:00
ca155314fa home page caching, reset top contributors only when necessary 2010-12-11 09:37:39 -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
6b92c2aa33 loading current user outfit list, deleting outfits, toggling star 2010-11-11 13:43:22 -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
446a117ec8 top contributors 2010-11-06 12:15:10 -04:00
a5b119a9bc contributions viewing 2010-11-06 11:52:58 -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