Merge branch 'master' into production

This commit is contained in:
Nick Winter 2015-01-27 20:36:53 -08:00
commit 9287df1398
84 changed files with 754 additions and 33 deletions

View file

@ -10,7 +10,7 @@ It's both a startup and a community project, completely open source under the [M
### [Getting Started](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-General-Information)
We've made it easy to fork the project, run a simple script that'll install all the dependencies, and get a local copy of CodeCombat running right away on [Mac](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Mac-and-Vagrant), [Linux](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Linux), or [Windows](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Windows). See [the docs for details](https://github.com/codecombat/codecombat/wiki/Developer-environment).
We've made it easy to fork the project, run a simple script that'll install all the dependencies, and get a local copy of CodeCombat running right away on [Mac](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Mac-and-Vagrant), [Linux](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Linux), or [Windows](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Windows). See [the docs for details](https://github.com/codecombat/codecombat/wiki/Dev-Setup:-General-Information).
### [Getting In Touch](https://github.com/codecombat/codecombat/wiki/Developer-organization)

View file

@ -637,3 +637,33 @@ module.exports.thangNames = thangNames =
'Ganju'
'Ralthora'
]
'Skeleton': [
'Bloody Johnny'
'Bone Daddy'
'Bonejangles'
'Bonesworth'
'Bonette'
'Doornail'
'Drybones'
'Grim'
'Haskell'
'Indiana Bones'
'James Bone'
'Kate'
'Palatine'
'Ribster'
'Rusty'
'Sacra'
'Scraps'
'Shelly'
'Skeletor'
'Skellington'
'Skulldugger'
'Skully'
'Smitty'
'Sphenoid'
'Sternum'
'Talus'
'Ulna'
'Yorick'
]

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "български език", englishDescri
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "български език", englishDescri
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventari"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
subscribe:
subscribe_title: "Subscriu-te"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventář"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
subscribe:
subscribe_title: "Předplacení"
unsubscribe: "Zrušit předplacení"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Získejte více praxe s bonusovými úrovněmi!"
heroes: "Více silnějších hrdinů!"
gems: "3500 bonusových drahokamů každý měsíc!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventar"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventar"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
subscribe:
subscribe_title: "Abonnieren"
unsubscribe: "Abmelden"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "25 weitere level! Und 5 neue jede Woche!"
heroes: "Stärkere Helden!"
gems: "3500 bonus Edelsteine jeden Monat!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Ελληνικά", englishDescription: "Gre
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Ελληνικά", englishDescription: "Gre
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@
tip_reusable_software: "Before software can be reusable it first has to be usable."
tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
tip_source_code: "I want to change the world but they would not give me the source code."
tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventory"
@ -369,6 +371,13 @@
subscribe:
subscribe_title: "Subscribe"
unsubscribe: "Unsubscribe"
confirm_unsubscribe: "Confirm Unsubscribe"
never_mind: "Never Mind, I Still Love You"
thank_you_months_prefix: "Thank you for supporting us these last"
thank_you_months_suffix: "months."
thank_you: "Thank you for supporting CodeCombat."
sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Get more practice with bonus levels!"
heroes: "More powerful heroes!"
gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventario"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
subscribe:
subscribe_title: "Suscribirse"
unsubscribe: "Des-suscribirse"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Adquirí más practica con un nivel bonus!"
heroes: "Héroes más poderosos!"
gems: "Bonus de 3500 todos los meses!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventario"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
subscribe:
subscribe_title: "Suscríbete"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "¡Desbloquea 17 niveles adicionales! ¡5 nuevos cada semana!"
heroes: "¡Más heroes poderosos!"
gems: "¡3500 joyas adicionales cada mes!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventaire"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
subscribe:
subscribe_title: "Inscription"
unsubscribe: "Désinscription"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Débloquer 17 niveaux supplémentaires ! Et 5 nouveaux chaque semaines!"
heroes: "Héros plus puissants!"
gems: "3500 gemmes en bonus chaque mois !"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Galego", englishDescription: "Galician", tr
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventario"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Galego", englishDescription: "Galician", tr
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Raktár"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
subscribe:
subscribe_title: "Feliratkozás"
unsubscribe: "Leiratkozás"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Gyakorolj a bónusz szinteken!"
heroes: "Még erősebb hősök!"
gems: "3500 búnusz drágakő havonta!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventario"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Македонски", englishDescription:
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Македонски", englishDescription:
subscribe:
subscribe_title: "Зачлени се"
unsubscribe: "Откажи членство"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Вежбај повеќе со дополнителни нивоа!"
heroes: "Помоќни херои!"
gems: "3500 скапоцени камења секој месец!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Utstyr"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventaris"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
gems: "Elke maand 3500 bonus juwelen!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventaris"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
gems: "3500 extra edelstenen elke maand!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Ekwipunek"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Português do Brasil", englishDescription:
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventário"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Português do Brasil", englishDescription:
subscribe:
subscribe_title: "Inscrever-se"
unsubscribe: "Desinscrever-se"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Desbloqueie 17 níveis extras! Com 5 novos toda semana!"
heroes: "Mais poderosos heróis!"
gems: "3500 gemas bônus todo mês!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
tip_reusable_software: "Antes de um software poder ser reutilizável, primeiro tem de ser utilizável."
tip_optimization_operator: "Todas as linguagens têm um operador de otimização. Na maior parte delas esse operador é //."
tip_lines_of_code: "Medir o progresso em programação pelo número de linhas de código é como medir o progresso da construção de um avião pelo peso. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Inventário"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
subscribe:
subscribe_title: "Subscrever"
unsubscribe: "Cancelar Subscrição"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Pratica mais com níveis bónus!"
heroes: "Heróis mais poderosos!"
gems: "3500 gemas de bónus todos os meses!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
tip_reusable_software: "Прежде, чем программное обеспечение станет повторно используемым, оно должно стать в принципе используемым."
tip_optimization_operator: "В каждом языке есть оператор оптимизации. В большинстве языков это оператор //"
tip_lines_of_code: "Измерение прогресса программирования в строках кода - это как измерять прогресс построения самолета по его весу. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Инвентарь"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
subscribe:
subscribe_title: "Подпишись"
unsubscribe: "Отписаться"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Получите больше практики с бонусными уровнями!"
heroes: "Более сильные герои!"
gems: "3500 бонусных самоцветов каждый месяц!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Utrustning"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Envanter"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Українська", englishDescription:
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "Інвентар"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Українська", englishDescription:
subscribe:
subscribe_title: "Взяти абонемент"
unsubscribe: "Скасувати абонемент"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "Розблокуйте 25 рівнів! Та отримуйте 5 нових кожного тижня!"
heroes: "Більше могутніх героїв!"
gems: "Щомісячний бонус 3500 самоцвітів!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "道具箱"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
subscribe:
subscribe_title: "订阅"
unsubscribe: "取消订阅"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
levels: "多解锁17个关卡每周解锁5个新关卡"
heroes: "更多强大的英雄!"
gems: "每月多3500宝石奖励"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
inventory_tab: "倉庫"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "吴语", englishDescription: "Wuu (Simplifi
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
# game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "吴语", englishDescription: "Wuu (Simplifi
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -323,6 +323,8 @@ module.exports = nativeDescription: "吳語", englishDescription: "Wuu (Traditio
# tip_reusable_software: "Before software can be reusable it first has to be usable."
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is //"
# tip_lines_of_code: "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. — Bill Gates"
# tip_source_code: "I want to change the world but they would not give me the source code."
# tip_javascript_java: "Java is to JavaScript what Car is to Carpet. - Chris Heilmann"
game_menu:
# inventory_tab: "Inventory"
@ -369,6 +371,13 @@ module.exports = nativeDescription: "吳語", englishDescription: "Wuu (Traditio
# subscribe:
# subscribe_title: "Subscribe"
# unsubscribe: "Unsubscribe"
# confirm_unsubscribe: "Confirm Unsubscribe"
# never_mind: "Never Mind, I Still Love You"
# thank_you_months_prefix: "Thank you for supporting us these last"
# thank_you_months_suffix: "months."
# thank_you: "Thank you for supporting CodeCombat."
# sorry_to_see_you_go: "Sorry to see you go! Please let us know what we could have done better."
# unsubscribe_feedback_placeholder: "O, what have we done?"
# levels: "Get more practice with bonus levels!"
# heroes: "More powerful heroes!"
# gems: "3500 bonus gems every month!"

View file

@ -2,4 +2,17 @@
.start-subscription-button, .end-subscription-button
margin-bottom: 20px
float: left
width: 100%
width: 100%
.unsubscribe-feedback
width: 100%
h3
margin-top: 0
textarea
width: 100%
button.btn
width: 100%
margin-top: 12px

View file

@ -14,6 +14,20 @@ block content
.panel-heading
if subscribed
button.end-subscription-button.btn.btn-lg.btn-warning(data-i18n="subscribe.unsubscribe") Unsubscribe
.unsubscribe-feedback.row.secret
.col-lg-7
h3
if monthsSubscribed > 1
span(data-i18n="subscribe.thank_you_months_prefix") Thank you for supporting us these last
span.spl.spr= monthsSubscribed
span(data-i18n="subscribe.thank_you_months_suffix") months.
else
span(data-i18n="subscribe.thank_you") Thank you for supporting CodeCombat.
div(data-i18n="subscribe.sorry_to_see_you_go") Sorry to see you go! Please let us know what we could have done better.
textarea(rows=3, data-i18n="[placeholder]subscribe.unsubscribe_feedback_placeholder")
.col-lg-5
button.cancel-end-subscription-button.btn.btn-lg.btn-default(data-i18n="subscribe.never_mind") Never Mind, I Still Love You
button.confirm-end-subscription-button.btn.btn-lg.btn-warning(data-i18n="subscribe.confirm_unsubscribe") Confirm Unsubscribe
else if !me.isAnonymous()
button.start-subscription-button.btn.btn-lg.btn-success(data-i18n="subscribe.subscribe_title") Subscribe

View file

@ -54,6 +54,8 @@
strong.tip.rare(data-i18n='play_level.tip_brute_force') When in doubt, use brute force. - Ken Thompson
strong.tip.rare(data-i18n='play_level.tip_extrapolation') There are only two kinds of people: those that can extrapolate from incomplete data...
strong.tip.rare(data-i18n='play_level.tip_superpower') Coding is the closest thing we have to a superpower
strong.tip.rare(data-i18n='play_level.tip_source_code') I want to change the world but they would not give me the source code.
strong.tip.rare(data-i18n='play_level.tip_javascript_java') Java is to JavaScript what Car is to Carpet. - Chris Heilmann
strong.tip.rare
span(data-i18n='play_level.tip_harry') Yer a Wizard,
span= me.get('name', true)

View file

@ -2,6 +2,7 @@ RootView = require 'views/core/RootView'
template = require 'templates/account/subscription-view'
CocoCollection = require 'collections/CocoCollection'
SubscribeModal = require 'views/core/SubscribeModal'
Payment = require 'models/Payment'
module.exports = class SubscriptionView extends RootView
id: "subscription-view"
@ -10,6 +11,8 @@ module.exports = class SubscriptionView extends RootView
events:
'click .start-subscription-button': 'onClickStartSubscription'
'click .end-subscription-button': 'onClickEndSubscription'
'click .cancel-end-subscription-button': 'onClickCancelEndSubscription'
'click .confirm-end-subscription-button': 'onClickConfirmEndSubscription'
subscriptions:
'subscribe-modal:subscribed': 'onSubscribed'
@ -20,6 +23,8 @@ module.exports = class SubscriptionView extends RootView
options = { url: "/db/user/#{me.id}/stripe" }
options.success = (@stripeInfo) =>
@supermodel.addRequestResource('payment_info', options).load()
@payments = new CocoCollection([], { url: '/db/payment', model: Payment, comparator:'_id' })
@supermodel.loadCollection(@payments, 'payments')
getRenderData: ->
c = super()
@ -33,6 +38,10 @@ module.exports = class SubscriptionView extends RootView
c.cost = "$#{(subscription.plan.amount/100).toFixed(2)}"
if card = @stripeInfo.cards?.data?[0]
c.card = "#{card.brand}: x#{card.last4}"
if @payments?.loaded
c.monthsSubscribed = (x for x in @payments.models when not x.get('productID')).length # productID is for gem purchases
else
c.monthsSubscribed = null
c.stripeInfo = @stripeInfo
c.subscribed = me.get('stripe')?.planID
@ -47,8 +56,26 @@ module.exports = class SubscriptionView extends RootView
document.location.reload()
onClickEndSubscription: (e) ->
stripe = _.clone(me.get('stripe'))
delete stripe.planID
me.set('stripe', stripe)
me.patch({headers: {'X-Change-Plan': 'true'}})
@listenToOnce me, 'sync', -> document.location.reload()
window.tracker?.trackEvent 'Unsubscribe Start', {}
@$el.find('.end-subscription-button').blur().addClass 'disabled', 250
@$el.find('.unsubscribe-feedback').show(500).find('textarea').focus()
onClickCancelEndSubscription: (e) ->
window.tracker?.trackEvent 'Unsubscribe Cancel', {}
@$el.find('.unsubscribe-feedback').hide(500).find('textarea').blur()
@$el.find('.end-subscription-button').focus().removeClass 'disabled', 250
onClickConfirmEndSubscription: (e) ->
message = @$el.find('.unsubscribe-feedback textarea').val().trim()
window.tracker?.trackEvent 'Unsubscribe End', message: message
removeStripe = =>
stripe = _.clone(me.get('stripe'))
delete stripe.planID
me.set('stripe', stripe)
me.patch({headers: {'X-Change-Plan': 'true'}})
@listenToOnce me, 'sync', -> document.location.reload()
if message
$.post '/contact', message: message, subject: 'Cancellation', (response) ->
removeStripe()
else
removeStripe()

View file

@ -31,7 +31,7 @@ function basicDependenciesErrorHandling {
exit 1
;;
"git")
echo "Please install Git.(If you're running mac, this is included in the XCode command line tools."
echo "Please install Git (if you're running mac, this is included in the XCode command line tools)."
esac
}

