Commit graph

254 commits

Author SHA1 Message Date
Rob
2ecf6dfec6 Log when we prevent keystrokes so that we can solve a crazy bug. 2015-12-02 12:03:27 -08:00
Nick Winter
0d65d73024 Finish merging master into courses-vhoc 2015-12-02 10:10:50 -08:00
Nick Winter
88ee363576 Add schoolName field to AuthModal 2015-12-01 17:44:03 -08:00
Nick Winter
8e1143b519 Add schoolName field to AuthModal 2015-12-01 17:32:02 -08:00
Rob
38a4ca4ec0 Load fonts locally when in development. 2015-12-01 16:47:11 -08:00
Scott Erickson
0c45e3f96c Add ClassroomView, incomplete 2015-11-30 14:14:27 -05:00
Nick Winter
95c703a7df Simulate games in background while playing levels if we think there's extra compute power 2015-11-29 12:30:19 -08:00
Matt Lott
e7acf9c798 🐛Fix local env analytics log event URL
Found another one @basicer
2015-11-25 16:33:27 -08:00
Rob
4dde97153c Don't panic if we didn't load stripe. (Makes game run offline). 2015-11-24 13:42:00 -05:00
Nick Winter
ef72286864 Don't autoplay hero or course levels by default. Fix Course: Known Enemy autocomplete string format. 2015-11-15 07:59:20 -08:00
Matt Lott
5ca68ff682 🐛Fix analytics dashboard date oboe 2015-11-11 20:21:35 -08:00
Matt Lott
1c0550ff9f 🐛Fix admin analytics date bugs 2015-11-10 17:26:15 -08:00
Scott Erickson
d9d5dce2e0 Merge branch 'master' into course-correction 2015-11-10 16:34:33 -08:00
Nick Winter
2259076800 LoadingScreen -> level intro behavior 2015-11-10 15:22:09 -08:00
Matt Lott
e33323e7eb Add line charts to admin analytics dashboard
https://app.asana.com/0/54276215890539/64369256136957
2015-11-10 14:55:48 -08:00
Scott Erickson
0c5b39e029 Merge branch 'master' into course-correction
Some package scripts got in the way of each other
2015-11-09 18:18:02 -08:00
Scott Erickson
7d686c5194 Add Backbone events to stripe handler 2015-11-05 15:31:25 -08:00
Scott Erickson
b36bf7b171 Add PurchaseCoursesView 2015-11-05 15:30:57 -08:00
Matt Lott
722540f3be Remove old user analytics page 2015-11-04 10:59:10 -08:00
Matt Lott
d445024cb6 Add admin analytics page with MAUs
Includes updating analytics insert script used to inject aggregated
data into production database.
2015-11-04 10:59:10 -08:00
Scott Erickson
66432990f4 Add framework for new courses pages 2015-11-03 16:41:06 -08:00
Nick Winter
f100d6dba6 Merge pull request #3118 from codecombat/soffes/ipad
[WIP] Changes for iPad app
2015-10-29 16:24:39 -07:00
Scott Erickson
31367f39c1 Add class "ie10" to body when using IE10 2015-10-28 11:33:36 -07:00
Matt Lott
38242eb55e Add /Careers routing entry 2015-10-26 20:39:40 -07:00
Scott Erickson
94d29d2e8a Move trailing slash removal to client Router, make client route "/play/" work for facebook 2015-10-21 16:55:48 -07:00
Sam Soffes
d2052980c4 Send sign out message directly 2015-10-16 15:02:33 -07:00
Sam Soffes
59f987e105 Check for new iPad User-Agent 2015-10-16 14:42:25 -07:00
Matt Lott
708f78153b Route /hoc to courses
When in HoC mode:
Students have an option to play through as a single player, in addition
to entering a code to join an existing class.
Teachers get the normal course enrollment flow, without a sales blurb
on /courses.
2015-10-12 16:25:23 -07:00
Matt Lott
7390f2d1e4 Separate URLs for /courses/students and /courses/teachers 2015-10-07 14:37:41 -07:00
Matt Lott
5095eac4ac Purchase prepaid on course instance creation
Updating purchase prepaid API to support courses.
Refactoring the prepaid server code.

