1
0
Fork 0
forked from OpenNeo/impress
Commit graph

367 commits

Author SHA1 Message Date
Matchu
7f8f7e624d Remove references to the Stripe gem
Rather than figure out how to upgrade the Stripe gem to be compatible with future Rails, I'd rather just delete the references, since it's currently unused.

I'm not so bold as to go in and fully trash all our donation code; I just want to ensure we're not sending people down broken codepaths, and that if they reach them, the error messages are clear enough.
2023-07-21 18:54:15 -07:00
Emi Dunn-Rankin
515b089b3b
Update terms link to point to DTI 2020
There's a new terms page over there! Use that instead, and update the lil footer to change the date it was last modified (8 years wow!)
2022-09-25 06:11:34 -07:00
3ae8a265b2
Use Fastly to cache our PNG assets from S3
We've been serving images directly from `impress-asset-images.s3.amazonaws.com` for a long time. While they serve with long-lasting HTTP cache headers, and the app requests them with the `updated_at` timestamp in the query string; each GET request still executes a full S3 ReadObject operation to get the latest version.

In the past, this was only relevant to users on Image Mode, not Flash Mode. But now that everyone's on Image Mode, this matters a lot more!

Now, we've configured a Fastly host at `impress-asset-images.openneo.net`, to sit in front of our S3 bucket. This should dramatically reduce the GET requests to S3 itself, as our cache warms up and gains copies of the most common asset PNGs.

That said, I'm not sure how much actual cost impact this change will have. Our AWS console isn't configured to differentiate cost by bucket yet—I've started this process, but it might take a few days to propagate. All I know is that our current costs are $35/mo data transfer + $20/mo storage, and that outfit images are responsible for most of the storage cost. I hypothesize that `impress-asset-images` is responsible for most of the reads and data transfers, but I'm not sure!

In the future, I think we'll be able to bring our AWS costs to near-zero, by:
- Obsolete `impress-asset-images`, by using the official Neopets PNGs instead, after the HTML5 conversion completes.
- Obsolete `impress-outfit-images`, by using a Node endpoint to generate the images, fronted by a CDN cache. (Transfer the actual data to a long-term storage backup, and replace the S3 objects with redirects, so that old S3 URLs will still work.)

I hope this will be a big slice of the costs though! 🤞