View file

@ -14,6 +14,3 @@ class Configuration(object):
@property
def mem_width(self):
return self.system.virtual_memory_address_width

View file

@ -10,4 +10,3 @@ class Dependency(object):
raise NotImplementedError
def install_dependencies(self):
raise NotImplementedError

View file

@ -50,6 +50,3 @@ class DirectoryController(object):
shutil.rmtree(self.bin_directory + os.sep + "mongo",ignore_errors=True)
def remove_tmp_directory(self):
shutil.rmtree(self.tmp_directory)

View file

@ -38,4 +38,3 @@ class Downloader:
else:
stringToDisplay = '\r File size unknown. Read {0} bytes.'.format(amount_of_data_downloaded_so_far)
print(stringToDisplay,end=' ')

View file

@ -71,7 +71,7 @@ class SetupFactory(object):
print("NOTE: brunch may need to be run as sudo if it doesn't work (ulimit needs to be set higher than default)")
print("")
print("Before can play any levels you must update the database. See the Setup section here:")
print("https://github.com/codecombat/codecombat/wiki/Developer-environment#setup")
print("https://github.com/codecombat/codecombat/wiki/Dev-Setup:-Linux#installing-the-database")
print("")
print("Go to http://localhost:3000 to see your local CodeCombat in action!")
def cleanup(self):
@ -145,7 +145,7 @@ class LinuxSetup(SetupFactory):
exit(1)
else:
print("NodeJS and MongoDB installed successfully. "
"Staring MongoDB.")
"Starting MongoDB.")
#try:
#subprocess.check_call(["service", "mongod", "start"])
#except subprocess.CalledProcessError as err:
@ -169,4 +169,3 @@ class LinuxSetup(SetupFactory):
return()
else:
exit(1)

