mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2024-12-14 01:31:15 -05:00
Merge branch 'master' into production
This commit is contained in:
commit
ca55708b8a
4 changed files with 109 additions and 93 deletions
|
@ -42,6 +42,7 @@ module.exports = FacebookHandler = class FacebookHandler extends CocoClass
|
||||||
FB.api('/me', {fields: 'email,last_name,first_name,gender'}, @onReceiveMeInfo)
|
FB.api('/me', {fields: 'email,last_name,first_name,gender'}, @onReceiveMeInfo)
|
||||||
|
|
||||||
onReceiveMeInfo: (r) =>
|
onReceiveMeInfo: (r) =>
|
||||||
|
console.log "Got Facebook user info:", r
|
||||||
unless r.email
|
unless r.email
|
||||||
console.error('could not get data, since no email provided')
|
console.error('could not get data, since no email provided')
|
||||||
return
|
return
|
||||||
|
|
|
@ -4,20 +4,20 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
no_ie: "죄송하지만 코드컴뱃은 인터넷 익스플로러 8에서는 동작하지 않습니다." # Warning that only shows up in IE8 and older
|
no_ie: "죄송하지만 코드컴뱃은 인터넷 익스플로러 8에서는 동작하지 않습니다." # Warning that only shows up in IE8 and older
|
||||||
no_mobile: "코드 컴뱃은 모바일 기기용으로 제작되지 않았습니다. 아마 동작하지 않을 가능성이 높습니다." # Warning that shows up on mobile devices
|
no_mobile: "코드 컴뱃은 모바일 기기용으로 제작되지 않았습니다. 아마 동작하지 않을 가능성이 높습니다." # Warning that shows up on mobile devices
|
||||||
play: "시작" # The big play button that opens up the campaign view.
|
play: "시작" # The big play button that opens up the campaign view.
|
||||||
# play_campaign_version: "Play Campaign Version" # Shows up under big play button if you only play /courses
|
play_campaign_version: "캠페인 버전 플레이" # Shows up under big play button if you only play /courses
|
||||||
old_browser: "브라우저가 너무 오래된 버전이라 코드 컴뱃을 실행할 수 없습니다." # Warning that shows up on really old Firefox/Chrome/Safari
|
old_browser: "브라우저가 너무 오래된 버전이라 코드 컴뱃을 실행할 수 없습니다." # Warning that shows up on really old Firefox/Chrome/Safari
|
||||||
old_browser_suffix: "시도해볼 수는 있겠지만..안될 수도 있습니다."
|
old_browser_suffix: "시도해볼 수는 있겠지만..안될 수도 있습니다."
|
||||||
# ipad_browser: "Bad news: CodeCombat doesn't run on iPad in the browser. Good news: our native iPad app is awaiting Apple approval."
|
ipad_browser: "슬픈 소식: 코드컴뱃은 아이패드의 브라우저에서 구동되지않습니다. 좋은 소식: 우리의 아이패드 앱은 애플의 승인을 기다리고있습니다 ."
|
||||||
campaign: "캠페인"
|
campaign: "캠페인"
|
||||||
for_beginners: "초보자용"
|
for_beginners: "초보자용"
|
||||||
multiplayer: "멀티플레이어" # Not currently shown on home page
|
multiplayer: "멀티플레이어" # Not currently shown on home page
|
||||||
for_developers: "개발자용" # Not currently shown on home page.
|
for_developers: "개발자용" # Not currently shown on home page.
|
||||||
# or_ipad: "Or download for iPad"
|
or_ipad: "또는 아이패드의 다운로드"
|
||||||
|
|
||||||
nav:
|
nav:
|
||||||
play: "레벨" # The top nav bar entry where players choose which levels to play
|
play: "레벨" # The top nav bar entry where players choose which levels to play
|
||||||
community: "커뮤니티"
|
community: "커뮤니티"
|
||||||
# courses: "Courses"
|
courses: "코스"
|
||||||
editor: "에디터"
|
editor: "에디터"
|
||||||
blog: "블로그"
|
blog: "블로그"
|
||||||
forum: "포럼"
|
forum: "포럼"
|
||||||
|
@ -33,7 +33,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
contact: "문의"
|
contact: "문의"
|
||||||
twitter_follow: "팔로우"
|
twitter_follow: "팔로우"
|
||||||
teachers: "선생님들"
|
teachers: "선생님들"
|
||||||
# careers: "Careers"
|
careers: "채용"
|
||||||
|
|
||||||
modal:
|
modal:
|
||||||
close: "닫기"
|
close: "닫기"
|
||||||
|
@ -52,7 +52,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
|
|
||||||
play:
|
play:
|
||||||
play_as: "Play As " # Ladder page
|
play_as: "Play As " # Ladder page
|
||||||
# compete: "Compete!" # Course details page
|
compete: "경쟁!" # Course details page
|
||||||
spectate: "관중모드" # Ladder page
|
spectate: "관중모드" # Ladder page
|
||||||
players: "플레이어" # Hover over a level on /play
|
players: "플레이어" # Hover over a level on /play
|
||||||
hours_played: "플레이한 시간" # Hover over a level on /play
|
hours_played: "플레이한 시간" # Hover over a level on /play
|
||||||
|
@ -68,14 +68,14 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
achievements: "성취한 목표" # Tooltip on achievement list button from /play
|
achievements: "성취한 목표" # Tooltip on achievement list button from /play
|
||||||
account: "계정" # Tooltip on account button from /play
|
account: "계정" # Tooltip on account button from /play
|
||||||
settings: "설정" # Tooltip on settings button from /play
|
settings: "설정" # Tooltip on settings button from /play
|
||||||
# poll: "Poll" # Tooltip on poll button from /play
|
poll: "투표" # Tooltip on poll button from /play
|
||||||
next: "다음" # Go from choose hero to choose inventory before playing a level
|
next: "다음" # Go from choose hero to choose inventory before playing a level
|
||||||
change_hero: "영웅 교체" # Go back from choose inventory to choose hero
|
change_hero: "영웅 교체" # Go back from choose inventory to choose hero
|
||||||
buy_gems: "젬 구매"
|
buy_gems: "젬 구매"
|
||||||
# subscription_required: "Subscription Required"
|
subscription_required: "가입 필수"
|
||||||
anonymous: "이름없는 플레이어"
|
anonymous: "이름없는 플레이어"
|
||||||
level_difficulty: "난이도: "
|
level_difficulty: "난이도: "
|
||||||
# play_classroom_version: "Play Classroom Version" # Choose a level in campaign version that you also can play in one of your courses
|
play_classroom_version: "교실 버전 플레이" # Choose a level in campaign version that you also can play in one of your courses
|
||||||
campaign_beginner: "초보자 캠페인"
|
campaign_beginner: "초보자 캠페인"
|
||||||
awaiting_levels_adventurer_prefix: "매주 마다 새로운 레벨이 생깁니다."
|
awaiting_levels_adventurer_prefix: "매주 마다 새로운 레벨이 생깁니다."
|
||||||
awaiting_levels_adventurer: "모험자로 등록 하세요!"
|
awaiting_levels_adventurer: "모험자로 등록 하세요!"
|
||||||
|
@ -83,16 +83,16 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
adjust_volume: "소리 조절"
|
adjust_volume: "소리 조절"
|
||||||
campaign_multiplayer: "멀티 플레이어 전투장"
|
campaign_multiplayer: "멀티 플레이어 전투장"
|
||||||
campaign_multiplayer_description: "... 이곳에서 당신은 다른 인간 플레이어들과 직접 결투할 수 있습니다."
|
campaign_multiplayer_description: "... 이곳에서 당신은 다른 인간 플레이어들과 직접 결투할 수 있습니다."
|
||||||
# campaign_old_multiplayer: "(Deprecated) Old Multiplayer Arenas"
|
campaign_old_multiplayer: "(추천하지 않습니다) 숙련된 멀티플레이어 경쟁"
|
||||||
# campaign_old_multiplayer_description: "Relics of a more civilized age. No simulations are run for these older, hero-less multiplayer arenas."
|
campaign_old_multiplayer_description: "더 문명화 된 시대의 유물. 어떤 시뮬레이션은 이러한 이전, 영웅없는 멀티 경기장에 대해 실행되지 않습니다."
|
||||||
|
|
||||||
share_progress_modal:
|
share_progress_modal:
|
||||||
# blurb: "You’re making great progress! Tell your parent how much you've learned with CodeCombat."
|
blurb: "당신은 큰 진전을 보이고있습니다! 당신이 코드컴뱃으로 얼마나 많이 배웠는지 부모님게 말하십시오."
|
||||||
email_invalid: "이메일 주소가 올바르지 않습니다."
|
email_invalid: "이메일 주소가 올바르지 않습니다."
|
||||||
# form_blurb: "Enter your parent's email below and we’ll show them!"
|
form_blurb: "아래에 부모님의 이메일을 입력하고 우리는 그것들을 보여줍니다!"
|
||||||
form_label: "이메일"
|
form_label: "이메일"
|
||||||
placeholder: "이메일"
|
placeholder: "이메일"
|
||||||
# title: "Excellent Work, Apprentice"
|
title: "우수한, 초심자"
|
||||||
|
|
||||||
login:
|
login:
|
||||||
sign_up: "계정 생성"
|
sign_up: "계정 생성"
|
||||||
|
@ -100,8 +100,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
logging_in: "로그인 중"
|
logging_in: "로그인 중"
|
||||||
log_out: "로그아웃"
|
log_out: "로그아웃"
|
||||||
forgot_password: "비밀번호를 잊으셨나요?"
|
forgot_password: "비밀번호를 잊으셨나요?"
|
||||||
# authenticate_gplus: "Authenticate G+"
|
authenticate_gplus: "G+ 인증"
|
||||||
# load_profile: "Load G+ Profile"
|
load_profile: "G+ 프로필 불러오기"
|
||||||
finishing: "완료중.."
|
finishing: "완료중.."
|
||||||
sign_in_with_facebook: "Facebook으로 로그인"
|
sign_in_with_facebook: "Facebook으로 로그인"
|
||||||
sign_in_with_gplus: "G+로 로그인"
|
sign_in_with_gplus: "G+로 로그인"
|
||||||
|
@ -114,9 +114,9 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
log_in: "비밀번호로 로그인"
|
log_in: "비밀번호로 로그인"
|
||||||
required: "진행하기 전에 로그인이 필요합니다."
|
required: "진행하기 전에 로그인이 필요합니다."
|
||||||
login_switch: "이미 계정이 있으신가요?"
|
login_switch: "이미 계정이 있으신가요?"
|
||||||
# school_name: "School Name and City"
|
school_name: "학교 이름과 도시"
|
||||||
# optional: "optional"
|
optional: "옵션"
|
||||||
# school_name_placeholder: "Example High School, Springfield, IL"
|
school_name_placeholder: "예시 고등학교, 스프링필드, IL"
|
||||||
|
|
||||||
recover:
|
recover:
|
||||||
recover_account_title: "계정 복구"
|
recover_account_title: "계정 복구"
|
||||||
|
@ -166,18 +166,18 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
withdrawn: "취소됨"
|
withdrawn: "취소됨"
|
||||||
accept: "승인"
|
accept: "승인"
|
||||||
reject: "보류"
|
reject: "보류"
|
||||||
# withdraw: "Withdraw"
|
withdraw: "철수"
|
||||||
submitter: "제출자"
|
submitter: "제출자"
|
||||||
submitted: "제출됨"
|
submitted: "제출됨"
|
||||||
commit_msg: "커밋 메세지"
|
commit_msg: "커밋 메세지"
|
||||||
version_history: "버전 히스토리"
|
version_history: "버전 히스토리"
|
||||||
version_history_for: "버전 히스토리 : "
|
version_history_for: "버전 히스토리 : "
|
||||||
# select_changes: "Select two changes below to see the difference."
|
select_changes: "차이를 보기위해 두 가지 사항을 변경하도록 선택합니다."
|
||||||
# undo_prefix: "Undo"
|
undo_prefix: "되돌리기"
|
||||||
undo_shortcut: "(Ctrl+Z)"
|
undo_shortcut: "(Ctrl+Z)"
|
||||||
# redo_prefix: "Redo"
|
redo_prefix: "다시하기"
|
||||||
redo_shortcut: "(Ctrl+Shift+Z)"
|
redo_shortcut: "(Ctrl+Shift+Z)"
|
||||||
# play_preview: "Play preview of current level"
|
play_preview: "현재 수준의 미리보기 재생"
|
||||||
result: "결과"
|
result: "결과"
|
||||||
results: "결과들"
|
results: "결과들"
|
||||||
description: "설명"
|
description: "설명"
|
||||||
|
@ -221,8 +221,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
years: "년"
|
years: "년"
|
||||||
|
|
||||||
play_level:
|
play_level:
|
||||||
# completed_level: "Completed Level:"
|
completed_level: "완료된 레벨:"
|
||||||
# course: "Course:"
|
course: "코스:"
|
||||||
done: "완료"
|
done: "완료"
|
||||||
next_level: "다음 레벨:"
|
next_level: "다음 레벨:"
|
||||||
next_game: "다음 게임"
|
next_game: "다음 게임"
|
||||||
|
@ -256,26 +256,26 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
victory_saving_progress: "저장하기"
|
victory_saving_progress: "저장하기"
|
||||||
victory_go_home: "홈으로"
|
victory_go_home: "홈으로"
|
||||||
victory_review: "리뷰를 남겨주세요"
|
victory_review: "리뷰를 남겨주세요"
|
||||||
# victory_review_placeholder: "How was the level?"
|
victory_review_placeholder: "어떤 레벨입니까?"
|
||||||
victory_hour_of_code_done: "정말 종료합니까?"
|
victory_hour_of_code_done: "정말 종료합니까?"
|
||||||
victory_hour_of_code_done_yes: "네 내 Hour of Code™ 완료했습니다!"
|
victory_hour_of_code_done_yes: "네 내 Hour of Code™ 완료했습니다!"
|
||||||
victory_experience_gained: "획득한 경험치"
|
victory_experience_gained: "획득한 경험치"
|
||||||
victory_gems_gained: "획득한 젬"
|
victory_gems_gained: "획득한 젬"
|
||||||
victory_new_item: "새로운 아이템"
|
victory_new_item: "새로운 아이템"
|
||||||
# victory_viking_code_school: "Holy smokes, that was a hard level you just beat! If you aren't already a software developer, you should be. You just got fast-tracked for acceptance with Viking Code School, where you can take your skills to the next level and become a professional web developer in 14 weeks."
|
victory_viking_code_school: "놀랍습니다, 당신은 그냥 이길 힘든 수준이었습니다! 이미 소프트웨어 개발자가 아닌 경우, 당신은 비이킹 코드 학교에서 빠르게 이해할것입니다, 당신이 다음 레벨에서 자신의 능력을 14주 동안 전문 웹 개발자가 될 수있는 곳입니다."
|
||||||
victory_become_a_viking: "바이킹이 되세요"
|
victory_become_a_viking: "바이킹이 되세요"
|
||||||
guide_title: "가이드"
|
guide_title: "가이드"
|
||||||
tome_cast_button_run: "실행"
|
tome_cast_button_run: "실행"
|
||||||
tome_cast_button_running: "실행중"
|
tome_cast_button_running: "실행중"
|
||||||
# tome_cast_button_ran: "Ran"
|
tome_cast_button_ran: "실행됨"
|
||||||
# tome_submit_button: "Submit"
|
tome_submit_button: "적용"
|
||||||
# tome_reload_method: "Reload original code for this method" # Title text for individual method reload button.
|
tome_reload_method: "이 방법에 대한 원래의 코드를 다시불러오기" # Title text for individual method reload button.
|
||||||
# tome_select_method: "Select a Method"
|
tome_select_method: "방법 선택"
|
||||||
# tome_see_all_methods: "See all methods you can edit" # Title text for method list selector (shown when there are multiple programmable methods).
|
tome_see_all_methods: "편집 할 수있는 모든 방법을 참조하십시오" # Title text for method list selector (shown when there are multiple programmable methods).
|
||||||
tome_select_a_thang: "누군가를 선택하세요. "
|
tome_select_a_thang: "누군가를 선택하세요. "
|
||||||
tome_available_spells: "사용 가능한 마법"
|
tome_available_spells: "사용 가능한 마법"
|
||||||
tome_your_skills: "당신의 스킬"
|
tome_your_skills: "당신의 스킬"
|
||||||
# tome_current_method: "Current Method"
|
tome_current_method: "최근 방법"
|
||||||
code_saved: "코드가 저장됨"
|
code_saved: "코드가 저장됨"
|
||||||
skip_tutorial: "넘기기 (esc)"
|
skip_tutorial: "넘기기 (esc)"
|
||||||
keyboard_shortcuts: "단축키"
|
keyboard_shortcuts: "단축키"
|
||||||
|
@ -284,12 +284,12 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
problem_alert_title: "코드를 수정하세요"
|
problem_alert_title: "코드를 수정하세요"
|
||||||
time_current: "현재:"
|
time_current: "현재:"
|
||||||
time_total: "최대:"
|
time_total: "최대:"
|
||||||
# time_goto: "Go to:"
|
time_goto: "가기:"
|
||||||
# non_user_code_problem_title: "Unable to Load Level"
|
non_user_code_problem_title: "레벨을 로드 할 수 없습니다"
|
||||||
# infinite_loop_title: "Infinite Loop Detected"
|
infinite_loop_title: "무한 루프 감지"
|
||||||
# infinite_loop_description: "The initial code to build the world never finished running. It's probably either really slow or has an infinite loop. Or there might be a bug. You can either try running this code again or reset the code to the default state. If that doesn't fix it, please let us know."
|
infinite_loop_description: "세계를 구축하는 초기 코드는 결코 실행이 완료되지 않습니다. 아마도 하나의 정말 느리거나 또는 무한 루프가 있습니다. 혹은 버그일수있습니다. 당신은 다시 이 코드를 실행하려고하거나 기본 상태로 코드를 재설정 할 수 있습니다. 그게 해결되지 않으면, 저희에게 알려 주시기 바랍니다."
|
||||||
# check_dev_console: "You can also open the developer console to see what might be going wrong."
|
check_dev_console: "또한 잘못 갈 수를 알기 위해 개발자 콘솔을 열 수 있습니다."
|
||||||
# check_dev_console_link: "(instructions)"
|
check_dev_console_link: "(명령어)"
|
||||||
infinite_loop_try_again: "다시 시도해보세요."
|
infinite_loop_try_again: "다시 시도해보세요."
|
||||||
infinite_loop_reset_level: "레벨 리셋"
|
infinite_loop_reset_level: "레벨 리셋"
|
||||||
infinite_loop_comment_out: "내 코드를 일시적 주석처리하기"
|
infinite_loop_comment_out: "내 코드를 일시적 주석처리하기"
|
||||||
|
@ -297,7 +297,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
tip_scrub_shortcut: "Ctrl+[, Ctrl+] 를 이용해 실행 속도를 빠르게 할 수 있어요"
|
tip_scrub_shortcut: "Ctrl+[, Ctrl+] 를 이용해 실행 속도를 빠르게 할 수 있어요"
|
||||||
tip_guide_exists: "화면 상단의 가이드를 클릭해보세요. 유용한 정보를 얻을 수 있습니다."
|
tip_guide_exists: "화면 상단의 가이드를 클릭해보세요. 유용한 정보를 얻을 수 있습니다."
|
||||||
tip_open_source: "코드 컴뱃은 100% 오픈 소스 기반입니다!"
|
tip_open_source: "코드 컴뱃은 100% 오픈 소스 기반입니다!"
|
||||||
# tip_tell_friends: "Enjoying CodeCombat? Tell your friends about us!"
|
tip_tell_friends: "코드 컴뱃을 즐기셨나요? 친구에게 알려주십시오"
|
||||||
tip_beta_launch: "코드 컴뱃은 2013년 10월에 베타 서비스를 출시했습니다."
|
tip_beta_launch: "코드 컴뱃은 2013년 10월에 베타 서비스를 출시했습니다."
|
||||||
tip_think_solution: "해결 방법을 고민해보세요, 문제를 고민하지 말구요"
|
tip_think_solution: "해결 방법을 고민해보세요, 문제를 고민하지 말구요"
|
||||||
# tip_theory_practice: "In theory, there is no difference between theory and practice. But in practice, there is. - Yogi Berra"
|
# tip_theory_practice: "In theory, there is no difference between theory and practice. But in practice, there is. - Yogi Berra"
|
||||||
|
@ -326,7 +326,7 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
# tip_extrapolation: "There are only two kinds of people: those that can extrapolate from incomplete data..."
|
# tip_extrapolation: "There are only two kinds of people: those that can extrapolate from incomplete data..."
|
||||||
# tip_superpower: "Coding is the closest thing we have to a superpower."
|
# 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_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: "코드가 없는것보다 빠른것은 없습니다."
|
||||||
tip_code_never_lies: "코드는 절대로 거짓말을 하지 않는다. 주석은 가끔 하지만. — Ron Jeffries"
|
tip_code_never_lies: "코드는 절대로 거짓말을 하지 않는다. 주석은 가끔 하지만. — Ron Jeffries"
|
||||||
# tip_reusable_software: "Before software can be reusable it first has to be usable."
|
# tip_reusable_software: "Before software can be reusable it first has to be usable."
|
||||||
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is ‘//’"
|
# tip_optimization_operator: "Every language has an optimization operator. In most languages that operator is ‘//’"
|
||||||
|
@ -341,8 +341,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
# tip_recurse: "To iterate is human, to recurse divine. - L. Peter Deutsch"
|
# tip_recurse: "To iterate is human, to recurse divine. - L. Peter Deutsch"
|
||||||
# tip_free_your_mind: "You have to let it all go, Neo. Fear, doubt, and disbelief. Free your mind. - Morpheus"
|
# tip_free_your_mind: "You have to let it all go, Neo. Fear, doubt, and disbelief. Free your mind. - Morpheus"
|
||||||
# tip_strong_opponents: "Even the strongest of opponents always has a weakness. - Itachi Uchiha"
|
# tip_strong_opponents: "Even the strongest of opponents always has a weakness. - Itachi Uchiha"
|
||||||
# tip_paper_and_pen: "Before you start coding, you can always plan with a sheet of paper and a pen."
|
tip_paper_and_pen: "코딩을 하기전에, 당신은 항상 종이와 펜으로 계획을 지니고 있어야합니다."
|
||||||
# tip_solve_then_write: "First, solve the problem. Then, write the code. - John Johnson"
|
tip_solve_then_write: "먼저, 문제를 해결하세요. 그러고, 코드를 쓰는겁니다. - John Johnson"
|
||||||
|
|
||||||
game_menu:
|
game_menu:
|
||||||
inventory_tab: "인벤토리"
|
inventory_tab: "인벤토리"
|
||||||
|
@ -355,22 +355,22 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
auth_tab: "가입하기"
|
auth_tab: "가입하기"
|
||||||
inventory_caption: "장비 장착"
|
inventory_caption: "장비 장착"
|
||||||
choose_hero_caption: "영웅 및 언어 선택 "
|
choose_hero_caption: "영웅 및 언어 선택 "
|
||||||
# save_load_caption: "... and view history"
|
save_load_caption: "... 그리고 기록보기"
|
||||||
options_caption: "설정들을 바꾸기"
|
options_caption: "설정들을 바꾸기"
|
||||||
guide_caption: "문서들과 팁들"
|
guide_caption: "문서들과 팁들"
|
||||||
multiplayer_caption: "친구들과 플레이 하세요!"
|
multiplayer_caption: "친구들과 플레이 하세요!"
|
||||||
auth_caption: "진행사항을 저장하세요"
|
auth_caption: "진행사항을 저장하세요"
|
||||||
|
|
||||||
leaderboard:
|
leaderboard:
|
||||||
# view_other_solutions: "View Leaderboards"
|
view_other_solutions: "리더보드 보기"
|
||||||
scores: "점수"
|
scores: "점수"
|
||||||
top_players: "상위 플레이어"
|
top_players: "상위 플레이어"
|
||||||
day: "오늘"
|
day: "오늘"
|
||||||
week: "이번 주"
|
week: "이번 주"
|
||||||
# all: "All-Time"
|
all: "모든-시간"
|
||||||
time: "시간"
|
time: "시간"
|
||||||
# damage_taken: "Damage Taken"
|
damage_taken: "데미지 정도"
|
||||||
# damage_dealt: "Damage Dealt"
|
damage_dealt: "죽음을 맞은 데미지"
|
||||||
difficulty: "난이도"
|
difficulty: "난이도"
|
||||||
gold_collected: "수집된 골드"
|
gold_collected: "수집된 골드"
|
||||||
|
|
||||||
|
@ -391,11 +391,11 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
pile_gems: "gem 묶음"
|
pile_gems: "gem 묶음"
|
||||||
chest_gems: "gem 상자"
|
chest_gems: "gem 상자"
|
||||||
purchasing: "구매중..."
|
purchasing: "구매중..."
|
||||||
declined: "Your card was declined"
|
declined: "귀하의 카드가 거부되었습니다"
|
||||||
retrying: "서버에러, 다시 시도하세요."
|
retrying: "서버에러, 다시 시도하세요."
|
||||||
prompt_title: "gem 부족"
|
prompt_title: "gem 부족"
|
||||||
prompt_body: "gem이 더 필요하신가요?"
|
prompt_body: "gem이 더 필요하신가요?"
|
||||||
prompt_button: "Enter Shop"
|
prompt_button: "샵 앤터"
|
||||||
recovered: "gem 구매후 브라우져를 새로고침 하세요."
|
recovered: "gem 구매후 브라우져를 새로고침 하세요."
|
||||||
price: "x{{gems}} / 한달"
|
price: "x{{gems}} / 한달"
|
||||||
|
|
||||||
|
@ -403,10 +403,10 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
||||||
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
# comparison_blurb: "Sharpen your skills with a CodeCombat subscription!"
|
||||||
# feature1: "110+ basic levels across 4 worlds"
|
# feature1: "110+ basic levels across 4 worlds"
|
||||||
# feature2: "10 powerful <strong>new heroes</strong> with unique skills!"
|
# feature2: "10 powerful <strong>new heroes</strong> with unique skills!"
|
||||||
# feature3: "80+ bonus levels"
|
feature3: "80+ 보너스 레벨들"
|
||||||
# feature4: "<strong>{{gems}} bonus gems</strong> every month!"
|
# feature4: "<strong>{{gems}} bonus gems</strong> every month!"
|
||||||
# feature5: "Video tutorials"
|
feature5: "영상 튜토리얼"
|
||||||
# feature6: "Premium email support"
|
feature6: "프리미엄 이메일 지원"
|
||||||
# feature7: "Private <strong>Clans</strong>"
|
# feature7: "Private <strong>Clans</strong>"
|
||||||
free: "프리"
|
free: "프리"
|
||||||
month: "달"
|
month: "달"
|
||||||
|
|
|
@ -98,7 +98,7 @@
|
||||||
"css-brunch": "^1.7.0",
|
"css-brunch": "^1.7.0",
|
||||||
"fs-extra": "^0.26.2",
|
"fs-extra": "^0.26.2",
|
||||||
"jade-brunch": "1.7.5",
|
"jade-brunch": "1.7.5",
|
||||||
"jasmine": "^2.3.2",
|
"jasmine": "^2.4.1",
|
||||||
"javascript-brunch": "> 1.0 < 1.8",
|
"javascript-brunch": "> 1.0 < 1.8",
|
||||||
"karma": "~0.13",
|
"karma": "~0.13",
|
||||||
"karma-chrome-launcher": "~0.1.2",
|
"karma-chrome-launcher": "~0.1.2",
|
||||||
|
|
|
@ -38,43 +38,58 @@ if (database.generateMongoConnectionString() !== dbString) {
|
||||||
|
|
||||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = 1000 * 120; // for long Stripe tests
|
jasmine.DEFAULT_TIMEOUT_INTERVAL = 1000 * 120; // for long Stripe tests
|
||||||
|
|
||||||
describe('Server Test Helper', function() {
|
var initialized = false;
|
||||||
it('starts the test server', function(done) {
|
beforeEach(function(done) {
|
||||||
var server = require('../../server');
|
if (initialized) {
|
||||||
server.startServer(done);
|
return done();
|
||||||
|
}
|
||||||
|
|
||||||
|
var async = require('async');
|
||||||
|
async.series([
|
||||||
|
function(cb) {
|
||||||
|
// Start the server
|
||||||
|
var server = require('../../server');
|
||||||
|
server.startServer(cb);
|
||||||
|
},
|
||||||
|
function(cb) {
|
||||||
|
// 5. Check actual database
|
||||||
|
var User = require('../../server/users/User');
|
||||||
|
User.find({}).count(function(err, count) {
|
||||||
|
// For this to serve as a line of defense against testing with the
|
||||||
|
// production DB, tests must be run with
|
||||||
|
expect(err).toBeNull();
|
||||||
|
expect(count).toBeLessThan(100);
|
||||||
|
if(err || count >= 100) {
|
||||||
|
// the only way to be sure we don't keep going with the tests
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
GLOBAL.mc.lists.subscribe = _.noop;
|
||||||
|
cb()
|
||||||
|
});
|
||||||
|
},
|
||||||
|
function(cb) {
|
||||||
|
// Clear db
|
||||||
|
var mongoose = require('mongoose');
|
||||||
|
mongoose.connection.db.command({dropDatabase:1}, function(err, result) {
|
||||||
|
if (err) { console.log(err); }
|
||||||
|
cb(err);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
function(cb) {
|
||||||
|
// Initialize products
|
||||||
|
var request = require('request');
|
||||||
|
request.get(getURL('/db/products'), function(err, res, body) {
|
||||||
|
expect(err).toBe(null);
|
||||||
|
expect(res.statusCode).toBe(200);
|
||||||
|
cb(err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
],
|
||||||
|
function(err) {
|
||||||
|
if (err) {
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
initialized = true;
|
||||||
|
done();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('checks the db is fairly empty', function(done) {
|
|
||||||
// 5. Check actual database.
|
|
||||||
var User = require('../../server/users/User');
|
|
||||||
User.find({}).count(function(err, count) {
|
|
||||||
// For this to serve as a line of defense against testing with the
|
|
||||||
// production DB, tests must be run with
|
|
||||||
expect(err).toBeNull();
|
|
||||||
expect(count).toBeLessThan(100);
|
|
||||||
if(err || count >= 100) {
|
|
||||||
// the only way to be sure we don't keep going with the tests
|
|
||||||
process.exit(1);
|
|
||||||
}
|
|
||||||
GLOBAL.mc.lists.subscribe = _.noop;
|
|
||||||
done()
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
it('clears the db', function(done) {
|
|
||||||
var mongoose = require('mongoose');
|
|
||||||
mongoose.connection.db.command({dropDatabase:1}, function(err, result) {
|
|
||||||
if (err) { console.log(err); }
|
|
||||||
done();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
it('initializes products', function(done) {
|
|
||||||
var request = require('request');
|
|
||||||
request.get(getURL('/db/products'), function(err, res, body) {
|
|
||||||
expect(err).toBe(null);
|
|
||||||
expect(res.statusCode).toBe(200);
|
|
||||||
done();
|
|
||||||
});
|
|
||||||
})
|
|
||||||
});
|
});
|
Loading…
Reference in a new issue