Completes #54270567235517
2015-10-01 15:23:20 -07:00
Nick Winter
079e3a59f5 Update iPad app detection for iOS 9 2015-10-01 09:23:18 -07:00
Matt Lott
95319ecc3e Redirect /careers to Lever page 2015-09-25 15:49:00 -07:00
Matt Lott
928f72e2cf Merge branch 'prepaid-v2' into master 2015-09-25 10:28:27 -07:00
Matt Lott
feef9c0ac6 🐛Fix instance selection on /courses page 2015-09-24 17:52:00 -07:00
Nick Winter
49279367d1 Fix facebook.coffee linting issue 2015-09-21 14:16:08 -07:00
Matt Lott
3ad13c9a0d Add /careers page 2015-09-14 17:38:18 -07:00
Matt Lott
a2577cc521 Update courses landing page 2015-09-10 10:39:21 -07:00
Nick Winter
0d2d1ddad0 A couple mirror match ladder tweaks. Made programmableMethods other code languages use proper code formatting. 2015-09-07 18:00:48 -07:00
Matt Lott
9131d8668f Course enroll page
Will add a prepaid purchase once the prepaid-v2 branch is merged into
master.
2015-09-03 11:04:52 -07:00
Matt Lott
8de00767b3 Initial courses object model 2015-08-29 07:15:39 -07:00
Matt Lott
e8a4fd9336 Courses UI: update purchase/continue flow
Don’t show unlock code entry to teachers
Don’t show existing class selection or purchase course to students
Update copy to make it clearer what’s going on
2015-08-23 14:33:07 -07:00
Matt Lott
9e222d0873 Add subscription sale
Give a discount for purchasing a year
New sale button on subscribe modal
New subscription sale landing page
2015-08-21 11:19:39 -07:00
Nick Winter
da0b7d3e64 Merge pull request #2955 from codecombat/leagues
Leagues!
2015-08-19 15:34:54 -07:00
Nick Winter
11f9238a91 Added Robot Ragnarok limited time challenge. 2015-08-19 12:16:48 -07:00
Nick Winter
32ca453dec Added /play/ladder/levelID/clan/clanID clan-specific ladder pages. 2015-08-15 06:45:38 -07:00
Matt Lott
978f0df7d3 🐛Fix InspectletJS script loading
Original embed code was not correct for delayed script loading.
2015-08-14 14:02:19 -07:00
Matt Lott
38efeb119c Courses UI - take class size as buy input instead of bucketizing 2015-08-04 15:33:02 -07:00
Matt Lott
9547bd1021 Add sales copy to beginning of courses landing page 2015-08-04 15:33:02 -07:00
Matt Lott
da6cf60381 Target specific levels with InspectletJS
Currently targeting cupboards-of-kithgard.
2015-08-03 15:52:52 -07:00
Nick Winter
15ecc92abc Adding 'course' type levels. Removing 'campaign' type levels. 2015-07-24 17:37:42 -07:00
Matt Lott
0a2248393d Update course details mock UI
Add student concepts progress.
Add level status and concepts covered.
Add mostly working level Play button.
2015-07-09 17:53:35 -07:00
Matt Lott
e36cf0ca3f Initial courses mock UI
Do not localize these files.
This is under construction.
2015-06-29 12:15:10 -07:00
tahmidshahriar
6ac3ea9f5f Fixed not found page 2015-06-24 14:46:59 -07:00
Nick Winter
4e08d453b7 Added some code for the glacier world. 2015-06-08 13:20:54 -07:00
Matt Lott
d7cddcb136 Teacher trial subscription form
Add a teacher survey form for applying for a free trial subscription
for evaluation purposes.
Add an admin trial requests review page, where admins can approve/deny
requests.
2015-06-05 06:48:19 -07:00
Nick Winter
def6709c52 Added /identify page. 2015-04-30 13:36:32 -07:00
Nick Winter
80af32180c Fixed #1638: detect and automatically report unrecoverable world loading errors, plus adding better instructions for checking dev console. We can't recover yet, but having eyes on it will hopefully give us better visibility on this kind of error. 2015-04-25 17:29:02 -07:00
Nick Winter
ea54c4a8e3 Keeping GPLUS_TOKEN_KEY in localStorage forever. 2015-04-18 19:41:34 -07:00
Nick Winter
a1199a0121 Fixed #343. Fixed #2565. localStorage cache now only lasting a week for most items, using lscache (bower install, y'all). 2015-04-18 17:25:40 -07:00
Nick Winter
114b0f4937 Fixed typo in last commit. 2015-04-18 16:08:31 -07:00
Nick Winter
75b3361efe Fixed #2390. Fixed #2391. Added hero-ladder and replayable particles to campaign level banners, plus replayable difficulty indicators. 2015-04-13 17:07:13 -07:00
Matt Lott
32b48a3c4c Clans v1 UI with mock data
Main clans view shows public list, user’s clans, and create clan form.
Clan details view shows clan details and members list.
2015-03-31 13:28:57 -07:00
Nick Winter
0b1bb6a4aa Added admin/pending-patches view. Fixed accepting several kinds of patches. Added keyboard shortcuts for accepting (a) and rejecting (r) patches. Fixed #2490. Fixed #2515. Fixed #2304. 2015-03-28 13:54:44 -07:00
Matt Lott
53de6c6134 Add current subscription counts view under the admin page 2015-03-27 15:27:34 -07:00
Nick Winter
b4ea78e5cb Implementing alternative pricing with Alipay in China to support dedicated China server. 2015-03-23 15:26:44 -07:00
Nick Winter
c6cd7b032d Fixed Alipay auto locale detection. 2015-03-18 17:17:30 -07:00
Nick Winter
3236abc5da Added emphasis for Apocalypse. 2015-03-17 21:20:26 -07:00
Matt Lott
af89452b93 Merge branch 'sponsored-subs' 2015-03-13 15:19:20 -07:00
Nick Winter
3458f2069b Temporary workaround for #2512. Identifying ageRange. Made poll header slightly smaller. 2015-03-11 20:21:54 -07:00
Matt Lott
6db4d72dc4 Track pageviews for manual calls to navigate 2015-03-09 12:57:10 -07:00
Nick Winter
e21360127d Polls! 2015-03-08 16:36:17 -07:00
Matt Lott
cd59b90e37 Add custom payments
Example:
https://codecombat.com/account/invoices?a=21600&d=9%20monthly%20subscrip
tions
2015-03-04 15:40:53 -08:00
Nick Winter
e6cf298ed3 Propagated i18n. A couple other misc tweaks. 2015-03-04 09:00:32 -08:00
Nick Winter
2d18bcf9f0 Recording referrer information. Updating parent email prompt to also show after Signs and Portents if that's the fourth level. 2015-03-03 09:04:53 -08:00
Nick Winter
bb80db9cd5 Server now thinks it's production whenever it's not localhost:3000, rather than whenever it is codecombat.com. 2015-03-01 22:19:01 -08:00
Matt Lott
86d167394e Remove Segment analytics dependency
Call Google Analytics, Errorception, and Inspectlet directly.
2015-02-27 16:07:41 -08:00
Michael Schmatz
d0d622445f Fixed tracking for non production environments 2015-02-27 14:44:06 -05:00
Michael Schmatz
4efb73d8d7 Switch to new analytics server 2015-02-27 13:45:10 -05:00
Nick Winter
df4b98a9bf Added a new 'artisan' permission, which can edit most of the things admins can, but with less uncomfortable ultimate power. 2015-02-25 18:41:39 -08:00
Nick Winter
15ca65f226 Further disabled employer portal for now. 2015-02-25 12:38:51 -08:00
Nick Winter
4cbbcdad6d Merge pull request #2359 from laituan245/master
Added ability to delete account
2015-02-24 09:30:22 -08:00
laituan245
a588a3b2c8 Some updates to the PR #2359 2015-02-25 02:12:39 +09:00
Nick Winter
ab252adf90 Better detection and error handling of unsupported WebGL context creation failures. 2015-02-19 19:57:10 -08:00
Nick Winter
1795891933 Added new pow function for simulated ladder games achievement. 2015-02-18 09:06:32 -08:00
Scott Erickson
52e5dc4719 Removed another instance of the old scope, for #2067. 2015-02-13 11:24:06 -08:00
Scott Erickson
9b86e5872f Fixed #2067 2015-02-13 11:18:00 -08:00
Nick Winter
1aa738b256 Fixed up headless client, I hope. 2015-02-12 16:07:19 -08:00
Nick Winter
2efb6aafbc Fixed #1632. 2015-02-11 16:12:26 -08:00
Nick Winter
5ee6eaf8b4 Fixed audio upload nodes to work in Firefox. Fixed #445. 2015-02-11 15:52:15 -08:00
Nick Winter
d09636306c Toggling all plausibly-buggy AJAX requests to cache: false for better IE behavior. Look out for bugs! 2015-02-11 13:12:54 -08:00
Matt Lott
9bda187f90 Add terrain to loaded world map event 2015-02-10 14:20:18 -08:00
Matt Lott
c4620a7b2d Refactor analytics event logging
Clean up property slimming.
Save explicit identity traits in properties.
2015-02-09 15:03:04 -08:00
Scott Erickson
b686a7f4a1 Fixed running tests with karma. 2015-02-05 13:58:07 -08:00
Nick Winter
60d68ca23c Fixed some memory leaks and particle disposal problems. Re-enabled particles. Tweaked particle stylings. 2015-02-02 18:02:57 -08:00
Nick Winter
1e410e0b14 Worked around bug with item portraits disappearing after item purchase. Fixed #1980. 2015-01-31 14:38:54 -08:00
Nick Winter
936ebf67a7 Fixed #2140. 2015-01-31 13:18:32 -08:00
Popey Gilbert
8098c76ba5 Changed Particles 2015-01-31 10:08:54 -08:00
Nick Winter
fd0e7a8c44 Picked some slightly less awful particle colors for different terrains and level types. Enabled for half the players. 2015-01-29 18:19:03 -08:00
Nick Winter
5addacddf0 First draft of ParticleMan particle emitters for showing hidden levels in CampaignView. 2015-01-29 16:11:13 -08:00
Nick Winter
57d12c199e Tweaks to campaign status view. Hooking up i18n for Campaigns, but it doesn't work yet. 2015-01-29 09:07:25 -08:00
Nick Winter
22070ddff2 Identifying lastLevel to Segment. Added Ogre Headhunter names. 2015-01-28 17:58:56 -08:00
Matt Lott
ffb59d5cec Disable prod admin internal analytics tracking 2015-01-20 14:18:31 -08:00
Matt Lott
116c7d0bf2 Update internal analytics
Adding level session ID where applicable.
Slimming down fields for most common events.
2015-01-15 11:04:52 -08:00
Matt Lott
c5977c00fe Add shortened fields to analytics.log.event
We’ll remove the old long fields after we’ve got enough data to switch
over our analytics queries without complication.
2015-01-14 17:51:34 -08:00
Matt Lott
140a93b453 Log world map and homepage events internally
Need these for conversion rates.
2015-01-14 11:09:56 -08:00
Matt Lott
3fd5f49220 Analytics data revamp
Add analytics per-day aggregation collection.
Add analytics strings collection.
Add per-day aggregation mongo insertion script.
Update campaign editor to use aggregation collection.
Update queries to use _id instead of created field.
2015-01-14 11:09:01 -08:00
Scott Erickson
82eb47bf5f Fixed #1056. 2015-01-09 12:56:48 -08:00
Scott Erickson
c8298679a4 Tweaked achievement notification handling, also disabling an endless loop of achievement fetching. 2015-01-09 12:38:00 -08:00
Matt Lott
29c6b7c9f1 Prune internal analytics event data 2015-01-09 09:27:33 -08:00
Matt Lott
bc93a2b181 Update campaign editor analytics
Restrict level view completion rates to unique users. Super slow, perf
work to do here.
Increase level view completion rate date range to 2 weeks.
Increase level view average playtimes date range to 2 weeks.
Display player name if available in level view recent sessions.
2015-01-08 16:01:49 -08:00
Matt Lott
c54fea929e Update campaign editor analytics
Optimize analytics.log.event user event data find() to use stream()
instead of exec(), which is better for large result sets
Fix startDay formatting bug
Per-level recent sessions to 100
2015-01-07 14:49:24 -08:00
Nick Winter
9272ceb23e Trying to restore functionality of achievement plugin but without memory leak. 2015-01-05 21:57:23 -08:00
Scott Erickson
ba1ffe194c Deferring user creation until after the client app loads, to try and lower the massive number of anonymous users that are created. 2015-01-05 14:43:20 -08:00
Scott Erickson
1446f77a17 Refactored away from having the underscore string library added to the String prototype. 2015-01-04 08:05:46 -08:00
Nick Winter
c2d74a812d Updates to require/restrict level logic. 2015-01-02 15:44:43 -08:00
Nick Winter
588e0266af Fixed ordering problem I introduced with /play/ladder routes. 2014-12-28 13:55:20 -08:00
Nick Winter
744d30737e Merged in campaign editor and campaign view. Destroyed WorldMapView, CampaignOptions, and LevelOptions. Lots of stuff is now stored in the database instead of code. Cleaned up a few unneeded old features. Fixed some problems with checking permissions on first rather than latest versions of documents. 2014-12-28 13:25:20 -08:00
Scott Erickson
0dd2d9efbd Handled merge conflict. 2014-12-22 12:33:52 -05:00
Nick Winter
e8d185a860 Embedding level completion checklist inside the level editor. 2014-12-20 20:01:07 -08:00
Nick Winter
f26b43f8a5 Fixed floor y scaling. Fixed issues with client-side disabling of new model / fork / revert population actions without permissions. Ameliorated some ensure_comprehensions warnings. 2014-12-20 16:02:41 -08:00
Scott Erickson
0cd85d7aba Got the CampaignView mostly off the hardcoded data. 2014-12-19 16:46:01 -05:00
Scott Erickson
59318b2f78 Merge branch 'master' into feature/campaign-editor 2014-12-19 12:54:11 -05:00
Scott Erickson
b63b4d64da More work on the CampaignEditorView. Data gets saved to models now. 2014-12-17 22:53:04 -08:00
Nick Winter
fe0c89e433 Reverting 1167655f and 30ed0a0e to re-enable the analytics log handler. 2014-12-17 21:54:56 -08:00
Scott Erickson
1cc6a97e43 Added basic campaign view, working on campaign handlers. 2014-12-16 17:46:24 -08:00
Matt Lott
1167655faf Disable internal event tracking
Tracking down a server CPU issue.
2014-12-16 16:38:17 -08:00
Matt Lott
c76662c967 Log analytics events internally 2014-12-15 11:45:12 -08:00
Matt Lott
5817553d54 Remove virtual page view tracking
Wasn’t useful, and distorts our GA real page view analytics.
2014-12-15 10:28:40 -08:00
Scott Erickson
e5c5f0ba04 Fixed Karma client test runner. 2014-12-12 13:12:35 -08:00
Scott Erickson
02953d0e6c Set up a subscription page with subscription info and the subscribe button, taking that logic out of the payments page. 2014-12-10 13:42:12 -08:00
Scott Erickson
46f7bbaaf5 Fixed client tests. Also updated mock-ajax to the latest version, carrying over my own tweaks. 2014-12-09 13:41:44 -08:00
Nick Winter
a97baa2207 HoC sale. 2014-12-09 06:06:14 -08:00
Matt Lott
a21a2f7c8f Add tracking for FB and G+ signups 2014-12-08 15:00:49 -08:00
Matt Lott
fcafe5e249 Add a bit more Tracker debug info 2014-12-08 11:34:41 -08:00
Matt Lott
343ad28761 Fix IE9 missing console object
Debugging IE9 without debugging tools, when the debugging tools are
kind of the problem.  Fun.
2014-12-07 15:24:15 -08:00
Scott Erickson
b976a11d65 Removed the module loader modal, replaced with a simple progress bar at the top of the screen. 2014-12-06 13:11:47 -08:00
Matt Lott
774260769d Update pageview tracking
Based on more feedback from segment.io support.
Still trying to get Google Analytics virtual pageviews to work
correctly.
2014-12-02 13:25:18 -08:00
Scott Erickson
3675c79b26 Hotfix for #1828. Still doesn't figure out why user preferredLanguage properties are being set to null. 2014-12-02 13:19:05 -08:00
Scott Erickson
7f3f1a6038 Set up aether module loading, but it's not working, so creating a branch until it works. 2014-12-01 15:43:22 -08:00
Matt Lott
b2b25f354c Narrow pageview tracking to only Google Analytics 2014-12-01 14:53:11 -08:00
Matt Lott
35adea61e0 Update trackPageView integrations call
Based on feedback from segment.io support.  Was unclear from
documentation how to provide only name and options object.
2014-12-01 13:58:21 -08:00
Scott Erickson
43ac0e8572 Proxied 'lib/auth' to 'core/auth' for the iPad which can't be updated so quickly. 2014-12-01 10:35:45 -08:00
Matt Lott
2ecda7dbbf Fix trackPageView options initialization 2014-11-30 15:28:01 -08:00
Matt Lott
02eb254eba Add virtual pageviews for level load and complete 2014-11-30 14:14:47 -08:00
Matt Lott
94ae4bf6aa Updating analytics integration selection
Context property has been renamed from providers to integrations.
https://segment.com/docs/libraries/analytics.js/#selecting-integrations
2014-11-29 22:16:18 -08:00
Scott Erickson
be809337c4 Refactored to make TreemaUtils generally available but TreemaNode only available for views that need it. 2014-11-29 17:51:40 -08:00
Scott Erickson
3a4eaa718f Did what I needed to do to get d3 to not be loaded during play: refactored the ladder views out of the play wad, and got the Router to handle viewClass being a string rather than a fully loaded module. 2014-11-29 16:46:51 -08:00
Scott Erickson
6fccae579a Made d3 load dynamically for the pages that use it. Refactored a bunch of templates and sass files to have their names match with their respective views. 2014-11-29 15:31:56 -08:00
Nick Winter
155ead86cf Removed unneede catiline lib. Trying speedups for updating HUD property values and Lank Thang inventory. 2014-11-29 13:09:38 -08:00
Scott Erickson
9b5228afd9 Refactored the GameMenu to be part of play.js. Set up the config to automatically bundle templates into their respective views, if their names match. 2014-11-29 12:46:04 -08:00