View file

@ -105,5 +105,3 @@ class MacMongoDBDownloader(MongoDBDownloader):
@property
def download_url(self):
return u"http://fastdl.mongodb.org/osx/mongodb-osx-x86_64-2.6.6.tgz"

View file

@ -60,7 +60,7 @@ class Node(Dependency):
shutil.copytree(self.findUnzippedNodePath(),install_directory)
wants_to_upgrade = True
if self.check_if_executable_installed(u"npm"):
warning_string = u"A previous version of npm has been found. \nYou may experience problems if you have a version of npm that's too old.Would you like to upgrade?(y/n) "
warning_string = u"A previous version of npm has been found. \nYou may experience problems if you have a version of npm that's too old. Would you like to upgrade?(y/n) "
from distutils.util import strtobool
print(warning_string)
#for bash script, you have to somehow redirect stdin to raw_input()
@ -158,5 +158,3 @@ class MacNodeDownloader(NodeDownloader):
return u"http://nodejs.org/dist/v0.10.35/node-v0.10.35-darwin-x64.tar.gz"
else:
return u"http://nodejs.org/dist/v0.10.35/node-v0.10.35-darwin-x86.tar.gz"

View file

@ -20,7 +20,7 @@ class RepositoryInstaller():
#http://stackoverflow.com/questions/9329243/xcode-4-4-and-later-install-command-line-tools
if not self.checkIfCurlExecutableExists():
if self.config.system.operating_system == "linux":
raise errors.CoCoError("Curl is missing. Please install it(try 'sudo apt-get install curl')\nIf you are not using Ubuntu then please see your Linux Distribution's documentation for help installing curl.")
raise errors.CoCoError("Curl is missing. Please install it (try 'sudo apt-get install curl')\nIf you are not using Ubuntu then please see your Linux Distribution's documentation for help installing curl.")
elif self.config.system.operating_system == "mac":
raise errors.CoCoError("Curl is missing. Please install the Xcode command line tools.")
raise errors.CoCoError(u"Git is missing. Please install git.")

