mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-02-16 00:19:50 -05:00
Merge branch 'master' into production
This commit is contained in:
commit
7ce0a3dba1
63 changed files with 1251 additions and 168 deletions
|
@ -204,39 +204,45 @@ module.exports = Lank = class Lank extends CocoClass
|
|||
@handledDisplayEvents[event] = true
|
||||
args = JSON.parse(event[4...])
|
||||
key = 'aoe-' + JSON.stringify(args[2..])
|
||||
layerName = args[6] ? 'ground' # Can also specify 'floating'.
|
||||
unless layer = @options[layerName + 'Layer']
|
||||
console.error "#{@thang.id} couldn't find layer #{layerName}Layer for AOE effect #{key}; using ground layer."
|
||||
layer = @options.groundLayer
|
||||
|
||||
unless key in @options.groundLayer.spriteSheet.getAnimations()
|
||||
args = JSON.parse(event[4...])
|
||||
unless key in layer.spriteSheet.getAnimations()
|
||||
circle = new createjs.Shape()
|
||||
radius = args[2] * Camera.PPM
|
||||
if args.length is 4
|
||||
circle.graphics.beginFill(args[3]).drawCircle(0, 0, radius)
|
||||
else
|
||||
startAngle = args[4]
|
||||
endAngle = args[5]
|
||||
startAngle = args[4] or 0
|
||||
endAngle = args[5] or 2 * Math.PI
|
||||
if startAngle is endAngle
|
||||
startAngle = 0
|
||||
endAngle = 2 * Math.PI
|
||||
circle.graphics.beginFill(args[3])
|
||||
.lineTo(0, 0)
|
||||
.lineTo(radius * Math.cos(startAngle), radius * Math.sin(startAngle))
|
||||
.arc(0, 0, radius, startAngle, endAngle)
|
||||
.lineTo(0, 0)
|
||||
@options.groundLayer.addCustomGraphic(key, circle, [-radius, -radius, radius*2, radius*2])
|
||||
layer.addCustomGraphic(key, circle, [-radius, -radius, radius*2, radius*2])
|
||||
|
||||
circle = new createjs.Sprite(@options.groundLayer.spriteSheet)
|
||||
circle = new createjs.Sprite(layer.spriteSheet)
|
||||
circle.gotoAndStop(key)
|
||||
pos = @options.camera.worldToSurface {x: args[0], y: args[1]}
|
||||
circle.x = pos.x
|
||||
circle.y = pos.y
|
||||
resFactor = @options.groundLayer.resolutionFactor
|
||||
resFactor = layer.resolutionFactor
|
||||
circle.scaleY = @options.camera.y2x * 0.7 / resFactor
|
||||
circle.scaleX = 0.7 / resFactor
|
||||
circle.alpha = 0.2
|
||||
@options.groundLayer.addChild circle
|
||||
layer.addChild circle
|
||||
createjs.Tween.get(circle)
|
||||
.to({alpha: 0.6, scaleY: @options.camera.y2x / resFactor, scaleX: 1 / resFactor}, 100, createjs.Ease.circOut)
|
||||
.to({alpha: 0, scaleY: 0, scaleX: 0}, 700, createjs.Ease.circIn)
|
||||
.call =>
|
||||
return if @destroyed
|
||||
@options.groundLayer.removeChild circle
|
||||
layer.removeChild circle
|
||||
delete @handledDisplayEvents[event]
|
||||
|
||||
showTextEvents: ->
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "български език", englishDescri
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "български език", englishDescri
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "български език", englishDescri
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Subscriu-te"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
|
|||
recovered: "Obnovení již zakoupených drahokamů proběhlo úspěšně. Aktualizujte stránku prosím."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Předplacení"
|
||||
unsubscribe: "Zrušit předplacení"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
|
|||
heroes: "Více silnějších hrdinů!"
|
||||
gems: "3500 bonusových drahokamů každý měsíc!"
|
||||
items: "Více než 250 bonusových předmětů!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Pro rodiče"
|
||||
parents_title: "Vaše dítě se naučí programovat."
|
||||
parents_blurb1: "Pomocí CodeCombat se vaše dítě učí psaním opravdového kódu. Začínají učením se základním příkazů a postupně se přidávají pokročilejší témata."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
|
|||
recovered: "Voriger Juwelenkauf wiederhergestellt. Bitte die Seite neu laden."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -341,18 +341,19 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
|
|||
multiplayer_caption: "Spiele mit Freunden!"
|
||||
auth_caption: "Fortschritt speichern."
|
||||
|
||||
# leaderboard:
|
||||
leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
day: "Heute"
|
||||
week: "Diese Woche"
|
||||
# all: "All-Time"
|
||||
# time: "Time"
|
||||
time: "Zeit"
|
||||
# damage_taken: "Damage Taken"
|
||||
# damage_dealt: "Damage Dealt"
|
||||
# difficulty: "Difficulty"
|
||||
# gold_collected: "Gold Collected"
|
||||
difficulty: "Schwierigkeit"
|
||||
gold_collected: "Gold gesammelt"
|
||||
|
||||
inventory:
|
||||
choose_inventory: "Gegenstände ausrüsten"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
|
|||
recovered: "Vorhergegangener Edelsteinkauf rückgängig gemacht. Aktualisiere bitte die Seite."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
free: "Kostenlos"
|
||||
month: "Monate"
|
||||
subscribe_title: "Abonnieren"
|
||||
unsubscribe: "Abmelden"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
|
|||
heroes: "Stärkere Helden!"
|
||||
gems: "3500 bonus Edelsteine jeden Monat!"
|
||||
items: "Über 250 bonus Gegenstände!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Für Eltern"
|
||||
parents_title: "Dein Kind lernt zu programmieren."
|
||||
parents_blurb1: "Mit CodeCombat, lernt dein Kind richtige Programme zu schreiben. Es fängt mit einfachen Befehlen an, und schreitet ganz unmerklich zu schwierigeren Themen fort."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Ελληνικά", englishDescription: "Gre
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Ελληνικά", englishDescription: "Gre
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Ελληνικά", englishDescription: "Gre
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -386,7 +386,7 @@
|
|||
feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
feature3: "30+ bonus levels"
|
||||
feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
feature5: " Video tutorials"
|
||||
feature5: "Video tutorials"
|
||||
feature6: "Premium email support"
|
||||
free: "Free"
|
||||
month: "month"
|
||||
|
|
|
@ -322,7 +322,7 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
tip_lines_of_code: "Medir el progreso en la programación en líneas de código es como medir el progreso de construcción de una aeronave por su peso. — Bill Gates"
|
||||
tip_source_code: "Quisiera cambiar el mundo, pero no me dan el código fuente."
|
||||
tip_javascript_java: "Java es a Javascript lo mismo que Comer es a Comercial. - Chris Heilmann"
|
||||
# tip_move_forward: "Whatever you do, keep moving forward. - Martin Luther King Jr."
|
||||
tip_move_forward: "Hagas lo que hagas, siempre sigue hacia delante. - Martin Luther King Jr."
|
||||
|
||||
game_menu:
|
||||
inventory_tab: "Inventario"
|
||||
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
recovered: "Se recuperaron las anteriores compras de gemas. Por favor recarga la página"
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Suscribirse"
|
||||
unsubscribe: "Des-suscribirse"
|
||||
confirm_unsubscribe: "Confirmar cancelacion de suscripción"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
heroes: "Héroes más poderosos!"
|
||||
gems: "Bonus de 3500 todos los meses!"
|
||||
items: "Más de 250 ítems de bonus!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Para padres"
|
||||
parents_title: "Su hijo aprenderá a programar."
|
||||
parents_blurb1: "Con CodeCombat, su hijo aprenderá a escribiendo código real. Empezaran aprendiendo comandos simples avanzando a temas más complejos."
|
||||
|
@ -504,45 +522,45 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
matt_title: "Programador"
|
||||
matt_blurb: "Bicicletero"
|
||||
|
||||
# teachers:
|
||||
# title: "CodeCombat for Teachers"
|
||||
# preparation_title: "Preparation"
|
||||
# preparation_1: "CodeCombat is free to play for the core level progression and does not require students to sign up. We encourage teachers to"
|
||||
# preparation_play_campaign: "play through the campaign"
|
||||
# preparation_2: "to try it out, but the only thing you absolutely need to do to be ready is ensure students have access to a computer."
|
||||
# preparation_3: "It is not necessary for teachers to be comfortable with computer science concepts for students to have fun learning with CodeCombat."
|
||||
# violent_title: "Is it violent?"
|
||||
# violent_1: "We get this from teachers a lot due to our name. Although CodeCombat does contain cartoon violence, there is nothing graphic in either the visuals or language."
|
||||
# violent_2: "If you are comfortable having your students play Angry Birds, you will be comfortable with CodeCombat."
|
||||
# for_girls_title: "Is it for girls?"
|
||||
# for_girls_1: "There are three game modes in CodeCombat: building, puzzles, and combat. We have intentionally designed each to appeal to both boys and girls and think that the building and puzzle levels especially differentiate the game from violent triple A titles that repel female players."
|
||||
# what_cover_title: "What do we cover?"
|
||||
# what_cover_1: "There are 20 levels in the Hour of Code tutorial that teach and reinforce 6 specific computer science concepts:"
|
||||
# what_cover_notation_1: "Formal notation"
|
||||
# what_cover_notation_2: "- builds an understanding of the importance of syntax in programming."
|
||||
# what_cover_methods_1: "Calling methods"
|
||||
# what_cover_methods_2: "- familiarizes students with the syntax of object-oriented method calls."
|
||||
# what_cover_parameters_1: "Parameters"
|
||||
# what_cover_parameters_2: "- trains how to pass parameters to functions."
|
||||
# what_cover_strings_1: "Strings"
|
||||
# what_cover_strings_2: "- teaches students about string notation and passing strings as parameters."
|
||||
# what_cover_loops_1: "Loops"
|
||||
# what_cover_loops_2: "- develops the abstraction of designing short programs with loops."
|
||||
# what_cover_variables_1: "Variables"
|
||||
# what_cover_variables_2: "- adds the skill of referencing values that change over time."
|
||||
# what_cover_2: "Students may continue past level 20, depending on their speed and interest, to learn two additional concepts in later levels:"
|
||||
# what_cover_logic_1: "Conditional logic"
|
||||
# what_cover_logic_2: "- when and how to use if/else to control in-game outcomes."
|
||||
# what_cover_input_1: "Handling player input"
|
||||
# what_cover_input_2: "- responding to input events to create a user interface."
|
||||
# sys_requirements_title: "System Requirements"
|
||||
# sys_requirements_1: "Because CodeCombat is a game, it is more intensive for computers to run smoothly than video or written tutorials. We have optimized it to run quickly on all modern browsers and on older machines so that everyone can play. That said, here are our suggestions for getting the most out of your Hour of Code experience:"
|
||||
# sys_requirements_2: "Use newer versions of Chrome or Firefox."
|
||||
# sys_requirements_3: "Although CodeCombat will work on browsers as old as IE9, the performance is not as good. Chrome is best."
|
||||
# sys_requirements_4: "Use newer computers."
|
||||
# sys_requirements_5: "Older computers, Chromebooks, and netbooks tend to have very few system resources, which makes for a less enjoyable experience. At least 2GB of RAM is required."
|
||||
# sys_requirements_6: "Allow players to wear headphones/earbuds to hear the audio."
|
||||
# sys_requirements_7: "We help players learn through voiceover and sound effects, which will make classrooms noisy and distracting."
|
||||
teachers:
|
||||
title: "CodeCombat para Profesores"
|
||||
preparation_title: "Preparación"
|
||||
preparation_1: "CodeCombat es gratuito para jugar en la progresión de nivel básico y no requiere el registro de los usuarios. Alentamos a los profesores a"
|
||||
preparation_play_campaign: "jugar a través de la campaña"
|
||||
preparation_2: "para probarlo, la única cosa que necesitas para estar listo es asegurarte que los estudiantes tengan acceso a una computadora con internet."
|
||||
preparation_3: "No es necesario que los maestros se sienten cómodos con los conceptos informáticos para que los estudiantes se divierten aprendiendo con CodeCombat."
|
||||
violent_title: "¿Es violento?"
|
||||
violent_1: "Nos preguntan esto debido a nuestro nombre. Sin embargo CodeCombat solo contiene violencia de dibujos animados, no hay nada gráfico en las imágenes o el lenguaje."
|
||||
violent_2: "Si te sientes cómodo cuanto tus estudiantes juegan Angry Bird, entonces estaras cómodo con CodeCombat."
|
||||
for_girls_title: "¿Es para chicas?"
|
||||
for_girls_1: "Existen tres modos de juego en CodeCombat: Edificación, rompecabezas, y combate. Hemos diseñado intencionalmente cada uno para atraer tanto a los niños como a las niñas, y creemos en que los niveles de construcción y rompecabezas diferencia el juego de los títulos triple A ultra violentos que repelen a las jugadoras."
|
||||
what_cover_title: "¿Qué es lo que cubrimos?"
|
||||
what_cover_1: "Hay 20 niveles en nuestro tutorial Hora del Código que enseña y refuerza 6 conceptos especifico de las ciencias computacionales:"
|
||||
what_cover_notation_1: "Notación Formal"
|
||||
what_cover_notation_2: "- construye una comprensión de la importancia de la sintaxis en la programación."
|
||||
what_cover_methods_1: "Metodos de llamada"
|
||||
what_cover_methods_2: "- familiariza a los estudiantes con la sintaxis de las llamadas a métodos orientados a objetos."
|
||||
what_cover_parameters_1: "Parametros"
|
||||
what_cover_parameters_2: "- entrena en cómo pasar parámetros a funciones."
|
||||
what_cover_strings_1: "Cadenas"
|
||||
what_cover_strings_2: "- enseña a los estudiantes acerca de la notación en cadena y como pasar estas cadenas como parámetros."
|
||||
what_cover_loops_1: "Bucles"
|
||||
what_cover_loops_2: "- desarrolla la abstracción del diseño de programas cortos con bucles."
|
||||
what_cover_variables_1: "Variables"
|
||||
what_cover_variables_2: "- añade la habilidad de referenciar valores que cambian con el tiempo."
|
||||
what_cover_2: "Los estudiantes pueden continuar más allá del nivel 20, dependiendo de su velocidad e interés, para aprender dos conceptos adicionales en los niveles tardíos:"
|
||||
what_cover_logic_1: "Condicionales lógicos"
|
||||
what_cover_logic_2: "- cuándo y cómo utilizar if / else para controlar los resultados del juego."
|
||||
what_cover_input_1: "Manipulación de eventos de entrada"
|
||||
what_cover_input_2: "- responder a eventos de entrada para crear una interfaz de usuario."
|
||||
sys_requirements_title: "Requerimientos del sistema"
|
||||
sys_requirements_1: "Debido que CodeCombat es un juego, es más difícil para las computadoras correrlo en relación a un tutorial escrito o un video. Para que todos puedan jugar, hemos optimizado la web para correr rápidamente en todos los navegadores modernos y en maquinas antiguas. Dicho esto, aquí están nuestras sugerencias para sacar el máximo provecho de su experiencia en la Hora del Código:"
|
||||
sys_requirements_2: "Usar una versión actualizada del navegador Chrome o Firefox."
|
||||
sys_requirements_3: "Aunque CodeCombat funcionará en navegadores tan antiguas como IE9, el rendimiento no es tan bueno. Chrome es la mejor opción."
|
||||
sys_requirements_4: "Usar computadoras nuevas."
|
||||
sys_requirements_5: "Cumputadoras viejas, Chromebooks y netbooks tienden a tener menos recursos del sistema, lo que los convierte en una experiencia menos agradable. Se requiere al menos 2 GB de RAM."
|
||||
sys_requirements_6: "Permitir a los estudiantes usar auriculares / audífonos para escuchar el audio."
|
||||
sys_requirements_7: "Ayudamos a los jugadores mediante efectos de sonidos y voces en off, lo que podría hacer a las aulas espacios ruidosos y molestos."
|
||||
|
||||
versions:
|
||||
save_version_title: "Guardar nueva versión"
|
||||
|
@ -610,7 +628,7 @@ module.exports = nativeDescription: "Español (América Latina)", englishDescrip
|
|||
view_profile: "Ver tu perfil"
|
||||
|
||||
keyboard_shortcuts:
|
||||
keyboard_shortcuts: "Keyboard Shortcuts"
|
||||
keyboard_shortcuts: "Atajos de teclado"
|
||||
space: "Barra espaciadora"
|
||||
enter: "Enter"
|
||||
escape: "Escape"
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
|
|||
recovered: "Las gemas compradas con anterioridad han sido recuperadas. Por favor, refresca la página."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Suscríbete"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
|
|||
heroes: "¡Más heroes poderosos!"
|
||||
gems: "¡3500 joyas adicionales cada mes!"
|
||||
items: "¡Más de 250 artículos adicionales!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Para Padres"
|
||||
parents_title: "Tus hijos aprenderan a programar."
|
||||
parents_blurb1: "Con CodeCombat, tus hijos aprendes a desarrollar código real. Al inicio aprenden comandos simples, y avanzan a temas más avanzados."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -315,7 +315,7 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
|
|||
tip_extrapolation: "Il y a seulement deux types de personnes : celles qui peuvent extrapoler à partir de données incomplètes..."
|
||||
# tip_superpower: "Coding is the closest thing we have to a superpower."
|
||||
# tip_control_destiny: "In real open source, you have the right to control your own destiny. - Linus Torvalds"
|
||||
# tip_no_code: "No code is faster than no code."
|
||||
tip_no_code: "Aucun code n'est plus rapide qu'aucun code."
|
||||
# tip_code_never_lies: "Code never lies, comments sometimes do. — Ron Jeffries"
|
||||
# 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 ‘//’"
|
||||
|
@ -341,18 +341,19 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
|
|||
multiplayer_caption: "Jouer avec des amis!"
|
||||
auth_caption: "Sauvegarder votre progression."
|
||||
|
||||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
# all: "All-Time"
|
||||
# time: "Time"
|
||||
# damage_taken: "Damage Taken"
|
||||
# damage_dealt: "Damage Dealt"
|
||||
# difficulty: "Difficulty"
|
||||
# gold_collected: "Gold Collected"
|
||||
leaderboard:
|
||||
leaderboard: "classement"
|
||||
view_other_solutions: "Voir les autres solutions"
|
||||
scores: "Scores"
|
||||
top_solutions: "Meilleures solutions"
|
||||
day: "Aujourd'hui"
|
||||
week: "Cette semaine"
|
||||
all: "Tous les temps"
|
||||
time: "Temps"
|
||||
damage_taken: "Dégât subis"
|
||||
damage_dealt: "Dégât infligés"
|
||||
difficulty: "Difficulté"
|
||||
gold_collected: "Or collecté"
|
||||
|
||||
inventory:
|
||||
choose_inventory: "Équiper des Objets"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
|
|||
recovered: "Gemmes précédemment achetées récupérées. Merci de rafraîchir la page."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Inscription"
|
||||
unsubscribe: "Désinscription"
|
||||
confirm_unsubscribe: "Confirmer la désinscription"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
|
|||
heroes: "Héros plus puissants!"
|
||||
gems: "3500 gemmes en bonus chaque mois !"
|
||||
items: "Plus de 250 objets en bonus !"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Pour les parents"
|
||||
parents_title: "Votre enfant va apprendre à programmer."
|
||||
parents_blurb1: "Avec CodeCombat, votre enfant apprend en écrisant de vrais programmes. Ils commencent en apprenant des instructions simples, puis progressent sur des thèmes plus complexes."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Galego", englishDescription: "Galician", tr
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Galego", englishDescription: "Galician", tr
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Galego", englishDescription: "Galician", tr
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Feliratkozás"
|
||||
unsubscribe: "Leiratkozás"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
|
|||
heroes: "Még erősebb hősök!"
|
||||
gems: "3500 búnusz drágakő havonta!"
|
||||
items: "Több mint 250 bónusz tárgy!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Szülőknek"
|
||||
parents_title: "A gyereke programozni tanul majd."
|
||||
parents_blurb1: "A CodeCombattal a gyereke valódi programozási feladatokon keresztül tanul. Egyszerű utasításokkal kezdenek, aztán további témákba is betekintést kapnak."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
|
|||
recovered: "Acquisto precedente recuperato. Ricaricare la pagina."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
|
|||
recovered: "前のジェム購入をリカバリーしました。ページを更新してください。"
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Македонски", englishDescription:
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Македонски", englishDescription:
|
|||
recovered: "Претходното купување на скапоцени камења е вратено од загуба. Те молам 'освежи' ја страната."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Зачлени се"
|
||||
unsubscribe: "Откажи членство"
|
||||
confirm_unsubscribe: "Потврди откажување на членство"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "Македонски", englishDescription:
|
|||
heroes: "Помоќни херои!"
|
||||
gems: "3500 скапоцени камења секој месец!"
|
||||
items: "Над 250 дополнителни предмети и опрема!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "За родители"
|
||||
parents_title: "Вашето дете ќе научи да програмира."
|
||||
parents_blurb1: "Со CodeCombat, вашите деца учат преку пишување на вистински програмски код. Почнуваат со учење на едноставни команди, по што се продолжува на понапредни теми."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
|
|||
# heroes: "More powerful heroes!"
|
||||
gems: "Elke maand 3500 bonus juwelen!"
|
||||
items: "Meer dan 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Voor ouders"
|
||||
parents_title: "Uw kind zal de code leren."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Abonneren"
|
||||
unsubscribe: "Abonnement pzeggen"
|
||||
confirm_unsubscribe: "Opzegging Bevestigen"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
|
|||
heroes: "Sterkere helden!"
|
||||
gems: "3500 extra edelstenen elke maand!"
|
||||
items: "Meer dan 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Voor ouders"
|
||||
parents_title: "Uw kind leert programmeren."
|
||||
parents_blurb1: "Met CodeCombat leert uw kind door echte code te schrijven. Ze beginnen met simpele instructies en naarmate ze verder komen, komen er moeilijkere onderwerpen aan bod."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Português do Brasil", englishDescription:
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Português do Brasil", englishDescription:
|
|||
recovered: "Gems de compras anteriores Recuperadas. Por favor atualize a pagina."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Inscrever-se"
|
||||
unsubscribe: "Desinscrever-se"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "Português do Brasil", englishDescription:
|
|||
heroes: "Mais poderosos heróis!"
|
||||
gems: "3500 gemas bônus todo mês!"
|
||||
items: "Mais de 250 itens bônus!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Para os pais"
|
||||
parents_title: "Seus filhos aprenderam código."
|
||||
parents_blurb1: "Com o CodeCombat, seus filhos aprendem a codificar de verdade. Eles começam a aprender comandos simples, e progridem para tópicos avançados."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
|
|||
leaderboard:
|
||||
leaderboard: "Tabela de Classificação"
|
||||
view_other_solutions: "Ver Outras Soluções"
|
||||
scores: "Pontuações"
|
||||
top_solutions: "Melhores Soluções"
|
||||
day: "Hoje"
|
||||
week: "Esta Semana"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
|
|||
recovered: "Recuperada a compra de gemas anterior. Por favor atualiza a página."
|
||||
|
||||
subscribe:
|
||||
comparison_blurb: "Aperfeiçoa as tuas habilidades com uma subscrição do CodeCombat!"
|
||||
feature1: "60+ níveis básicos dispersos por 4 mundos"
|
||||
feature2: "7 <strong>heróis novos</strong> e poderosos com habilidades únicas!"
|
||||
feature3: "30+ níveis de bónus"
|
||||
feature4: "<strong>3500 gemas de bónus</strong> por mês!"
|
||||
feature5: "Tutoriais em vídeo"
|
||||
feature6: "Apoio por e-mail superior"
|
||||
free: "Grátis"
|
||||
month: "mês"
|
||||
subscribe_title: "Subscrever"
|
||||
unsubscribe: "Cancelar Subscrição"
|
||||
confirm_unsubscribe: "Confirmar Cancelamento da Subscrição"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Português (Portugal)", englishDescription:
|
|||
heroes: "Heróis mais poderosos!"
|
||||
gems: "3500 gemas de bónus todos os meses!"
|
||||
items: "Mais de 250 itens de bónus!"
|
||||
parent_button: "Pergunta ao teu educador"
|
||||
parent_email_description: "Vamos mandar-lhe um e-mail para que ele possa comprar-te uma subscrição do CodeCombat."
|
||||
parent_email_input_invalid: "Endereço de e-mail inválido."
|
||||
parent_email_input_label: "Endereço de e-mail do educador"
|
||||
parent_email_input_placeholder: "Introduz o e-mail do educador"
|
||||
parent_email_send: "Enviar E-mail"
|
||||
parent_email_sent: "E-mail enviado!"
|
||||
parent_email_title: "Qual é o e-mail do teu educador?"
|
||||
parents: "Para Educadores"
|
||||
parents_title: "O teu educando vai aprender a programar."
|
||||
parents_blurb1: "Com o CodeCombat, o teu educando aprende ao escrever código real. Começa por aprender comandos simples e progride para tópicos mais avançados."
|
||||
parents_blurb2: "Por $9.99 USD/mês, recebe novos desafios todas as semanas e suporte pessoal, via e-mail, de programadores profissionais."
|
||||
parents_blurb3: "Sem Risco: 100% de garantia de devolução do dinheiro, com anulação fácil de 1 clique."
|
||||
subscribe_button: "Subscrever Agora"
|
||||
subscribe_button: "Subscrever"
|
||||
stripe_description: "Subscrição Mensal"
|
||||
subscription_required_to_play: "Precisas de uma subscrição para jogares este nível."
|
||||
unlock_help_videos: "Subscreve-te para desbloqueares todos os tutoriais em vídeo."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
|
|||
leaderboard:
|
||||
leaderboard: "Таблица лидеров"
|
||||
view_other_solutions: "Посмотреть другие решения"
|
||||
scores: "Рейтинг"
|
||||
top_solutions: "Лучшие решения"
|
||||
day: "Сегодня"
|
||||
week: "На этой неделе"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
|
|||
recovered: "Предыдущие покупки самоцветов восстановлены. Пожалуйста, обновите страницу."
|
||||
|
||||
subscribe:
|
||||
comparison_blurb: "Отточите свое мастерство багодаря подписке на CodeCombat!"
|
||||
feature1: "60+ основных уровней на просторах 4-х миров"
|
||||
feature2: "7 могущественных <strong>новых героев</strong> с уникальными способностями!"
|
||||
feature3: "30+ дополнительных уровней"
|
||||
feature4: "<strong>3500 бонусных самоцветов</strong> каждый месяц!"
|
||||
feature5: "Обучающие видеоролики"
|
||||
feature6: "Эксклюзивная поддержка по электронной почте"
|
||||
free: "Бесплатно"
|
||||
month: "месяц"
|
||||
subscribe_title: "Подпишись"
|
||||
unsubscribe: "Отписаться"
|
||||
confirm_unsubscribe: "Подтвердить отмену подписки"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
|
|||
heroes: "Более сильные герои!"
|
||||
gems: "3500 бонусных самоцветов каждый месяц!"
|
||||
items: "Более 250 бонусных предметов!"
|
||||
parent_button: "Спросить у родителей"
|
||||
parent_email_description: "Мы отправим им электронное письмо, чтобы они смогли приобрести тебе подписку на CodeCombat."
|
||||
parent_email_input_invalid: "Адрес электронной почты введен неправильно."
|
||||
parent_email_input_label: "Адрес электронной почты родителей"
|
||||
parent_email_input_placeholder: "Введи адрес электронной почты родителей"
|
||||
parent_email_send: "Отправить письмо"
|
||||
parent_email_sent: "Письмо отправлено!"
|
||||
parent_email_title: "Какой у твоих родителей адрес электронной почты?"
|
||||
parents: "Для Родителей"
|
||||
parents_title: "Ваш ребенок научится программировать."
|
||||
parents_blurb1: "С CodeCombat ваш ребенок учится через написание реального кода. Начиная с изучения простых команд, продолжая более продвинутыми темами."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Українська", englishDescription:
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Українська", englishDescription:
|
|||
recovered: "Попередні покупки самоцвітів відновлені. Будь ласка, поновіть сторінку."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "Взяти абонемент"
|
||||
unsubscribe: "Скасувати абонемент"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "Українська", englishDescription:
|
|||
heroes: "Більше могутніх героїв!"
|
||||
gems: "Щомісячний бонус 3500 самоцвітів!"
|
||||
items: "Більше 250-ти бонусних предметів!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "Батькам"
|
||||
parents_title: "Ваша дитина вчитиметься програмувати."
|
||||
parents_blurb1: "Разом з CodeCombat Ваша дитина писатиме реальний код. Почне з простих команд та поступово буде розвиватись до складніших тем."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
recovered: "之前购买的宝石已恢复。请刷新页面。"
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "订阅"
|
||||
unsubscribe: "取消订阅"
|
||||
confirm_unsubscribe: "确认取消订阅"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
heroes: "更多强大的英雄!"
|
||||
gems: "每月多3500宝石奖励!"
|
||||
items: "超过250个物品奖励!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
parents: "致家长"
|
||||
parents_title: "您的孩子将要学习编写程序。"
|
||||
parents_blurb1: "通过使用CodeCombat,您的孩子将学习编写真正的程序代码。他们将学到简单指令,进而处理更复杂的问题。"
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
recovered: "先前購買的寶石已回復. 請重新載入頁面."
|
||||
|
||||
subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
subscribe_title: "訂閱"
|
||||
unsubscribe: "取消訂閱"
|
||||
confirm_unsubscribe: "確認訂閱"
|
||||
|
@ -393,6 +403,14 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "吴语", englishDescription: "Wuu (Simplifi
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "吴语", englishDescription: "Wuu (Simplifi
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "吴语", englishDescription: "Wuu (Simplifi
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
|
@ -344,6 +344,7 @@ module.exports = nativeDescription: "吳語", englishDescription: "Wuu (Traditio
|
|||
# leaderboard:
|
||||
# leaderboard: "Leaderboard"
|
||||
# view_other_solutions: "View Other Solutions"
|
||||
# scores: "Scores"
|
||||
# top_solutions: "Top Solutions"
|
||||
# day: "Today"
|
||||
# week: "This Week"
|
||||
|
@ -380,6 +381,15 @@ module.exports = nativeDescription: "吳語", englishDescription: "Wuu (Traditio
|
|||
# recovered: "Previous gems purchase recovered. Please refresh the page."
|
||||
|
||||
# subscribe:
|
||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||
# feature1: "60+ basic levels across 4 worlds"
|
||||
# feature2: "7 powerful <strong>new heroes</strong> with unique skills!"
|
||||
# feature3: "30+ bonus levels"
|
||||
# feature4: "<strong>3500 bonus gems</strong> every month!"
|
||||
# feature5: "Video tutorials"
|
||||
# feature6: "Premium email support"
|
||||
# free: "Free"
|
||||
# month: "month"
|
||||
# subscribe_title: "Subscribe"
|
||||
# unsubscribe: "Unsubscribe"
|
||||
# confirm_unsubscribe: "Confirm Unsubscribe"
|
||||
|
@ -393,12 +403,20 @@ module.exports = nativeDescription: "吳語", englishDescription: "Wuu (Traditio
|
|||
# heroes: "More powerful heroes!"
|
||||
# gems: "3500 bonus gems every month!"
|
||||
# items: "Over 250 bonus items!"
|
||||
# parent_button: "Ask your parent"
|
||||
# parent_email_description: "We'll email them so they can buy you a CodeCombat subscription."
|
||||
# parent_email_input_invalid: "Email address invalid."
|
||||
# parent_email_input_label: "Parent email address"
|
||||
# parent_email_input_placeholder: "Enter parent email"
|
||||
# parent_email_send: "Send Email"
|
||||
# parent_email_sent: "Email sent!"
|
||||
# parent_email_title: "What's your parent's email?"
|
||||
# parents: "For Parents"
|
||||
# parents_title: "Your child will learn to code."
|
||||
# parents_blurb1: "With CodeCombat, your child learns by writing real code. They start by learning simple commands, and progress to more advanced topics."
|
||||
# parents_blurb2: "For $9.99 USD/mo, they get new challenges every week and personal email support from professional programmers."
|
||||
# parents_blurb3: "No Risk: 100% money back guarantee, easy 1-click unsubscribe."
|
||||
# subscribe_button: "Subscribe Now"
|
||||
# subscribe_button: "Subscribe"
|
||||
# stripe_description: "Monthly Subscription"
|
||||
# subscription_required_to_play: "You'll need a subscription to play this level."
|
||||
# unlock_help_videos: "Subscribe to unlock all video tutorials."
|
||||
|
|
156
scripts/analytics/mongodb/queries/helpUsage.js
Normal file
156
scripts/analytics/mongodb/queries/helpUsage.js
Normal file
|
@ -0,0 +1,156 @@
|
|||
// Help button and video usage
|
||||
|
||||
// Usage:
|
||||
// mongo <address>:<port>/<database> <script file> -u <username> -p <password>
|
||||
|
||||
// What do we want to know?
|
||||
// For each level, how many clicks, starts, finishes
|
||||
// Individual users only counted once for a level/event combo
|
||||
|
||||
try {
|
||||
var scriptStartTime = new Date();
|
||||
var analyticsStringCache = {};
|
||||
|
||||
// Look at last 30 days, same as Mixpanel
|
||||
var numDays = 30;
|
||||
|
||||
var startDay = new Date();
|
||||
today = startDay.toISOString().substr(0, 10);
|
||||
startDay.setUTCDate(startDay.getUTCDate() - numDays);
|
||||
startDay = startDay.toISOString().substr(0, 10);
|
||||
|
||||
log("Today is " + today);
|
||||
log("Start day is " + startDay);
|
||||
|
||||
var events = ['Problem alert help clicked', 'Spell palette help clicked', 'Start help video', 'Finish help video'];
|
||||
|
||||
var helpData = getHelpData(startDay, events);
|
||||
helpData.sort(function (a,b) {
|
||||
var clickedA = a['Problem alert help clicked'] || 0;
|
||||
clickedA += a['Spell palette help clicked'] || 0;
|
||||
var clickedB = b['Problem alert help clicked'] || 0;
|
||||
clickedB += b['Spell palette help clicked'] || 0;
|
||||
return clickedA < clickedB ? 1 : -1;
|
||||
});
|
||||
|
||||
log('Help Clicks\tVideo Starts\tStart Rate\tVideo Finishes\tFinish Rate\tLevel')
|
||||
for(var i = 0; i < helpData.length; i++) {
|
||||
var level = helpData[i].level;
|
||||
var clicked = helpData[i]['Problem alert help clicked'] || 0;
|
||||
clicked += helpData[i]['Spell palette help clicked'] || 0;
|
||||
var started = helpData[i]['Start help video'] || 0;
|
||||
var startRate = clicked > 0 ? started / clicked * 100 : 0.0;
|
||||
var finished = helpData[i]['Finish help video'] || 0;
|
||||
var finishRate = clicked > 0 ? finished / clicked * 100 : 0.0;
|
||||
if (started > 1) {
|
||||
log(clicked + '\t' + started + '\t' + startRate.toFixed(2) + '%\t' + finished + '\t' + finishRate.toFixed(2) + '%\t' + level);
|
||||
}
|
||||
}
|
||||
|
||||
log("Script runtime: " + (new Date() - scriptStartTime));
|
||||
}
|
||||
catch(err) {
|
||||
log("ERROR: " + err);
|
||||
printjson(err);
|
||||
}
|
||||
|
||||
// *** Helper functions ***
|
||||
|
||||
function log(str) {
|
||||
print(new Date().toISOString() + " " + str);
|
||||
}
|
||||
|
||||
function objectIdWithTimestamp(timestamp) {
|
||||
// Convert string date to Date object (otherwise assume timestamp is a date)
|
||||
if (typeof(timestamp) == 'string') timestamp = new Date(timestamp);
|
||||
// Convert date object to hex seconds since Unix epoch
|
||||
var hexSeconds = Math.floor(timestamp/1000).toString(16);
|
||||
// Create an ObjectId with that hex timestamp
|
||||
var constructedObjectId = ObjectId(hexSeconds + "0000000000000000");
|
||||
return constructedObjectId
|
||||
}
|
||||
|
||||
function getAnalyticsString(str) {
|
||||
if (analyticsStringCache[str]) return analyticsStringCache[str];
|
||||
|
||||
// Find existing string
|
||||
var doc = db['analytics.strings'].findOne({v: str});
|
||||
if (doc) {
|
||||
analyticsStringCache[str] = doc._id;
|
||||
return analyticsStringCache[str];
|
||||
}
|
||||
|
||||
// TODO: Not sure we want to always insert strings here.
|
||||
// // Insert string
|
||||
// // http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/#auto-increment-optimistic-loop
|
||||
// doc = {v: str};
|
||||
// while (true) {
|
||||
// var cursor = db['analytics.strings'].find({}, {_id: 1}).sort({_id: -1}).limit(1);
|
||||
// var seq = cursor.hasNext() ? cursor.next()._id + 1 : 1;
|
||||
// doc._id = seq;
|
||||
// var results = db['analytics.strings'].insert(doc);
|
||||
// if (results.hasWriteError()) {
|
||||
// if ( results.writeError.code == 11000 /* dup key */ ) continue;
|
||||
// else throw new Error("ERROR: Unexpected error inserting data: " + tojson(results));
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
//
|
||||
// // Find new string entry
|
||||
// doc = db['analytics.strings'].findOne({v: str});
|
||||
// if (doc) {
|
||||
// analyticsStringCache[str] = doc._id;
|
||||
// return analyticsStringCache[str];
|
||||
// }
|
||||
throw new Error("ERROR: Did not find analytics.strings insert for: " + str);
|
||||
}
|
||||
|
||||
function getHelpData(startDay, events) {
|
||||
if (!startDay || !events || events.length === 0) return {};
|
||||
|
||||
var startObj = objectIdWithTimestamp(ISODate(startDay + "T00:00:00.000Z"));
|
||||
var queryParams = {$and: [{_id: {$gte: startObj}},{"event": {$in: events}}]};
|
||||
var cursor = db['analytics.log.events'].find(queryParams);
|
||||
|
||||
// Map ordering: level, user, event
|
||||
var levelUserEventMap = {};
|
||||
while (cursor.hasNext()) {
|
||||
var doc = cursor.next();
|
||||
var created = doc._id.getTimestamp().toISOString();
|
||||
var event = doc.event;
|
||||
var user = doc.user.valueOf();
|
||||
var properties = doc.properties;
|
||||
var level = properties.level || properties.levelID;
|
||||
|
||||
if (!levelUserEventMap[level]) levelUserEventMap[level] = {};
|
||||
if (!levelUserEventMap[level][user]) levelUserEventMap[level][user] = {};
|
||||
if (!levelUserEventMap[level][user][event]) levelUserEventMap[level][user][event] = 1;
|
||||
}
|
||||
// printjson(levelUserEventMap);
|
||||
|
||||
// Data: level, event, count
|
||||
var levelEventMap = {};
|
||||
for (level in levelUserEventMap) {
|
||||
for (user in levelUserEventMap[level]) {
|
||||
for (event in levelUserEventMap[level][user]) {
|
||||
if (!levelEventMap[level]) levelEventMap[level] = {};
|
||||
if (!levelEventMap[level][event]) levelEventMap[level][event] = 0;
|
||||
levelEventMap[level][event] += levelUserEventMap[level][user][event];
|
||||
}
|
||||
}
|
||||
}
|
||||
// printjson(levelEventMap);
|
||||
|
||||
helpData = [];
|
||||
for (level in levelEventMap) {
|
||||
var data = {level: level};
|
||||
for (event in levelEventMap[level]) {
|
||||
data[event] = levelEventMap[level][event];
|
||||
}
|
||||
for (var i = 0; i < events.length; i++) {
|
||||
if (!data[events[i]]) data[events[i]] = 0
|
||||
}
|
||||
helpData.push(data);
|
||||
}
|
||||
return helpData;
|
||||
}
|
|
@ -97,7 +97,7 @@ class AnalyticsPerDayHandler extends Handler
|
|||
@sendSuccess res, completions
|
||||
|
||||
getLevelData = (campaignLevels) =>
|
||||
# 2. Get ordered level slugs and string ID to level slug mappping
|
||||
# 2. Get ordered level slugs and string ID to level slug mapping
|
||||
# Input:
|
||||
# campaignLevels - array of Level IDs
|
||||
|
||||
|
|
|
@ -461,8 +461,9 @@ module.exports = class Handler
|
|||
sendwithus.api.send context, (err, result) ->
|
||||
|
||||
sendChangedHipChatMessage: (options) ->
|
||||
message = "#{options.creator.get('name')} saved a change to <a href=\"#{options.docLink}\">#{options.target.get('name')}</a>: #{options.target.get('commitMessage')}"
|
||||
hipchat.sendHipChatMessage message
|
||||
message = "#{options.creator.get('name')} saved a change to <a href=\"#{options.docLink}\">#{options.target.get('name')}</a>: #{options.target.get('commitMessage') or '(no commit message)'}"
|
||||
rooms = if /Diplomat submission/.test(message) then ['main'] else ['main', 'artisans']
|
||||
hipchat.sendHipChatMessage message, rooms
|
||||
|
||||
makeNewInstance: (req) ->
|
||||
model = new @modelClass({})
|
||||
|
|
|
@ -2,32 +2,34 @@ config = require '../server_config'
|
|||
request = require 'request'
|
||||
log = require 'winston'
|
||||
|
||||
module.exports.sendHipChatMessage = sendHipChatMessage = (message) ->
|
||||
return unless key = config.hipchatAPIKey
|
||||
return unless config.isProduction
|
||||
roomID = 254598
|
||||
form =
|
||||
color: 'yellow'
|
||||
notify: false
|
||||
message: message
|
||||
messageFormat: 'html'
|
||||
url = "https://api.hipchat.com/v2/room/#{roomID}/notification?auth_token=#{key}"
|
||||
request.post {uri: url, json: form}, (err, res, body) ->
|
||||
return log.error 'Error sending HipChat patch request:', err or body if err or /error/i.test body
|
||||
#log.info "Got HipChat patch response:", body
|
||||
roomIDMap =
|
||||
main: 254598
|
||||
artisans: 1146994
|
||||
tower: 318356
|
||||
|
||||
module.exports.sendTowerHipChatMessage = sendTowerHipChatMessage = (message) ->
|
||||
secondsFromEpoch = Math.floor(new Date().getTime() / 1000)
|
||||
link = "<a href=\"https://papertrailapp.com/groups/488214/events?time=#{secondsFromEpoch}\">PaperTrail</a>"
|
||||
message = "#{message} #{link}"
|
||||
return unless key = config.hipchatTowerAPIKey
|
||||
module.exports.sendHipChatMessage = sendHipChatMessage = (message, rooms, options) ->
|
||||
return unless config.isProduction
|
||||
roomID = 318356
|
||||
form =
|
||||
color: 'red'
|
||||
notify: true
|
||||
message: message
|
||||
messageFormat: 'html'
|
||||
url = "https://api.hipchat.com/v2/room/#{roomID}/notification?auth_token=#{key}"
|
||||
request.post {uri: url, json: form}, (err, res, body) ->
|
||||
return log.error 'Error sending HipChat Tower message:', err or body if err or /error/i.test body
|
||||
rooms ?= ['main']
|
||||
options ?= {}
|
||||
for room in rooms
|
||||
unless roomID = roomIDMap[room]
|
||||
log.error "Unknown HipChat room #{room}."
|
||||
continue
|
||||
unless key = config.hipchat[room]
|
||||
log.info "No HipChat API key for room #{room}."
|
||||
continue
|
||||
form =
|
||||
color: options.color or 'yellow'
|
||||
notify: false
|
||||
message: message
|
||||
messageFormat: 'html'
|
||||
if options.papertrail
|
||||
secondsFromEpoch = Math.floor(new Date().getTime() / 1000)
|
||||
link = "<a href=\"https://papertrailapp.com/groups/488214/events?time=#{secondsFromEpoch}\">PaperTrail</a>"
|
||||
form.message = "#{message} #{link}"
|
||||
form.color = options.color or 'red'
|
||||
form.notify = true
|
||||
url = "https://api.hipchat.com/v2/room/#{roomID}/notification?auth_token=#{key}"
|
||||
request.post {uri: url, json: form}, (err, res, body) ->
|
||||
return log.error 'Error sending HipChat message:', err or body if err or /error/i.test body
|
||||
#log.info "Got HipChat message response:", body
|
||||
|
|
|
@ -101,6 +101,6 @@ PatchHandler = class PatchHandler extends Handler
|
|||
|
||||
sendPatchCreatedHipChatMessage: (options) ->
|
||||
message = "#{options.creator.get('name')} submitted a patch to <a href=\"#{options.docLink}\">#{options.target.get('name')}</a>: #{options.patch.get('commitMessage')}"
|
||||
hipchat.sendHipChatMessage message
|
||||
hipchat.sendHipChatMessage message, ['main']
|
||||
|
||||
module.exports = new PatchHandler()
|
||||
|
|
|
@ -35,7 +35,7 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
editableProperties: []
|
||||
postEditableProperties: ['purchased']
|
||||
jsonSchema: require '../../app/schemas/models/payment.schema'
|
||||
|
||||
|
||||
get: (req, res) ->
|
||||
return res.send([]) unless req.user
|
||||
q = Payment.find({recipient:req.user._id})
|
||||
|
@ -43,7 +43,7 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
return @sendDatabaseError(res, err) if err
|
||||
res.send(payments)
|
||||
)
|
||||
|
||||
|
||||
logPaymentError: (req, msg) ->
|
||||
console.warn "Payment Error: #{req.user.get('slug')} (#{req.user._id}): '#{msg}'"
|
||||
|
||||
|
@ -57,10 +57,10 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
post: (req, res, pathName) ->
|
||||
if pathName is 'check-stripe-charges'
|
||||
return @checkStripeCharges(req, res)
|
||||
|
||||
|
||||
if (not req.user) or req.user.isAnonymous()
|
||||
return @sendForbiddenError(res)
|
||||
|
||||
|
||||
appleReceipt = req.body.apple?.rawReceipt
|
||||
appleTransactionID = req.body.apple?.transactionID
|
||||
appleLocalPrice = req.body.apple?.localPrice
|
||||
|
@ -146,7 +146,7 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
if validation.valid is false
|
||||
@logPaymentError(req, 'Invalid apple payment object.')
|
||||
return @sendBadInputError(res, validation.errors)
|
||||
|
||||
|
||||
payment.save((err) =>
|
||||
if err
|
||||
@logPaymentError(req, 'Apple payment save error.'+err)
|
||||
|
@ -170,24 +170,24 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
# First, make sure we save the payment info as a Customer object, if we haven't already.
|
||||
if token
|
||||
customerID = req.user.get('stripe')?.customerID
|
||||
|
||||
|
||||
if customerID
|
||||
# old customer, new token. Save it.
|
||||
stripe.customers.update customerID, { card: token }, (err, customer) =>
|
||||
@beginStripePayment(req, res, timestamp, productID)
|
||||
|
||||
|
||||
else
|
||||
newCustomer = {
|
||||
card: token
|
||||
email: req.user.get('email')
|
||||
metadata: { id: req.user._id + '', slug: req.user.get('slug') }
|
||||
}
|
||||
|
||||
|
||||
stripe.customers.create newCustomer, (err, customer) =>
|
||||
if err
|
||||
@logPaymentError(req, 'Stripe customer creation error. '+err)
|
||||
return @sendDatabaseError(res, err)
|
||||
|
||||
|
||||
stripeInfo = _.cloneDeep(req.user.get('stripe') ? {})
|
||||
stripeInfo.customerID = customer.id
|
||||
req.user.set('stripe', stripeInfo)
|
||||
|
@ -223,7 +223,7 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
((err, results) =>
|
||||
if err
|
||||
@logPaymentError(req, 'Stripe async load db error. '+err)
|
||||
return @sendDatabaseError(res, err)
|
||||
return @sendDatabaseError(res, err)
|
||||
[payment, charge] = results
|
||||
|
||||
if not (payment or charge)
|
||||
|
@ -285,7 +285,7 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
timestamp: parseInt(charge.metadata.timestamp)
|
||||
chargeID: charge.id
|
||||
}
|
||||
|
||||
|
||||
validation = @validateDocumentInput(payment.toObject())
|
||||
if validation.valid is false
|
||||
@logPaymentError(req, 'Invalid stripe payment object.')
|
||||
|
@ -302,9 +302,9 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
)
|
||||
)
|
||||
|
||||
|
||||
|
||||
#- Confirm all Stripe charges are recorded on our server
|
||||
|
||||
|
||||
checkStripeCharges: (req, res) ->
|
||||
return @sendSuccess(res) unless customerID = req.user.get('stripe')?.customerID
|
||||
async.parallel([
|
||||
|
@ -366,7 +366,7 @@ PaymentHandler = class PaymentHandler extends Handler
|
|||
sendPaymentHipChatMessage: (options) ->
|
||||
try
|
||||
message = "#{options.user?.get('name')} bought #{options.payment?.get('amount')} via #{options.payment?.get('service')}."
|
||||
hipchat.sendHipChatMessage message
|
||||
hipchat.sendHipChatMessage message, ['tower']
|
||||
catch e
|
||||
log.error "Couldn't send HipChat message on payment because of error: #{e}"
|
||||
|
||||
|
|
|
@ -4,8 +4,6 @@ Handler = require '../commons/Handler'
|
|||
{handlers} = require '../commons/mapping'
|
||||
mongoose = require 'mongoose'
|
||||
log = require 'winston'
|
||||
sendwithus = require '../sendwithus'
|
||||
hipchat = require '../hipchat'
|
||||
|
||||
PurchaseHandler = class PurchaseHandler extends Handler
|
||||
modelClass: Purchase
|
||||
|
@ -19,22 +17,22 @@ PurchaseHandler = class PurchaseHandler extends Handler
|
|||
purchase.set 'recipient', req.user._id
|
||||
purchase.set 'created', new Date().toISOString()
|
||||
purchase
|
||||
|
||||
|
||||
post: (req, res) ->
|
||||
purchased = req.body.purchased
|
||||
purchaser = req.user._id
|
||||
purchasedOriginal = purchased?.original
|
||||
|
||||
|
||||
Handler = require '../commons/Handler'
|
||||
return @sendBadInputError(res) if not Handler.isID(purchasedOriginal)
|
||||
|
||||
|
||||
collection = purchased?.collection
|
||||
return @sendBadInputError(res) if not collection in @jsonSchema.properties.purchased.properties.collection.enum
|
||||
|
||||
|
||||
handler = require('../' + handlers[collection])
|
||||
criteria = { 'original': purchasedOriginal }
|
||||
sort = { 'version.major': -1, 'version.minor': -1 }
|
||||
|
||||
|
||||
handler.modelClass.findOne(criteria).sort(sort).exec (err, purchasedItem) =>
|
||||
gemsOwned = req.user.get('earned')?.gems or 0
|
||||
return @sendDatabaseError(res, err) if err
|
||||
|
@ -51,7 +49,7 @@ PurchaseHandler = class PurchaseHandler extends Handler
|
|||
if purchase
|
||||
@addPurchaseToUser(req, res)
|
||||
return @sendSuccess(res, @formatEntity(req, purchase))
|
||||
|
||||
|
||||
else
|
||||
super(req, res)
|
||||
|
||||
|
|
|
@ -49,7 +49,7 @@ module.exports.setup = (app) ->
|
|||
log.error(error.stack)
|
||||
# TODO: Generally ignore this error: error: Error trying db method get route analytics.log.event from undefined: Error: Cannot find module '../undefined'
|
||||
unless "#{parts}" in ['analytics.users.active']
|
||||
hipchat.sendTowerHipChatMessage errorMessage
|
||||
hipchat.sendHipChatMessage errorMessage, ['tower'], papertrail: true
|
||||
errors.notFound(res, "Route #{req?.path} not found.")
|
||||
|
||||
getSchema = (req, res, moduleName) ->
|
||||
|
|
|
@ -249,7 +249,6 @@ UserHandler = class UserHandler extends Handler
|
|||
|
||||
sendOneTimeEmail: (req, res) ->
|
||||
# TODO: should this API be somewhere else?
|
||||
# TODO: hipchat tower success message shows up as a misleading PaperTrail error message
|
||||
return @sendForbiddenError(res) unless req.user
|
||||
email = req.query.email or req.body.email
|
||||
type = req.query.type or req.body.type
|
||||
|
@ -276,7 +275,7 @@ UserHandler = class UserHandler extends Handler
|
|||
req.user.save (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendSuccess(res, {result: 'success'})
|
||||
hipchat.sendTowerHipChatMessage "#{req.user.get('name') or req.user.get('email')} just submitted subscribe modal parent email #{email}."
|
||||
hipchat.sendHipChatMessage "#{req.user.get('name')} #{req.user.get('email')} submitted a subscribe modal parent email #{email}", ['tower']
|
||||
AnalyticsLogEvent.logEvent req.user, 'Sent one time email', email: email, type: type
|
||||
|
||||
agreeToCLA: (req, res) ->
|
||||
|
@ -295,7 +294,7 @@ UserHandler = class UserHandler extends Handler
|
|||
req.user.save (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendSuccess(res, {result: 'success'})
|
||||
hipchat.sendHipChatMessage "#{req.body.githubUsername or req.user.get('name')} just signed the CLA."
|
||||
hipchat.sendHipChatMessage "#{req.body.githubUsername or req.user.get('name')} just signed the CLA.", ['main']
|
||||
|
||||
avatar: (req, res, id) ->
|
||||
@modelClass.findById(id).exec (err, document) =>
|
||||
|
|
|
@ -48,8 +48,11 @@ config.mail =
|
|||
cronHandlerPublicIP: process.env.COCO_CRON_PUBLIC_IP or ''
|
||||
cronHandlerPrivateIP: process.env.COCO_CRON_PRIVATE_IP or ''
|
||||
|
||||
config.hipchatAPIKey = process.env.COCO_HIPCHAT_API_KEY or ''
|
||||
config.hipchatTowerAPIKey = process.env.COCO_HIPCHAT_TOWER_API_KEY or ''
|
||||
config.hipchat =
|
||||
main: process.env.COCO_HIPCHAT_API_KEY or ''
|
||||
tower: process.env.COCO_HIPCHAT_TOWER_API_KEY or ''
|
||||
artisans: process.env.COCO_HIPCHAT_ARTISANS_API_KEY or ''
|
||||
|
||||
config.queue =
|
||||
accessKeyId: process.env.COCO_AWS_ACCESS_KEY_ID or ''
|
||||
secretAccessKey: process.env.COCO_AWS_SECRET_ACCESS_KEY or ''
|
||||
|
|
Loading…
Reference in a new issue