Commit graph

3706 commits

Author SHA1 Message Date
Nick Winter
82c4367308 Avoid \n escape character in i18n strings for tooling 2016-07-28 13:47:23 -07:00
Nick Winter
d77625bc77 Game dev levels (#3810)
* Tweak API doc behavior and styling

* Instead of moving to the left during active dialogues, just move to the top
* Allow pointer events
* Adjust close button
* Re-enable pinning API docs for game-dev and web-dev levels

* Make sidebar in PlayGameDevLevelView stretch, better layout columns

* Set up content of PlayGameDevLevelView sidebar to scroll

* Add rest of PlayGameDevLevelView sidebar content, rework what loading looks like

* Finish PlayGameDevLevelView

* Add share area below
* Cover the brown background, paint it gray

* Tweak PlayGameDevLevelView

* Have progress bar show everything
* Fix Surface resize handling

* Fix PlayGameDevLevelView resizing incorrectly when playing

* Add GameDevVictoryModal to PlayGameDevLevelView

* Don't show missing-doctype annotation in Ace

* Hook up GameDevVictoryModal copy button

* Fix onChangeAnnotation runtime error

* Fix onLevelLoaded runtime error

* Have CourseVictoryModal link to /courses when course is done

* Trim, update CourseDetailsView

* Remove last vestiges of teacherMode
* Remove giant navigation buttons at top
* Quick switch to flat style

* Add analytics for game-dev

* Update Analytics events for gamedev

* Prefix event names with context
* Send to Mixpanel
* Include more properties

* Mostly set up indefinite play and autocast for game-dev levels

* Set up cast buttons and shortcut for game-dev

* Add rudimentary instructions when students play game-dev levels

* Couple tweaks

* fix a bit of code that expects frames to always stick around
* have PlayGameDevLevelView render a couple frames on load

* API Docs use 'game' instead of 'hero'

* Move tags to head without combining

* Add HTML comment-start string

Fixes missing entry point arrows

* Fix some whitespace
2016-07-28 13:39:58 -07:00
Matt Lott
b7f916116d Add game UI programming language label 2016-07-28 12:00:52 -07:00
Rob
4d8d4ff268 Defer breakage of Concept Map if we don't have esper. 2016-07-27 16:55:10 -07:00
Rob
b7fcaa50a6 Change keyword autocomplete logic. 2016-07-27 16:37:57 -07:00
Rob
6c9f351f01 Group concept map by campaign. 2016-07-27 14:17:37 -07:00
Rob
75e3c54d54 Add concept map view to artisans. 2016-07-27 13:44:55 -07:00
Scott Erickson
ac4df997c1 Display treema errors 2016-07-26 16:48:04 -07:00
Scott Erickson
8117a000c1 Fix PlayLevelView race condition typo 2016-07-26 10:38:15 -07:00
Scott Erickson
053ce34faf Prevent users from signing up with or changing to an email-like username 2016-07-25 16:33:48 -07:00
Scott Erickson
34310642c7 Add destudent and deteacher buttons to AdministerUserModal 2016-07-25 16:09:24 -07:00
phoenixeliot
f1f020a50d Use course.releasePhase instead of .adminOnly
Remove old comment
2016-07-25 11:29:30 -07:00
Matt Lott
9962ff83d4 Level editor play classroom options 2016-07-23 21:03:19 -07:00
Nick Winter
ea61499a10 Add Done button hotkey 2016-07-22 17:59:32 -07:00
phoenixeliot
cac87559c6 Remove frequent console logs in web levels 2016-07-22 10:43:08 -07:00
phoenixeliot
f9d0adaca6 Fix levelType refactor 2016-07-22 10:43:08 -07:00
Scott Erickson
b1c69b686c Add admin button to update course content for classrooms 2016-07-21 15:16:17 -07:00
Matt Lott
01679982d5 Remove intro/overview from guide game menu
Unless picoCTF
Will show guide option if non-course and help videos.
2016-07-21 11:11:11 -07:00
phoenixeliot
b1277dc95f Merge branch 'game-dev-levels' 2016-07-21 10:14:22 -07:00
phoenixeliot
2ebf94c3db Combine extracted script/style tags 2016-07-20 17:20:21 -07:00
phoenixeliot
f28c17c9bf Fix spacing to be consistent 2016-07-20 15:47:20 -07:00
phoenixeliot
62813e41a3 Extract styles and scripts 2016-07-20 15:44:01 -07:00
Matt Lott
72905c7ff2 Reduce Mixpanel event tracking
Turning off homepage events and play pageviews.
2016-07-20 14:45:13 -07:00
phoenixeliot
58284dff33 Turn on Ace HTML worker for syntax errors 2016-07-19 11:30:02 -07:00
Matt Lott
01a8312617 🐛Classroom last played string null level check 2016-07-19 10:10:48 -07:00
phoenixeliot
1d616cd92a Fix indentation 2016-07-18 10:46:51 -07:00
phoenixeliot
bb6262483f Allow username-only signup for classroom users
Address some code review feedback

Correct error code in test

Don't try to send emails to empty addresses

Add tests for subscriptions

Add tests for Next Steps email

Fix specs

Add reason for disabled test
2016-07-18 10:41:17 -07:00
Matt Lott
607c129c7f School active licenses admin page 2016-07-18 09:41:42 -07:00
Nick Winter
f94cc2ec1f Fix CS1, CS2, GD1, WD2, CS3, etc. labeling in TeacherClassesView, too 2016-07-17 01:12:58 -07:00
Nick Winter
6e65171a83 i18n, comments, misc cleanup 2016-07-17 00:53:17 -07:00
Nick Winter
b04e968da5 Add support for CSS docs 2016-07-16 23:17:05 -07:00
Nick Winter
5d0b9c875a Fix some typos that made it not work in Firefox (not sure how it worked in Chrome) 2016-07-16 13:32:54 -07:00
Nick Winter
0cd3278b8f Add simple ImageGalleryView for some sample images in web-dev levels 2016-07-16 13:11:43 -07:00
Nick Winter
d37527d21b Ordering/labeling courses: CS1, CS2, GD1, WD1, CS3, etc 2016-07-16 00:35:52 -07:00
Nick Winter
dc6a1de9fa Ordering/labeling courses: CS1, CS2, GD1, WD1, CS3, etc 2016-07-16 00:33:10 -07:00
Nick Winter
b64bcd9f02 Use shareable false/true/'project' for different levels of shareability 2016-07-15 23:26:43 -07:00
Nick Winter
6ae89e31f1 Add direct link to play game/web-dev creations while coding them 2016-07-15 22:14:25 -07:00
Nick Winter
5d26b03918 Add buttons to view game/web-dev levels to courses views 2016-07-15 21:57:04 -07:00
Nick Winter
5f95a4d158 Play game-dev levels without API restrictions. Show game button in CourseDetailsView only when appropriate. 2016-07-15 20:47:09 -07:00
Nick Winter
224ad54bdd View web dev levels. Add proper victory modal game/webpage share links. Fix playing game dev levels. Add generic change transition to all web-dev pages. 2016-07-15 20:03:12 -07:00
Scott Erickson
0570644943 Set up a bunch of game dev, web dev playing logic 2016-07-15 16:57:39 -07:00
Nick Winter
788a14398a Fix starting web dev levels 2016-07-15 16:22:33 -07:00
Scott Erickson
7b38181241 Merge branch 'master' into game-dev-levels 2016-07-15 16:02:21 -07:00
Scott Erickson
ab704a1cab Merge remote-tracking branch 'origin/web-dev-levels' into game-dev-levels
# Conflicts:
#	app/views/play/level/PlayLevelView.coffee
2016-07-15 16:01:57 -07:00
Scott Erickson
10ca59d10f Have CourseVictoryModal used for course-ladder levels 2016-07-15 15:54:22 -07:00
Nick Winter
9be8151959 Don't create God for web-dev levels 2016-07-15 13:24:54 -07:00
Nick Winter
5a688e42c7 Slightly more flexible iframe origin checking 2016-07-15 11:19:22 -07:00
Nick Winter
1e89775486 Basic campaign mode victory modal hookup for web-dev levels 2016-07-15 09:53:16 -07:00
Nick Winter
739973cb47 Sending goal states to GoalManager and GoalStatusView 2016-07-15 09:11:36 -07:00
Nick Winter
c44c16e5d2 Started implementing web-dev goals 2016-07-15 00:40:32 -07:00
Nick Winter
e3670165e7 Remove code for multiple spells; rename SpellListTabEntryView to SpellTopBarView; remove hero avatar from SpellTopBarView 2016-07-14 22:43:25 -07:00
Nick Winter
220db3106c Run button now recreates web-dev DOM; no submit button 2016-07-14 19:48:27 -07:00
Nick Winter
33ba3f6033 Enable docs for web-dev levels 2016-07-14 19:14:18 -07:00
Nick Winter
ed320a8d9e WebSurfaceView now parsing player code through virtual DOM into iframe 2016-07-14 18:07:36 -07:00
Scott Erickson
9d0ad7af44 Start work on having course arenas use the CourseVictoryModal 2016-07-14 16:50:17 -07:00
Scott Erickson
9a79cae09d Fix PlayGameDevLevelView to run in course mode 2016-07-14 16:49:48 -07:00
phoenixeliot
c3ed217964 Fix i18n render bug on SimulateTabView 2016-07-14 16:20:15 -07:00
Scott Erickson
61caf3dcd3 Merge branch 'master' into game-dev-levels 2016-07-14 15:50:04 -07:00
Scott Erickson
dd88f39761 Add shareable property to levels 2016-07-14 15:48:42 -07:00
Scott Erickson
0cb92582f4 Add destroy method 2016-07-14 15:13:02 -07:00
Nick Winter
16b10612b6 Stub WebSurface showing for web-dev levels 2016-07-14 12:34:22 -07:00
phoenixeliot
5e10e34825 Add spy buttons to admin page search results 2016-07-14 11:27:18 -07:00
Nick Winter
c5c831c211 Remove real-time multiplayer prototype code 2016-07-14 10:26:09 -07:00
Scott Erickson
2284a9f495 Remove semi-colons from AnalyticsView to satisfy linter 2016-07-14 10:10:22 -07:00
Nick Winter
349ab24da7 First pass at adding 'web-dev' level type 2016-07-14 09:38:45 -07:00
Nick Winter
c0a70cb2ab Refactor level type checks for easy greppability (level.isType) 2016-07-14 08:58:43 -07:00
Nick Winter
87ed53b24b Merge branch 'master' into web-dev-levels 2016-07-14 08:26:27 -07:00
Scott Erickson
fb9998b15e Add temp buttons to CourseDetailsView for testing PlayGameDevLevelView 2016-07-13 16:05:41 -07:00
Scott Erickson
b982f3fd52 Fix Camera bounds by adding ScriptManager 2016-07-13 16:05:41 -07:00
Scott Erickson
4a51045a41 Fix PlayGameDevLevelView when playing the first time, get frames streaming
For whatever reason, the Angel does not normally allow streaming on the first world.
I hacked around it, but would be good to figure out why that restriction is there
in the first place.
2016-07-13 16:05:41 -07:00
Scott Erickson
c9986ee05a Tweak Promises in PlayGameDevLevelView 2016-07-13 16:05:41 -07:00
Scott Erickson
d7a2219b16 Refactor PlayGameDevLevelView to use promises 2016-07-13 13:28:54 -07:00
Scott Erickson
1b7ac76b9f Add loading and playing to PlayGameDevLevelView 2016-07-13 11:43:25 -07:00
Nick Winter
872e83e9b7 Don't use course hero in verifier / level editor for type: 'course' level 2016-07-13 10:04:43 -07:00
Scott Erickson
3a0695f59c Add some basic info to PlayGameDevLevelView 2016-07-12 15:12:11 -07:00
Scott Erickson
25e348c5ad Initial, basically working PlayGameDevLevelView 2016-07-12 14:07:10 -07:00
Scott Erickson
0b1e1ddcb4 Merge branch 'game-dev-levels' 2016-07-12 11:00:29 -07:00
Nick Winter
cd47a9d4ea Fix inconsistent verifier results when run with multiple levels batched 2016-07-11 16:59:00 -07:00
Matt Lott
f8a67ace0e Remove items from course victory dialog 2016-07-11 16:01:34 -07:00
Matt Lott
16c9f10043 🐛Fix course victory dialog level progress counts
Use classroom versioned levels instead of latest course levels.
Use current level session instead of stale one.
2016-07-11 13:28:52 -07:00
Nick Winter
a5a955ca6b Always show indent guides 2016-07-11 08:35:44 -07:00
David Liu
2ebef96d28 Fix birthday form validation in signup (#3787) 2016-07-11 08:34:29 -07:00
Matt Lott
9b68e91409 🐛Fix analytics dashboard coursePrepaid use 2016-07-10 17:55:07 -07:00
Matt Lott
f598e43957 Admin classroom export respects classroom versioning 2016-07-08 18:47:06 -07:00
Matt Lott
1bf3eb54dd 🐛Fix admin classroom progress export paging 2016-07-08 18:24:47 -07:00
Nick Winter
8c48e4fc14 Remove transpiledCode and screenshot from LevelSession 2016-07-08 17:04:24 -07:00
phoenixeliot
6fb4cbd9ac Remember checkbox state in TeacherClassView 2016-07-08 16:24:33 -07:00
phoenixeliot
b25782f2b6 Pass username/password from CreateAccountModal to AuthModal 2016-07-08 16:24:33 -07:00
Scott Erickson
f5c9be4831 Merge branch 'master' into game-dev-levels 2016-07-08 14:26:48 -07:00
Scott Erickson
b2bb129cbf Add realTimeInputEvents to world and gameUIState, with just mousedown events 2016-07-08 14:17:07 -07:00
Scott Erickson
10d344504a Add check to TomeView
Found a bug while playing Ogre Encampment: click the Chest before clicking past the
intro screen and the game throws an error, when `updateSpellPalette` tries to access
call `spell.getSource()` but `spell` is undefined. This check keeps the same behavior
but handles the error.
2016-07-08 13:27:42 -07:00
Scott Erickson
976015734d Update CreateAccountModal comments 2016-07-07 16:58:50 -07:00
Scott Erickson
151bf93177 Fix checkEmail to prevent duplicate checks 2016-07-07 16:55:57 -07:00
Scott Erickson
54c1361b1c Fix admin view when not an admin 2016-07-07 16:48:26 -07:00
Scott Erickson
1da82fa851 Fix #1199 2016-07-07 16:34:24 -07:00
Scott Erickson
ecde42f356 Fix catch callback 2016-07-07 16:22:08 -07:00
phoenixeliot
21cd890bfa Use translated ClassCode error message 2016-07-07 16:03:07 -07:00
Scott Erickson
af9f7201d0 Finish new CreateAccountModal 2016-07-07 15:56:41 -07:00
phoenixeliot
e9b7543242 Start new CreateAccountModal 2016-07-07 15:56:41 -07:00
phoenixeliot
5e6c9709f9 Display better error when invalid class code is entered 2016-07-07 15:32:11 -07:00
Matt Lott
cad067fa8c 🐛Fix admin classroom progress CSV
Respect fetch paging.
2016-07-07 15:18:04 -07:00
Matt Lott
a884fbf38b Admin class progress CSV export 2016-07-07 11:07:38 -07:00
Rob
228019ac89 - Limit when this autocompletion can pop up.
- Remove some left over cruft from the text completer.
2016-07-06 13:31:46 -07:00
Rob
c7901c3237 Unbreak things when you don't have glasses. 2016-07-05 12:34:54 -07:00
Rob
9c7320e26a - Move Zatanna out of own repo and into CodeCombat
- Move snippet creation out of SpellView
- Disable text based completions.
2016-07-01 16:39:21 -07:00
Matt Lott
ba54754373 Admin classroom levels page 2016-06-30 08:29:27 -07:00
Rob
ac47928131 - Reduce size of answer code in verifier
- Assume we want to run a single level on only one core for accurate speed testing.
2016-06-29 16:18:36 -07:00
Matt Lott
63e38c82b2 Update school counts page with geoip and 10+ buckets
Placing teachers and students in unknown districts and schools if we
have geoip countries and states/regions.
Placing teachers/students in unknown schools if there are 10+ students.
2016-06-29 15:01:04 -07:00
Nick Winter
ede12ed50f Add effective simulation frames per second to verifier 2016-06-29 12:40:30 -07:00
Matt Lott
50a017b1e9 🐛Fix UK matching on school counts page
Not a huge difference in raw numbers
2016-06-28 17:18:04 -07:00
Matt Lott
d6951559fd Update school counts page
Exclude HoC users via course instances
Include teacher/students via trial requests without NCES data
2016-06-28 16:41:36 -07:00
Scott Erickson
fe1598cab2 Implement multi-select, remove click-to-navigate from level editor 2016-06-28 09:20:05 -07:00
Scott Erickson
4dda1b67dd Refactor ThangsTabView to use GameUIState for managing all Surface mouse events
Attempting to use a react-component-like system, where the Surface simply emits everything that
happens through the shared GameUIState, and the parent (in this case the ThangsTabView, but theoretically
anything that uses the surface) handles the events manually, to enforce desired behavior for that particular
context.

It's nice that all the event handling is centralized, but it's still a bit of a mess, and not thoroughly
stateful. But it's a start. This is in preparation for allowing multi-thang selection and manipulation
in the level editor.
2016-06-28 09:19:38 -07:00
Matt Lott
d72e4eb750 Practice levels Ux and next level algorithm
Update classroom and gameplay Ux to surface practice levels as 3a, 3b,
etc.
Update next level logic to leverage practice levels based on per level
completion playtime thresholds.
Patrol buster and patrol buster A are live for testing.
Fix a few classroom Ux progress hover bubble info bugs.

Closes #3767
2016-06-27 14:05:42 -07:00
Matt Lott
08886460c2 Remove default licenses needed from request form 2016-06-26 14:49:09 -07:00
Matt Lott
425115ad37 Remove level type 'hero-practice', use level.practice 2016-06-25 08:38:59 -07:00
Nick Winter
69eb1dc07a Preparing for master-wizard 2016-06-24 15:01:49 -07:00
Nick Winter
a4654f613d Add two starting new heroes. Fix #2753 again for now. 2016-06-24 14:57:21 -07:00
Nick Winter
7c876401bc Do show bonus goals in course mode if you actually achieve them 2016-06-24 08:50:38 -07:00
Catsync
f1d17ebcba Don't show optional goals if playing level as type 'course' (#3758) 2016-06-24 08:32:50 -07:00
shuwn
c6fcf588f7 Update DiplomatView.coffee (#3750) 2016-06-24 15:40:50 +01:00
Matt Lott
18de9ab298 Create call tasks and opps for license requests 2016-06-23 06:12:51 -07:00
Josh Callebaut
b8bdc0c726 Merge pull request #3754 from Zerrien/campaign-treema-display
Clicking on level in treema makes the level flash
2016-06-22 15:56:54 -07:00
Josh Callebaut
e953f7fc60 Cleaner jQuery selection 2016-06-22 15:36:42 -07:00
Josh Callebaut
0ad8fddff6 Clicking on level in treema makes the level flash 2016-06-22 15:11:27 -07:00
Rob
f100e7ab52 Non-integer indentation levels are impossible. 2016-06-22 15:08:20 -07:00
Matt Lott
73698129a0 Make level practice threshold available in editor 2016-06-21 16:41:47 -07:00
Rob
bdfa6d435a Add extra options to verifier. 2016-06-21 11:48:42 -07:00
Matt Lott
df90935aba Admin school counts page 2016-06-21 09:33:06 -07:00
Matt Lott
e0170d0339 Add hero-practice level type and threshold to schema
Filtering out hero-practice levels from classrooms until the Ux
supports them.
2016-06-19 20:23:32 -07:00
Matt Lott
4622337d82 Update licenses needed form
Ensure the needed licenses are in the subject resulting email.
2016-06-17 15:40:07 -07:00
Catsync
6901b758e6 Update estimated course times (#3738)
* Update time estimates for courses.

* Update coming soon text.
2016-06-16 12:56:43 -07:00
Scott Erickson
57def1fbeb Merge pull request #3727 from duybkict/refactor-MyMatchesTabView
#3138 #3488 refactor MyMatchesTabView
2016-06-16 10:41:17 -07:00
Scott Erickson
a4b5e92b06 Merge pull request #3726 from duybkict/refactor-SimulateTabView
#3138 #3488 refactor SimulateTabView
2016-06-16 10:34:53 -07:00
Matt Lott
6739353d8e 🐛Fix hint intro overview duplicates 2016-06-16 10:21:37 -07:00
Scott Erickson
86fc4a3846 Hints v1
Add per-level tips and tricks, available during gameplay to help unstick players.

Closes #3736
2016-06-15 16:12:41 -07:00
Scott Erickson
c8e7b79e5d Make demoEl run _.once 2016-06-15 16:09:24 -07:00
phoenixeliot
e841334c86 Fix join class modal (temporary hack) 2016-06-15 13:28:03 -07:00
phoenixeliot
749601c9d8 Don't cache classrooms (fetched by memberID) 2016-06-14 14:27:57 -07:00
Matt Lott
ecb5169ca7 Add hintsB to level schema 2016-06-14 10:29:30 -07:00
Nick Winter
a96d5df78e Don't protect APIs in game-dev levels 2016-06-13 16:21:22 -07:00
phoenixeliot
ccf5b449e3 Use classroom.courses.levels instead of campaign.levels 2016-06-13 14:47:10 -07:00
Nick Winter
d2634e63ed Fix #3642: AIs using aiSource now don't need API protection (with new Aether) 2016-06-09 17:59:19 -07:00
Matt Lott
55bd49fde0 Add course playtimes to student progress CSV 2016-06-09 14:44:47 -07:00
Rob
aa7f2af700 No ads, act two. 2016-06-09 12:13:17 -07:00
Matt Lott
9dbcf27e11 Add classroom Mixpanel logging
Closes #3720
2016-06-09 10:46:26 -07:00
duybkict
0c0f075424 #3138 #3488 refactor MyMatchesTabView 2016-06-09 10:31:53 +07:00
duybkict
a4e8cafdb3 #3138 #3488 refactor SimulateTabView 2016-06-09 10:00:47 +07:00
Nick Winter
b0fcddac68 Add game-dev level type (#3725)
* Initial pass adding new game-dev level type.

* Fix a failing test with updated LevelSystem required properties

* Bring back normal Angel worker timeout times

* Fix another failing LevelSystem test since removing propertyDocumentation
2016-06-08 16:57:00 -07:00
Scott Erickson
0d5bf6b4de Merge branch 'username-login' 2016-06-08 15:48:46 -07:00