View file

@ -40,9 +40,7 @@ def check_if_root():
raise errors.CoCoError(u"You need to be root. Run as sudo.")
if __name__ == u"__main__":
print("Code Combat Development Environment Setup Script")
print("CodeCombat Development Environment Setup Script")
check_if_root()
setup = factories.constructSetup()
setup.setup()

View file

@ -15,6 +15,22 @@ AchievementSchema = new mongoose.Schema({
userField: String
}, {strict: false})
AchievementSchema.index(
{
_fts: 'text'
_ftsx: 1
},
{
name: 'search index'
sparse: true
weights: {name: 1}
default_language: 'english'
'language_override': 'language'
'textIndexVersion': 2
})
AchievementSchema.index({i18nCoverage: 1}, {name: 'translation coverage index', sparse: true})
AchievementSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
AchievementSchema.methods.objectifyQuery = ->
try
@set('query', JSON.parse(@get('query'))) if typeof @get('query') == 'string'

View file

@ -11,6 +11,7 @@ AnalyticsLogEventSchema = new mongoose.Schema({
event: String
properties: mongoose.Schema.Types.Mixed
}, {strict: false})
AnalyticsLogEventSchema.index({event: 1, _id: 1})
module.exports = AnalyticsLogEvent = mongoose.model('analytics.log.event', AnalyticsLogEventSchema)