(Note: I'll be deploying this on a bit of a delay, because I want to see the DNS propagate across the globe before flipping to a new domain!)
2021-05-12 22:50:05 -07:00
Matt Dunn-Rankin
822efede84 undo accidental commit
These credentials were never used, and are now revoked. Awkward!
2017-01-06 19:54:17 -08:00
Matchu
e6a2b978f1 oh huh. looks like remove/move are ready. 2015-09-26 19:55:09 -07:00
Matchu
621c768921 Select All + visual feedback 2015-09-26 14:22:11 -07:00
Matchu
4ae43f61ea good-enough zeroclipboard implementation 2015-09-24 20:50:27 -07:00
Matchu
4a539f32db hope I did this swfimages fix right xD 2015-08-05 20:22:23 -04:00
Matchu
4a18f22571 camo the emotes on the campaign show page 2015-08-05 19:41:42 -04:00
Matchu
5d2c226357 yum, new campaigns 2015-08-05 19:26:12 -04:00
Matchu
b9a9ce3890 import from gallery
some of the stuff to support single-pageiness feels a bit hacky. ah, well :P
2015-07-28 15:05:40 -04:00
Matchu
deb0aa90f0 refactor importing 2015-07-27 13:25:24 -04: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
Matchu
625f1ee8b4 mount the resque app regardless of admin status if in development 2015-07-18 01:05:10 -04:00
Matchu
f6a95ddac5 oooops, carrierwave wants s3 config in prod, too 2015-07-17 18:26:43 -04:00
Matchu
a29fbbbd40 move some deploy stuff from files into env 2015-07-17 17:47:58 -04:00
Matchu
7c2600af9f the dev version of neopia has a hostname now :D 2015-07-16 22:37:32 -04:00
Matchu
647c767c31 latest i18n gem cares is stricter about locales, so configure better. this works, right? :x 2015-07-16 18:59:45 -04:00
Matchu
0d6caceb24 improve app infrastructure to make a dev environment easier to reproduce
This commit will require a few changes to the deployment process:
* store AWS credentials in AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY env vars
* store OpenNeo Auth credentials in OPENNEO_AUTH_APP, OPENNEO_AUTH_SERVER, and OPENNEO_AUTH_SECRET env vars

STRIPE_SECRET_KEY and STRIPE_PUBLISHABLE_KEY are now required, too; better have a good .env.
You can always put in dummy values if you have no credentials, though; they only get called up if there's a transaction.

SECRET_TOKEN is now an env var, too, but the production deploy process currently replaces config/initializers/secret_token.rb anyway; this might be the way to go later, though.
2015-07-16 17:44:52 -04:00
093ae27ae8 get upset when we neopets.com bans us :P 2015-07-15 00:09:17 -04:00
b0cc4c2396 swf links 2015-05-03 16:57:42 -05:00
bf9f9ed82e download links for each image size 2015-05-03 16:37:24 -05:00
caaf524060 download link in left sidebar 2015-05-03 16:01:08 -05:00
026bdbbc0c warn users with trading lists but no neomail address 2014-12-02 10:05:11 -06:00
0e301db987 vandagyre basic colors (ugh, should be in database) 2014-11-14 19:33:30 -06:00
04a328e6ee homepage outfit features 2014-09-10 15:38:26 -05:00
f11f6374da donation mailer 2014-09-10 14:32:54 -05:00
59d5e99312 donation show form and basic name updating 2014-09-09 22:04:17 -05:00
595b1c2fc5 charge and record donations 2014-09-09 21:11:55 -05:00
05841d091b update terms 2014-08-25 20:57:07 -05:00
79a96b7670 lookup link alongside neomail 2014-05-15 22:34:00 -07:00
eda80a8dc7 double whoops; the actual problem was that i hadnt restarted the background workers :P 2014-04-05 23:52:24 -05:00
9fe19e00c7 whoops; now that we index by item fit, update item after asset save 2014-04-05 23:48:36 -05:00
44ff466a64 advanced search by pet type fit :) 2014-04-05 18:48:20 -05:00
0fe31ee79a basic fits functionality in search 2014-04-05 17:43:54 -05:00
acbec2ad5e design mockup for autofilter; no new behavior yet 2014-04-05 17:16:35 -05:00
a375707e40 handle errors from neopia, finally! 2014-04-04 15:53:53 -05:00
d25d2b3398 big picture mode 2014-04-04 14:36:35 -05:00
6086243e37 on second thought, no dots after owns/wants filter labels 2014-04-02 23:51:54 -05:00
ad1aa8e42c advanced search i18n 2014-04-02 22:06:45 -05:00
369ea7d1bd oops, removed wrong examples 2014-04-02 21:38:56 -05:00
250af4487c remove search.examples i18n 2014-04-02 21:35:08 -05:00
3c36cd6aef assign biology assets to restricts and item assets to occupies 2014-04-02 20:56:42 -05:00
2f0f10a0c7 while we're here, bump order of magnitude on outfit count
we also now have tens of thousands of users, but that bump makes it
flow worse, so whatever :P
2014-04-02 14:37:40 -05:00
ed9c828373 remove accents from pt search filters
It's still recognized if the user types it, but we're going to be
doing more query transforms now, so we don't want to mislead folks
into thinking that we require the accents xP
2014-04-02 10:32:13 -05:00
f9fa3eb596 prank color artist credit 2014-03-31 21:05:28 -05:00
2ed3f3d4c6 more abstraction 2014-03-28 15:22:21 -05:00
32bab89ed4 add prank messages to outfits#show 2014-03-28 15:15:04 -05:00
8e93d603fa list prank colors as fake on the homepage, unless pranks are funny today 2014-03-27 22:44:18 -05:00
63b34435c7 ugh, add react.js manually :( 2014-01-20 14:35:28 -06:00
7928514342 add react.js to precompile list 2014-01-20 14:18:30 -06:00
00841e45d2 modeling i18n 2014-01-20 13:56:19 -06: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
fd106d7dba basic modeling buttons
no behavior yet, nor are they filtered
2014-01-10 16:25:03 -05:00
1b0a636fab i18n the unmodeled newest items content 2014-01-10 16:25:03 -05:00
949fa2a77a i18n newest items headers 2014-01-10 16:25:02 -05:00
342f8ef859 remove unused outfits.new.newest_items.header i18n key 2014-01-10 16:25:02 -05:00
7c6e607612 basic neopia api integration 2014-01-10 16:25:02 -05:00
fef87d664a ugh, why are basic hashes in a yaml file instead of the database? :( 2014-01-10 16:23:54 -05:00
6b340f906e Cache trade info on items#show, finally! I think it's the performance culprit. 2013-12-27 14:49:46 -05:00
f07996d762 cache pet images on items#show, in case that's what's being a super-slow jerkface 2013-12-05 15:22:43 -06:00
8bd7ad5a1e support manually uploaded swf asset images - not the actual uploading, but block them from being reconverted 2013-10-16 15:50:48 -05:00
daf1f140fb pet rate limit is now 3/30sec 2013-07-02 20:50:34 -07:00
4acc0e22c8 bulk pet loader rate limits itself 2013-07-02 14:10:24 -07:00
abe35c6fd9 throttle pet loads per ip 2013-07-02 14:10:01 -07:00
349a83123c oops: set flex config.hangers_enabled before the line that checks for its presence 2013-06-11 11:22:17 -07:00
bf528b06d2 label pet states as glitched, send to bottom of emotion order 2013-04-27 10:21:51 -05:00
fae0a48bb7 re-enable closet hanger indexing 2013-04-23 22:27:59 -05:00
3c91f0cde0 import items to a specific list 2013-04-09 15:50:33 -05:00
cc4e2904a1 swfimages cloudfront domain 2013-03-06 20:17:44 -06:00
c7237d7d44 fix a bunch of precompiled-asset-missing errors 2013-03-05 22:26:14 -06:00
59be3c9d66 faster asset compilation by not initializing app 2013-03-05 21:52:31 -06:00
a66311140f Merge branch 'rails_3_2_12' 2013-03-05 21:10:01 -06: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
cf5191d33c phew. rails 3.2.12, including some asset pipeline. still buggy. 2013-03-05 20:08:57 -06:00
3cd06c9f64 resque will reconnect to database after each job to avoid Gone Away errors 2013-03-05 15:14:29 -06:00
250f425509 rails 3.1 upgrade - still buggy 2013-03-05 15:10:25 -06:00
f547a75c40 ruby 2.0.0 compatibility... hopefully. 2013-02-25 01:14:45 -05:00
4921ed964a es 2013 02 19: default human names for color/species, fix item pronoun in contributions 2013-02-19 11:16:41 -06:00
4090bb3c86 pt 2013 02 19: default human names for color/species 2013-02-19 11:09:27 -06:00
b3f048b922 es goes public! 2013-02-16 21:39:04 -06:00
475a4a6709 pt 2013 02 16 2013-02-16 21:37:14 -06:00
01eb34132a es 2013 02 16 2013-02-16 21:36:22 -06:00
1c0b5c743e better handle new colors and species 2013-02-15 23:57:06 -06:00
989363f743 better i18n for contributed description 2013-02-12 11:45:54 -06:00
423e105ec1 es first draft 2013-02-11 23:25:22 -06:00
21095edc98 pt 2013 02 09 2013-02-09 18:56:31 -06:00
5e37063674 Merge branch 'i18n' 2013-02-04 19:12:01 -06:00
bc02ae8386 pt is ready for primetime ^_^ 2013-02-04 19:11:54 -06:00
dad57ebea2 small pt yaml syntax update 2013-02-04 19:09:05 -06:00
7f2ce2839b appearance dropdown - wow, that was easy 2013-01-31 19:46:34 -06:00
5985e234da pet states know their localized description 2013-01-31 19:11:15 -06:00
9efd2fe83a have new relic trace flex methods 2013-01-31 18:39:51 -06:00
36b216a6e8 update pt 2013-01-30 21:00:52 -06:00
9a9eea86ec fully disable closet hangers in production 2013-01-30 20:21:27 -06:00
9c6797699e enable hangers in development, disable in production 2013-01-29 23:06:37 -06:00
71d9dc44cd substring-ish item name indexing using ngrams+keyword 2013-01-29 23:00:45 -06:00
9fc643152e production elasticsearch search config 2013-01-28 18:29:28 -06:00
a9cdabda49 apparently this fixes resque for spawning child processes. okay. 2013-01-28 03:55:36 -06:00