View file

@ -7,4 +7,7 @@ AnalyticsUsersActiveSchema = new mongoose.Schema({
'default': Date.now
}, {strict: false})
AnalyticsUsersActiveSchema.index({created: 1})
AnalyticsUsersActiveSchema.index({creator: 1})
module.exports = AnalyticsUsersActive = mongoose.model('analytics.users.active', AnalyticsUsersActiveSchema)

View file

@ -3,6 +3,32 @@ plugins = require '../plugins/plugins'
ArticleSchema = new mongoose.Schema(body: String, {strict: false})
ArticleSchema.index(
{
index: 1
_fts: 'text'
_ftsx: 1
},
{
name: 'search index'
sparse: true
weights: {body: 1, name: 1}
default_language: 'english'
'language_override': 'searchLanguage'
'textIndexVersion': 2
})
ArticleSchema.index(
{
original: 1
'version.major': -1
'version.minor': -1
},
{
name: 'version index'
unique: true
})
ArticleSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
ArticleSchema.plugin(plugins.NamedPlugin)
ArticleSchema.plugin(plugins.VersionedPlugin)
ArticleSchema.plugin(plugins.SearchablePlugin, {searchable: ['body', 'name']})

View file

@ -3,6 +3,9 @@ plugins = require '../plugins/plugins'
CampaignSchema = new mongoose.Schema(body: String, {strict: false})
CampaignSchema.index({i18nCoverage: 1}, {name: 'translation coverage index', sparse: true})
CampaignSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
CampaignSchema.plugin(plugins.NamedPlugin)
CampaignSchema.plugin(plugins.TranslationCoveragePlugin)

View file

@ -6,6 +6,32 @@ LevelSchema = new mongoose.Schema({
description: String
}, {strict: false})
LevelSchema.index(
{
index: 1
_fts: 'text'
_ftsx: 1
},
{
name: 'search index'
sparse: true
weights: {description: 1, name: 1}
default_language: 'english'
'language_override': 'searchLanguage'
'textIndexVersion': 2
})
LevelSchema.index(
{
original: 1
'version.major': -1
'version.minor': -1
},
{
name: 'version index'
unique: true
})
LevelSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
LevelSchema.plugin(plugins.NamedPlugin)
LevelSchema.plugin(plugins.PermissionsPlugin)
LevelSchema.plugin(plugins.VersionedPlugin)

View file

@ -7,6 +7,32 @@ LevelComponentSchema = new mongoose.Schema {
system: String
}, {strict: false}
LevelComponentSchema.index(
{
index: 1
_fts: 'text'
_ftsx: 1
},
{
name: 'search index'
sparse: true
weights: {description: 1, name: 1, searchStrings: 1}
default_language: 'english'
'language_override': 'searchLanguage'
'textIndexVersion': 2
})
LevelComponentSchema.index(
{
original: 1
'version.major': -1
'version.minor': -1
},
{
name: 'version index'
unique: true
})
LevelComponentSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
LevelComponentSchema.plugin plugins.NamedPlugin
LevelComponentSchema.plugin plugins.PermissionsPlugin
LevelComponentSchema.plugin plugins.VersionedPlugin

View file

@ -10,4 +10,7 @@ LevelFeedbackSchema = new mongoose.Schema({
'default': Date.now
}, {strict: false})
LevelFeedbackSchema.index({created: 1})
LevelFeedbackSchema.index({creator: 1})
module.exports = LevelFeedback = mongoose.model('level.feedback', LevelFeedbackSchema)

View file

@ -11,6 +11,20 @@ LevelSessionSchema = new mongoose.Schema({
type: Date
'default': Date.now
}, {strict: false})
LevelSessionSchema.index({creator: 1})
LevelSessionSchema.index({level: 1})
LevelSessionSchema.index({levelID: 1})
LevelSessionSchema.index({'level.majorVersion': 1})
LevelSessionSchema.index({'level.original': 1}, {name: 'Level Original'})
LevelSessionSchema.index({'level.original': 1, 'level.majorVersion': 1, 'creator': 1, 'team': 1})
LevelSessionSchema.index({playtime: 1}, {name: 'Playtime'})
LevelSessionSchema.index({submitDate: 1})
LevelSessionSchema.index({submitted: 1}, {sparse: true})
LevelSessionSchema.index({team: 1}, {sparse: true})
LevelSessionSchema.index({totalScore: 1}, {sparse: true})
LevelSessionSchema.index({user: 1, changed: -1}, {name: 'last played index', sparse: true})
LevelSessionSchema.plugin(plugins.PermissionsPlugin)
LevelSessionSchema.plugin(AchievablePlugin)

View file

@ -6,6 +6,32 @@ LevelSystemSchema = new mongoose.Schema {
description: String
}, {strict: false}
LevelSystemSchema.index(
{
index: 1
_fts: 'text'
_ftsx: 1
},
{
name: 'search index'
sparse: true
weights: {description: 1, name: 1, name: 1}
default_language: 'english'
'language_override': 'searchLanguage'
'textIndexVersion': 2
})
LevelSystemSchema.index(
{
original: 1
'version.major': -1
'version.minor': -1
},
{
name: 'version index'
unique: true
})
LevelSystemSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
LevelSystemSchema.plugin(plugins.NamedPlugin)
LevelSystemSchema.plugin(plugins.PermissionsPlugin)
LevelSystemSchema.plugin(plugins.VersionedPlugin)

View file

@ -5,6 +5,32 @@ ThangTypeSchema = new mongoose.Schema({
body: String,
}, {strict: false})
ThangTypeSchema.index(
{
index: 1
_fts: 'text'
_ftsx: 1
},
{
name: 'search index'
sparse: true
weights: {name: 1}
default_language: 'english'
'language_override': 'searchLanguage'
'textIndexVersion': 2
})
ThangTypeSchema.index(
{
original: 1
'version.major': -1
'version.minor': -1
},
{
name: 'version index'
unique: true
})
ThangTypeSchema.index({slug: 1}, {name: 'slug index', sparse: true, unique: true})
ThangTypeSchema.plugin plugins.NamedPlugin
ThangTypeSchema.plugin plugins.VersionedPlugin
ThangTypeSchema.plugin plugins.SearchablePlugin, {searchable: ['name']}

View file

@ -8,4 +8,6 @@ MailSent = new mongoose.Schema({
'default': Date.now
}, {strict: false})
MailSent.index({user: 1}, {name: 'User'})
module.exports = MailSent = mongoose.model('mail.sent', MailSent)

View file

@ -9,4 +9,6 @@ ScoringTaskSchema = new mongoose.Schema(
sessions: {type: Array, default: []}
)
ScoringTaskSchema.index({createdAt: 1}, {expireAfterSeconds: 3600})
module.exports = mongoose.model('scoringTask', ScoringTaskSchema)

View file

@ -59,8 +59,6 @@ createMailContext = (req, done) ->
async.waterfall [
fetchRecentSessions.bind undefined, user, context
# Can add other data-grabbing stuff here if we want.
# TODO: grab platform/browser/browser version/screen size from client
# TODO: try automatically including Surface screenshot if opening contact form from level?
], (err, results) ->
console.error "Error getting contact message context for #{sender}: #{err}" if err
if req.body.screenshotURL

View file

@ -19,6 +19,17 @@ UserSchema = new mongoose.Schema({
'default': Date.now
}, {strict: false})
UserSchema.index({'dateCreated': 1})
UserSchema.index({'emailLower': 1}, {unique: true, sparse: true, name: 'emailLower_1'})
UserSchema.index({'facebookID': 1}, {sparse: true})
UserSchema.index({'gplusID': 1}, {sparse: true})
UserSchema.index({'iosIdentifierForVendor': 1}, {name: 'iOS identifier for vendor', sparse: true, unique: true})
UserSchema.index({'mailChimp.leid': 1}, {sparse: true})
UserSchema.index({'nameLower': 1}, {sparse: true, name: 'nameLower_1'})
UserSchema.index({'simulatedBy': 1})
UserSchema.index({'slug': 1}, {name: 'slug index', sparse: true, unique: true})
UserSchema.index({'stripe.subscriptionID': 1}, {unique: true, sparse: true})
UserSchema.post('init', ->
@set('anonymous', false) if @get('email')
)
@ -266,9 +277,6 @@ UserSchema.statics.editableProperties = [
]
UserSchema.plugin plugins.NamedPlugin
UserSchema.index({'stripe.subscriptionID':1}, {unique: true, sparse: true})
UserSchema.index({'emailLower':1}, {unique: true, sparse: true, name: 'emailLower_1'})
UserSchema.index({'nameLower':1}, {unique: true, sparse: true, name: 'nameLower_1'})
module.exports = User = mongoose.model('User', UserSchema)

View file

@ -8,4 +8,6 @@ UserRemarkSchema = new mongoose.Schema({
'default': Date.now
}, {strict: false})
UserRemarkSchema.index({user: 1}, {name: 'User'})
module.exports = UserRemark = mongoose.model('user.remark', UserRemarkSchema)