mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-04-13 21:44:40 -04:00
Merge branch 'master' into feature/loading-views
This commit is contained in:
commit
fed5d681f2
79 changed files with 622 additions and 126 deletions
app
application.coffee
assets
lib
locale
ar.coffeebg.coffeeca.coffeecs.coffeeda.coffeede-AT.coffeede-CH.coffeede-DE.coffeede.coffeeel.coffeeen-AU.coffeeen-GB.coffeeen-US.coffeees-419.coffeees-ES.coffeees.coffeefa.coffeefi.coffeefr.coffeehe.coffeehi.coffeehu.coffeeid.coffeeit.coffeeja.coffeeko.coffeelt.coffeems.coffeenb.coffeenl-BE.coffeenl-NL.coffeenl.coffeenn.coffeeno.coffeepl.coffeept-BR.coffeept-PT.coffeept.coffeero.coffeeru.coffeesk.coffeesl.coffeesr.coffeesv.coffeeth.coffeetr.coffeeuk.coffeeur.coffeevi.coffeezh-HANS.coffeezh-HANT.coffeezh.coffee
schemas/models
styles
templates
views
server/users
|
@ -1,5 +1,6 @@
|
|||
FacebookHandler = require 'lib/FacebookHandler'
|
||||
GPlusHandler = require 'lib/GPlusHandler'
|
||||
LinkedInHandler = require 'lib/LinkedInHandler'
|
||||
locale = require 'locale/locale'
|
||||
{me} = require 'lib/auth'
|
||||
Tracker = require 'lib/Tracker'
|
||||
|
@ -35,7 +36,7 @@ Application = initialize: ->
|
|||
@facebookHandler = new FacebookHandler()
|
||||
@gplusHandler = new GPlusHandler()
|
||||
$(document).bind 'keydown', preventBackspace
|
||||
|
||||
@linkedinHandler = new LinkedInHandler()
|
||||
preload(COMMON_FILES)
|
||||
$.i18n.init {
|
||||
lng: me?.lang() ? 'en'
|
||||
|
|
|
@ -42,7 +42,18 @@
|
|||
|
||||
<script>require('initialize');</script>
|
||||
|
||||
|
||||
<!-- begin LinkedIn code -->
|
||||
<script>
|
||||
window.linkedInAsyncInit = function() {
|
||||
Backbone.Mediator.publish('linkedin-loaded');
|
||||
};
|
||||
</script>
|
||||
<script type="text/javascript" src="http://platform.linkedin.com/in.js">
|
||||
api_key: 75v8mv4ictvmx6
|
||||
onLoad: linkedInAsyncInit
|
||||
authorize: true
|
||||
</script>
|
||||
<!-- end LinkedIn code -->
|
||||
<!-- begin segment.io code -->
|
||||
<script type="text/javascript">
|
||||
var analytics=analytics||[];(function(){var e=["identify","track","trackLink","trackForm","trackClick","trackSubmit","page","pageview","ab","alias","ready","group"],t=function(e){return function(){analytics.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var n=0;n<e.length;n++)analytics[e[n]]=t(e[n])})(),analytics.load=function(e){var t=document.createElement("script");t.type="text/javascript",t.async=!0,t.src=("https:"===document.location.protocol?"https://":"http://")+"d2dq2ahtl5zl1z.cloudfront.net/analytics.js/v1/"+e+"/analytics.min.js";var n=document.getElementsByTagName("script")[0];n.parentNode.insertBefore(t,n)};
|
||||
|
@ -70,6 +81,7 @@
|
|||
/* custom configuration goes here (www.olark.com/documentation) */
|
||||
olark.identify('1451-787-10-5544');/*]]>*/</script>
|
||||
<!-- end olark code -->
|
||||
|
||||
|
||||
</head>
|
||||
<body class="nano clearfix">
|
||||
|
|
27
app/lib/LinkedInHandler.coffee
Normal file
27
app/lib/LinkedInHandler.coffee
Normal file
|
@ -0,0 +1,27 @@
|
|||
CocoClass = require 'lib/CocoClass'
|
||||
{me} = require 'lib/auth'
|
||||
{backboneFailure} = require 'lib/errors'
|
||||
storage = require 'lib/storage'
|
||||
|
||||
|
||||
module.exports = LinkedInHandler = class LinkedInHandler extends CocoClass
|
||||
constructor: ->
|
||||
super()
|
||||
|
||||
subscriptions:
|
||||
'linkedin-loaded': 'onLinkedInLoaded'
|
||||
|
||||
onLinkedInLoaded: (e) ->
|
||||
IN.Event.on IN, "auth", @onLinkedInAuth
|
||||
|
||||
onLinkedInAuth: (e) => console.log "Authorized with LinkedIn"
|
||||
|
||||
constructEmployerAgreementObject: (cb) =>
|
||||
IN.API.Profile("me")
|
||||
.fields(["positions","public-profile-url","id","first-name","last-name","email-address"])
|
||||
.error(cb)
|
||||
.result (profiles) =>
|
||||
cb null, profiles.values[0]
|
||||
|
||||
destroy: ->
|
||||
super()
|
|
@ -19,6 +19,14 @@ module.exports.createUser = (userObject, failure=backboneFailure, nextURL=null)
|
|||
error: failure,
|
||||
success: -> if nextURL then window.location.href = nextURL else window.location.reload()
|
||||
})
|
||||
|
||||
module.exports.createUserWithoutReload = (userObject, failure=backboneFailure) ->
|
||||
user = new User(userObject)
|
||||
user.save({}, {
|
||||
error: failure
|
||||
success: ->
|
||||
Backbone.Mediator.publish("created-user-without-reload")
|
||||
})
|
||||
|
||||
module.exports.loginUser = (userObject, failure=genericFailure) ->
|
||||
jqxhr = $.post('/auth/login',
|
||||
|
|
|
@ -211,7 +211,7 @@ module.exports = ScriptManager = class ScriptManager extends CocoClass
|
|||
for module in nextNoteGroup.modules
|
||||
@processNote(note, nextNoteGroup) for note in module.startNotes()
|
||||
if nextNoteGroup.script.duration
|
||||
f = => @onNoteGroupTimeout nextNoteGroup
|
||||
f = => @onNoteGroupTimeout? nextNoteGroup
|
||||
setTimeout(f, nextNoteGroup.script.duration)
|
||||
Backbone.Mediator.publish('note-group-started')
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ module.exports = class Simulator extends CocoClass
|
|||
@simulateAnotherTaskAfterDelay()
|
||||
|
||||
handleNoGamesResponse: ->
|
||||
@trigger 'statusUpdate', 'There were no games to simulate--nice. Retrying in 10 seconds.'
|
||||
@trigger 'statusUpdate', 'There were no games to simulate--all simulations are done or in process. Retrying in 10 seconds.'
|
||||
@simulateAnotherTaskAfterDelay()
|
||||
|
||||
simulateAnotherTaskAfterDelay: =>
|
||||
|
@ -102,7 +102,7 @@ module.exports = class Simulator extends CocoClass
|
|||
sendResultsBackToServer: (results) =>
|
||||
@trigger 'statusUpdate', 'Simulation completed, sending results back to server!'
|
||||
console.log "Sending result back to server!"
|
||||
|
||||
|
||||
$.ajax
|
||||
url: "/queue/scoring"
|
||||
data: results
|
||||
|
@ -279,9 +279,9 @@ class SimulationTask
|
|||
getReceiptHandle: -> @rawData.receiptHandle
|
||||
|
||||
getSessions: -> @rawData.sessions
|
||||
|
||||
|
||||
getSpellKeyToTeamMap: -> @spellKeyToTeamMap
|
||||
|
||||
|
||||
getPlayerTeams: -> _.pluck @rawData.sessions, 'team'
|
||||
|
||||
generateSpellKeyToSourceMap: ->
|
||||
|
@ -303,7 +303,7 @@ class SimulationTask
|
|||
fullSpellName = [thangName,spellName].join '/'
|
||||
if _.contains(teamSpells, fullSpellName)
|
||||
teamCode[fullSpellName]=spell
|
||||
|
||||
|
||||
_.merge spellKeyToSourceMap, teamCode
|
||||
|
||||
spellKeyToSourceMap
|
||||
|
|
|
@ -164,8 +164,9 @@ module.exports = class Camera extends CocoClass
|
|||
target = {x: newTargetX, y:newTargetY}
|
||||
else
|
||||
target = @target
|
||||
if not(newZoom >= MAX_ZOOM or newZoom <= Math.max(@minZoom, MIN_ZOOM))
|
||||
@zoomTo target, newZoom, 0
|
||||
newZoom = Math.min newZoom, MAX_ZOOM
|
||||
newZoom = Math.max newZoom, MIN_ZOOM, @minZoom
|
||||
@zoomTo target, newZoom, 0
|
||||
|
||||
onMouseDown: (e) ->
|
||||
return if @dragDisabled
|
||||
|
|
|
@ -447,6 +447,10 @@ module.exports = CocoSprite = class CocoSprite extends CocoClass
|
|||
scaleFactor = @thang.scaleFactor ? 1
|
||||
pos.x *= @thang.scaleFactorX ? scaleFactor
|
||||
pos.y *= @thang.scaleFactorY ? scaleFactor
|
||||
# We might need to do this, but I don't have a good test case yet. TODO: figure out.
|
||||
#if prop isnt @registration
|
||||
# pos.x *= if @getActionProp 'flipX' then -1 else 1
|
||||
# pos.y *= if @getActionProp 'flipY' then -1 else 1
|
||||
pos
|
||||
|
||||
createMarks: ->
|
||||
|
|
|
@ -45,8 +45,10 @@ module.exports = class Label extends CocoClass
|
|||
|
||||
update: ->
|
||||
return unless @text
|
||||
offset = @sprite.getOffset? (if @style is 'dialogue' then 'mouth' else 'aboveHead')
|
||||
offset = @sprite.getOffset? (if @style in ['dialogue', 'say'] then 'mouth' else 'aboveHead')
|
||||
offset ?= x: 0, y: 0 # temp (if not CocoSprite)
|
||||
rotation = @sprite.getRotation()
|
||||
offset.x *= -1 if rotation >= 135 or rotation <= -135
|
||||
@label.x = @background.x = @sprite.displayObject.x + offset.x
|
||||
@label.y = @background.y = @sprite.displayObject.y + offset.y
|
||||
null
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "العربية", englishDescription: "Arabi
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "български език", englishDescri
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Нивото не може да бъде заредено: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "български език", englishDescri
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Català", englishDescription: "Catalan", tr
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Úroveň se nepodařilo otevřít: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "čeština", englishDescription: "Czech", tr
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Banen kunne ikke indlæses: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "dansk", englishDescription: "Danish", trans
|
|||
new_article_title: "Opret en Ny Artikel"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
new_level_title: "Opret en Ny Bane"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Søg Artikler Her"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
level_search_title: "Søg Baner Her"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch (Österreich)", englishDescription:
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch (Schweiz)", englishDescription: "Ge
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Level konnte nicht geladen werden: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch (Deutschland)", englishDescription:
|
|||
new_article_title: "Erstelle einen neuen Artikel"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
new_level_title: "Erstelle ein neues Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Level konnte nicht geladen werden: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Deutsch", englishDescription: "German", tra
|
|||
new_article_title: "Erstelle einen neuen Artikel"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
new_level_title: "Erstelle ein neues Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "ελληνικά", englishDescription: "Gre
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Το επίπεδο δεν μπόρεσε να φορτωθεί: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "ελληνικά", englishDescription: "Gre
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "English (AU)", englishDescription: "English
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "English (UK)", englishDescription: "English
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "English (US)", englishDescription: "English
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "español (América Latina)", englishDescrip
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "El nivel no puede ser cargado: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "español (América Latina)", englishDescrip
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
|
|||
candidate_top_skills: "Mejores Habilidades"
|
||||
candidate_years_experience: "Años Exp"
|
||||
candidate_last_updated: "Última actualización"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "No se pudo cargar el nivel: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "español (ES)", englishDescription: "Spanis
|
|||
new_article_title: "Crear un nuevo artículo"
|
||||
new_thang_title: "Crea un nuevo tipo de objeto"
|
||||
new_level_title: "Crear un nuevo nivel"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Buscar artículos aquí"
|
||||
thang_search_title: "Busca tipos de objetos aquí"
|
||||
level_search_title: "Buscar niveles aquí"
|
||||
signup_to_create: "Regístrate para crear nuevo contenido"
|
||||
read_only_warning2: "Nota: no puedes guardar nada de lo que edites aqui porque no has iniciado sesión."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "No se pudo cargar el nivel: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "español", englishDescription: "Spanish", t
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "فارسی", englishDescription: "Persian",
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "suomi", englishDescription: "Finnish", tran
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Le niveau ne peut pas être chargé: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "français", englishDescription: "French", t
|
|||
new_article_title: "Créer un nouvel article"
|
||||
new_thang_title: "Créer un nouveau Type Thang"
|
||||
new_level_title: "Créer un nouveau niveau"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Rechercher dans les articles"
|
||||
thang_search_title: "Rechercher dans les types Thang"
|
||||
level_search_title: "Rechercher dans les niveaux"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "עברית", englishDescription: "Hebrew",
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "मानक हिन्दी", englishDe
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
candidate_last_updated: "Legutóbb napra-készre hozva"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "A pályát nem sikerült betölteni: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "magyar", englishDescription: "Hungarian", t
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Bahasa Indonesia", englishDescription: "Ind
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Il livello non può essere caricato: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Italiano", englishDescription: "Italian", t
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
|
|||
candidate_top_skills: "得意分野"
|
||||
candidate_years_experience: "経験年数"
|
||||
candidate_last_updated: "最終更新日時"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "レベルがロード出来ませんでした: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "日本語", englishDescription: "Japanese",
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "레벨 로딩 실패 : "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "한국어", englishDescription: "Korean", t
|
|||
new_article_title: "새로운 기사 작성"
|
||||
new_thang_title: "새로운 Thang type 시작"
|
||||
new_level_title: "새로운 레벨 시작"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "기사들은 여기에서 찾으세요"
|
||||
thang_search_title: "Thang 타입들은 여기에서 찾으세요"
|
||||
level_search_title: "레벨들은 여기에서 찾으세요"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "lietuvių kalba", englishDescription: "Lith
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Bahasa Melayu", englishDescription: "Bahasa
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Nivået kunne ikke bli lastet: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Norsk Bokmål", englishDescription: "Norweg
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
|
|||
candidate_top_skills: "Beste vaardigheden"
|
||||
candidate_years_experience: "Jaren ervaring"
|
||||
candidate_last_updated: "Laatst aangepast"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Level kon niet geladen worden: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Nederlands (België)", englishDescription:
|
|||
new_article_title: "Maak een Nieuw Artikel"
|
||||
new_thang_title: "Maak een Nieuw Thang Type"
|
||||
new_level_title: "Maak een Nieuw Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Zoek Artikels Hier"
|
||||
thang_search_title: "Zoek Thang Types Hier"
|
||||
level_search_title: "Zoek Levels Hier"
|
||||
signup_to_create: "Registreer je om nieuwe content te maken"
|
||||
read_only_warning2: "Pas op, je kunt geen aanpassingen opslaan hier, want je bent niet ingelogd."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
|
|||
candidate_top_skills: "Beste vaardigheden"
|
||||
candidate_years_experience: "Jaren ervaring"
|
||||
candidate_last_updated: "Laatst aangepast"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Level kon niet geladen worden: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Nederlands (Nederland)", englishDescription
|
|||
new_article_title: "Maak een Nieuw Artikel"
|
||||
new_thang_title: "Maak een Nieuw Thang Type"
|
||||
new_level_title: "Maak een Nieuw Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Zoek Artikels Hier"
|
||||
thang_search_title: "Zoek Thang Types Hier"
|
||||
level_search_title: "Zoek Levels Hier"
|
||||
signup_to_create: "Registreer je om nieuwe content te maken"
|
||||
read_only_warning2: "Pas op, je kunt geen aanpassingen opslaan hier, want je bent niet ingelogd."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Nederlands", englishDescription: "Dutch", t
|
|||
candidate_top_skills: "Beste vaardigheden"
|
||||
candidate_years_experience: "Jaren ervaring"
|
||||
candidate_last_updated: "Laatst aangepast"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Level kon niet geladen worden: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Nederlands", englishDescription: "Dutch", t
|
|||
new_article_title: "Maak een Nieuw Artikel"
|
||||
new_thang_title: "Maak een Nieuw Thang Type"
|
||||
new_level_title: "Maak een Nieuw Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Zoek Artikels Hier"
|
||||
thang_search_title: "Zoek Thang Types Hier"
|
||||
level_search_title: "Zoek Levels Hier"
|
||||
signup_to_create: "Registreer je om nieuwe content te maken"
|
||||
read_only_warning2: "Pas op, je kunt geen aanpassingen opslaan hier, want je bent niet ingelogd."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Norwegian Nynorsk", englishDescription: "No
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Nivået kunne ikke bli lastet: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Norsk", englishDescription: "Norwegian", tr
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Nie udało się wczytać poziomu: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "język polski", englishDescription: "Polish
|
|||
new_article_title: "Stwórz nowy artykuł"
|
||||
new_thang_title: "Stwórz nowy typ obiektu"
|
||||
new_level_title: "Stwórz nowy poziom"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Przeszukaj artykuły"
|
||||
thang_search_title: "Przeszukaj typy obiektów"
|
||||
level_search_title: "Przeszukaj poziomy"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "português do Brasil", englishDescription:
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "O estágio não pôde ser carregado: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "português do Brasil", englishDescription:
|
|||
new_article_title: "Criar um Novo Artigo"
|
||||
new_thang_title: "Criar um Novo Tipo de Thang"
|
||||
new_level_title: "Criar um Novo Nível"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Procurar Artigos Aqui"
|
||||
thang_search_title: "Procurar Tipos de Thang Aqui"
|
||||
level_search_title: "Procurar Níveis Aqui"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "O nível não pôde ser carregado: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Português europeu", englishDescription: "P
|
|||
new_article_title: "Criar um Novo Artigo"
|
||||
new_thang_title: "Criar um Novo Tipo de Thang"
|
||||
new_level_title: "Criar um Novo Nível"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Procurar Artigos Aqui"
|
||||
thang_search_title: "Procurar Tipos de Thang Aqui"
|
||||
level_search_title: "Procurar Níveis Aqui"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "português", englishDescription: "Portugues
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "O estágio não pôde ser carregado: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "português", englishDescription: "Portugues
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Nivelul nu a putut fi încărcat: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "limba română", englishDescription: "Roman
|
|||
new_article_title: "Crează un articol nou"
|
||||
new_thang_title: "Crează un nou tip de Thang"
|
||||
new_level_title: "Crează un nivel nou"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Caută articole aici"
|
||||
thang_search_title: "Caută tipuri de Thang aici"
|
||||
level_search_title: "Caută nivele aici"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
|
|||
candidate_top_skills: "Лучшие навыки"
|
||||
candidate_years_experience: "Лет опыта"
|
||||
candidate_last_updated: "Последнее обновление"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Уровень не может быть загружен: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "русский", englishDescription: "Russi
|
|||
new_article_title: "Создать новую статью"
|
||||
new_thang_title: "Создать новый тип объектов"
|
||||
new_level_title: "Создать новый уровень"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Искать статьи"
|
||||
thang_search_title: "Искать типы объектов"
|
||||
level_search_title: "Искать уровни"
|
||||
signup_to_create: "Авторизуйтесь для создания нового контента"
|
||||
read_only_warning2: "Примечание: вы не можете сохранять любые правки здесь, потому что вы не авторизованы."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "slovenčina", englishDescription: "Slovak",
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "slovenščina", englishDescription: "Sloven
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Ниво није могао бити учитан: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "српски", englishDescription: "Serbian
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Nivån kunde inte laddas: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Svenska", englishDescription: "Swedish", tr
|
|||
new_article_title: "Skapa ny artikel"
|
||||
new_thang_title: "Skapa ny enhetstyp"
|
||||
new_level_title: "Skapa ny nivå"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "Sök artiklar här"
|
||||
thang_search_title: "Sök enhetstyper här"
|
||||
level_search_title: "Sök nivåer här"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "ไทย", englishDescription: "Thai", tra
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Seviye yüklenemedi: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Türkçe", englishDescription: "Turkish", t
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
new_level_title: "Yeni Bir Seviye Oluştur"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
level_search_title: "Seviye ara"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "українська мова", englishDesc
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "Неможливо завантажити рівень: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "українська мова", englishDesc
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "اُردُو", englishDescription: "Urdu",
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "Tiếng Việt", englishDescription: "Vietn
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
candidate_top_skills: "高级技能"
|
||||
candidate_years_experience: "多年工作经验"
|
||||
candidate_last_updated: "最后一次更新"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "关卡不能载入: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "简体中文", englishDescription: "Chinese
|
|||
new_article_title: "创建一个新物品"
|
||||
new_thang_title: "创建一个新物品类型"
|
||||
new_level_title: "创建一个新关卡"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
article_search_title: "在这里搜索物品"
|
||||
thang_search_title: "在这里搜索物品类型"
|
||||
level_search_title: "在这里搜索关卡"
|
||||
signup_to_create: "注册之后就可以创建一个新的关卡"
|
||||
read_only_warning2: "提示:你不能保存任何编辑,因为你没有登陆"
|
||||
|
||||
article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
play_level:
|
||||
level_load_error: "載入關卡時發生錯誤: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "繁体中文", englishDescription: "Chinese
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -204,6 +204,8 @@ module.exports = nativeDescription: "中文", englishDescription: "Chinese", tra
|
|||
# candidate_top_skills: "Top Skills"
|
||||
# candidate_years_experience: "Yrs Exp"
|
||||
# candidate_last_updated: "Last Updated"
|
||||
# candidate_approved: "Us?"
|
||||
# candidate_active: "Them?"
|
||||
|
||||
# play_level:
|
||||
# level_load_error: "Level could not be loaded: "
|
||||
|
@ -370,10 +372,12 @@ module.exports = nativeDescription: "中文", englishDescription: "Chinese", tra
|
|||
# new_article_title: "Create a New Article"
|
||||
# new_thang_title: "Create a New Thang Type"
|
||||
# new_level_title: "Create a New Level"
|
||||
# new_article_title_signup: "Sign Up to Create a New Article"
|
||||
# new_thang_title_signup: "Sign Up to Create a New Thang Type"
|
||||
# new_level_title_signup: "Sign Up to Create a New Level"
|
||||
# article_search_title: "Search Articles Here"
|
||||
# thang_search_title: "Search Thang Types Here"
|
||||
# level_search_title: "Search Levels Here"
|
||||
# signup_to_create: "Sign Up to Create a New Content"
|
||||
# read_only_warning2: "Note: you can't save any edits here, because you're not logged in."
|
||||
|
||||
# article:
|
||||
|
|
|
@ -30,10 +30,11 @@ UserSchema = c.object {},
|
|||
artisanNews: { $ref: '#/definitions/emailSubscription' }
|
||||
diplomatNews: { $ref: '#/definitions/emailSubscription' }
|
||||
scribeNews: { $ref: '#/definitions/emailSubscription' }
|
||||
|
||||
|
||||
# notifications
|
||||
anyNotes: { $ref: '#/definitions/emailSubscription' } # overrides any other notifications settings
|
||||
recruitNotes: { $ref: '#/definitions/emailSubscription' }
|
||||
employerNotes: { $ref: '#/definitions/emailSubscription' }
|
||||
|
||||
# server controlled
|
||||
permissions: c.array {'default': []}, c.shortString()
|
||||
|
@ -109,6 +110,11 @@ UserSchema = c.object {},
|
|||
jobProfileApproved: {title: 'Job Profile Approved', type: 'boolean', description: 'Whether your profile has been approved by CodeCombat.'}
|
||||
jobProfileNotes: {type: 'string', maxLength: 1000, title: 'Our Notes', description: "CodeCombat's notes on the candidate.", format: 'markdown', default: ''}
|
||||
employerAt: c.shortString {description: "If given employer permissions to view job candidates, for which employer?"}
|
||||
signedEmployerAgreement: c.object {},
|
||||
linkedinID: c.shortString {title:"LinkedInID", description: "The user's LinkedIn ID when they signed the contract."}
|
||||
date: c.date {title: "Date signed employer agreement"}
|
||||
data: c.object {description: "Cached LinkedIn data slurped from profile."}
|
||||
|
||||
|
||||
c.extendBasicProperties UserSchema, 'user'
|
||||
|
||||
|
|
|
@ -133,6 +133,14 @@ a[data-toggle="modal"]
|
|||
background-color: transparent
|
||||
margin: 0 14px
|
||||
border-bottom-color: #ccc
|
||||
.modal-footer.linkedin
|
||||
text-align: center
|
||||
.signin-text
|
||||
font-size: 15px
|
||||
padding-bottom: 10px
|
||||
.login-link
|
||||
cursor: pointer
|
||||
|
||||
|
||||
// Bigger versions of some Bootstrap icons
|
||||
// TODO: make the non-white versions of these if we ever need them
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
#employers-view
|
||||
#see-candidates
|
||||
cursor: pointer
|
||||
.tablesorter
|
||||
//img
|
||||
// display: none
|
||||
|
|
|
@ -125,7 +125,7 @@
|
|||
background-position-x: -6 * $iconSize
|
||||
&.prop-label-icon-maxSpeed
|
||||
background-position-x: -7 * $iconSize
|
||||
&.prop-label-icon-gold
|
||||
&.prop-label-icon-gold, &.prop-label-icon-bountyGold
|
||||
background-position-x: -8 * $iconSize
|
||||
|
||||
.prop-value.bar-prop
|
||||
|
|
|
@ -14,6 +14,8 @@ block content
|
|||
i.icon-cog
|
||||
span(data-i18n='account_profile.approved').approved Approved
|
||||
span(data-i18n='account_profile.not_approved').not-approved Not Approved
|
||||
if user.id != me.id
|
||||
button.btn.edit-settings-button#enter-espionage-mode 007
|
||||
|
||||
if user.get('jobProfile')
|
||||
- var profile = user.get('jobProfile');
|
||||
|
@ -62,7 +64,7 @@ block content
|
|||
div.long-description!= marked(profile.longDescription)
|
||||
|
||||
if profile.work.length
|
||||
h3.experience-header
|
||||
h3.experience-header
|
||||
img.header-icon(src="/images/pages/account/profile/work.png", alt="")
|
||||
span(data-i18n="account_profile.work_experience") Work Experience
|
||||
each job in profile.work
|
||||
|
@ -103,7 +105,8 @@ block content
|
|||
each project in profile.projects
|
||||
if project.name
|
||||
li
|
||||
a(href=project.link)
|
||||
if project.link && project.link.length && project.link != 'http://example.com'
|
||||
a(href=project.link)
|
||||
if project.picture
|
||||
.project-image(style="background-image: url('/file/" + project.picture + "')")
|
||||
p= project.name
|
||||
|
|
|
@ -12,9 +12,11 @@ block content
|
|||
span(data-i18n="employers.candidates_count_many") many
|
||||
|
|
||||
span(data-i18n="employers.candidates_count_suffix") highly skilled and vetted developers looking for work.
|
||||
h3
|
||||
a(title='Contact', tabindex=-1, data-toggle="coco-modal", data-target="modal/employer_signup", data-i18n="employers.contact_george") Contact George to see our candidates
|
||||
if !isEmployer
|
||||
|
||||
h3
|
||||
a#see-candidates(title='Contact', tabindex=-1, data-toggle="coco-modal", data-target="modal/employer_signup") Click here to see candidates
|
||||
|
||||
if candidates.length
|
||||
table.table.table-condensed.table-hover.table-responsive.tablesorter
|
||||
thead
|
||||
|
|
|
@ -1,9 +1,68 @@
|
|||
extends /templates/modal/modal_base
|
||||
|
||||
block modal-header-content
|
||||
h3(data-i18n="employer_signup.title") Hire CodeCombat Players
|
||||
if userIsAnonymous || !userIsAuthorized
|
||||
h3(data-i18n="employer_signup.title") Sign up to hire CodeCombat players!
|
||||
else
|
||||
h3 CodeCombat Placement Agreement
|
||||
|
||||
block modal-body-content
|
||||
h4(data-i18n="employer_signup.sub_heading") Let us find your next brilliant developers.
|
||||
if userIsAnonymous
|
||||
if userIsAuthorized
|
||||
| You appear to be authorized on CodeCombat with LinkedIn.
|
||||
else
|
||||
h4(data-i18n="employer_signup.sub_heading") Let us find your next brilliant developers.
|
||||
p Create an account to get started!
|
||||
.form
|
||||
.form-group
|
||||
label.control-label(for="signup-email", data-i18n="general.email") Email
|
||||
input#signup-email.form-control.input-large(name="email",type="email")
|
||||
.form-group
|
||||
label.control-label(for="signup-password", data-i18n="general.password") Password
|
||||
input#signup-password.input-large.form-control(name="password", type="password")
|
||||
else if !userIsAuthorized
|
||||
.modal-footer.linkedin
|
||||
p Please sign into your LinkedIn account to verify your identity.
|
||||
script(type="in/Login" id="linkedInAuthButton" data-onAuth="contractCallback")
|
||||
|
||||
p(data-i18n="employer_signup.pitch_body") When you hire one of our players, you will pay CodeCombat 18% of her first-year salary, payable within 30 days of when she starts working. We will fully refund our placement fee if she leaves or is fired within 90 days. Cool? Email george@codecombat.com to get set up with employer permissions to see our candidates.
|
||||
else
|
||||
| Please agree to our terms before accessing our candidates.
|
||||
br
|
||||
br
|
||||
b Who we are:
|
||||
| CodeCombat is a programming game that both teaches and vets programmers. If you accept this agreement, we will let you hire the most talented developers on our platform.
|
||||
br
|
||||
br
|
||||
b Placement fee:
|
||||
| If you hire our any of our players, you agree to pay us 15% of the candidate's first year annualized starting base salary. The fee is due on the first day that the candidate is employed and is 100% refundable for up to 90 day if the candidate doesn't remain employed at the company for any reason.
|
||||
br
|
||||
br
|
||||
b Interns are free:
|
||||
| We will not bill you for interns and part time hires (remote or onsite) hired through this site, provided they do not become full time hires within 1 year of their start date. If they do become full time hires within 1 year of their start date, we will invoice you 15% of their first year's annualized starting base salary on their first day of full time employment. For these hires, the 90 day guarantee does not apply.
|
||||
br
|
||||
br
|
||||
| By clicking Agree, you are agreeing to CodeCombat's Placement Agreement on behalf of your company. You also consent to CodeCombat storing basic LinkedIn profile data for verification purposes, including your name, email, public profile URL, and work history.
|
||||
block modal-footer
|
||||
if userIsAnonymous
|
||||
if !userIsAuthorized
|
||||
.modal-footer.linkedin
|
||||
b.signin-text Sign in with LinkedIn to complete the registration process.
|
||||
script(type="in/Login" id="linkedInAuthButton" data-onAuth="contractCallback")
|
||||
br
|
||||
br
|
||||
| Already have a CodeCombat account?
|
||||
a.login-link(data-toggle="coco-modal", data-target="modal/login") Log in to continue!
|
||||
else
|
||||
.modal-footer.linkedin
|
||||
a.login-link(data-toggle="coco-modal", data-target="modal/login") Please log in to continue.
|
||||
else if !userIsAnonymous && !userIsAuthorized
|
||||
.modal-footer.linkedin
|
||||
| We will record your name and work history for verification purposes.
|
||||
else if userIsAuthorized && !userHasSignedContract
|
||||
.modal-footer.linkedin
|
||||
button.btn.btn-primary(id="contract-agreement-button") I agree
|
||||
else
|
||||
.modal-footer.linkedin
|
||||
| Thanks! You've already agreed to the contract.
|
||||
|
||||
|
|
@ -11,6 +11,7 @@ module.exports = class ProfileView extends View
|
|||
'click #toggle-job-profile-approved': 'toggleJobProfileApproved'
|
||||
'keyup #job-profile-notes': 'onJobProfileNotesChanged'
|
||||
'click #contact-candidate': 'onContactCandidate'
|
||||
'click #enter-espionage-mode': 'enterEspionageMode'
|
||||
|
||||
constructor: (options, @userID) ->
|
||||
@onJobProfileNotesChanged = _.debounce @onJobProfileNotesChanged, 1000
|
||||
|
@ -52,6 +53,17 @@ module.exports = class ProfileView extends View
|
|||
@user.save()
|
||||
@updateProfileApproval()
|
||||
|
||||
enterEspionageMode: ->
|
||||
postData = emailLower: @user.get('email').toLowerCase(), usernameLower: @user.get('name').toLowerCase()
|
||||
$.ajax
|
||||
type: "POST",
|
||||
url: "/auth/spy"
|
||||
data: postData
|
||||
success: @espionageSuccess
|
||||
|
||||
espionageSuccess: (model) ->
|
||||
window.location.reload()
|
||||
|
||||
onJobProfileNotesChanged: (e) =>
|
||||
notes = @$el.find("#job-profile-notes").val()
|
||||
@user.set 'jobProfileNotes', notes
|
||||
|
|
|
@ -1,36 +1,31 @@
|
|||
{backboneFailure, genericFailure} = require 'lib/errors'
|
||||
View = require 'views/kinds/RootView'
|
||||
template = require 'templates/admin'
|
||||
storage = require 'lib/storage'
|
||||
|
||||
module.exports = class AdminView extends View
|
||||
id: "admin-view"
|
||||
template: template
|
||||
|
||||
|
||||
events:
|
||||
'click #enter-espionage-mode': 'enterEspionageMode'
|
||||
|
||||
|
||||
enterEspionageMode: ->
|
||||
userEmail = $("#user-email").val().toLowerCase()
|
||||
username = $("#user-username").val().toLowerCase()
|
||||
|
||||
userIdentifier = userEmail || username
|
||||
|
||||
postData =
|
||||
usernameLower: username
|
||||
emailLower: userEmail
|
||||
|
||||
|
||||
$.ajax
|
||||
type: "POST",
|
||||
url: "/auth/spy"
|
||||
data: postData
|
||||
success: @espionageSuccess
|
||||
error: @espionageFailure
|
||||
|
||||
|
||||
espionageSuccess: (model) ->
|
||||
storage.save('whoami',model)
|
||||
window.location.reload()
|
||||
|
||||
|
||||
espionageFailure: (jqxhr, status,error)->
|
||||
console.log "There was an error entering espionage mode: #{error}"
|
||||
|
||||
|
||||
|
|
|
@ -2,6 +2,7 @@ View = require 'views/kinds/RootView'
|
|||
template = require 'templates/employers'
|
||||
app = require 'application'
|
||||
User = require 'models/User'
|
||||
{me} = require 'lib/auth'
|
||||
CocoCollection = require 'collections/CocoCollection'
|
||||
EmployerSignupView = require 'views/modal/employer_signup_modal'
|
||||
|
||||
|
@ -27,6 +28,9 @@ module.exports = class EmployersView extends View
|
|||
getRenderData: ->
|
||||
c = super()
|
||||
c.candidates = @candidates.models
|
||||
userPermissions = me.get('permissions') ? []
|
||||
|
||||
c.isEmployer = _.contains userPermissions, "employer"
|
||||
c.moment = moment
|
||||
c
|
||||
|
||||
|
|
|
@ -1,7 +1,91 @@
|
|||
View = require 'views/kinds/ModalView'
|
||||
template = require 'templates/modal/employer_signup_modal'
|
||||
forms = require('lib/forms')
|
||||
User = require 'models/User'
|
||||
auth = require('lib/auth')
|
||||
me = auth.me
|
||||
|
||||
module.exports = class EmployerSignupView extends View
|
||||
id: "employer-signup"
|
||||
template: template
|
||||
closeButton: true
|
||||
|
||||
|
||||
subscriptions:
|
||||
"server-error": "onServerError"
|
||||
"created-user-without-reload": "linkedInAuth"
|
||||
|
||||
events:
|
||||
"click #contract-agreement-button": "agreeToContract"
|
||||
|
||||
|
||||
constructor: (options) ->
|
||||
super(options)
|
||||
@authorizedWithLinkedIn = IN?.User?.isAuthorized()
|
||||
window.tracker?.trackEvent 'Started Employer Signup'
|
||||
@reloadWhenClosed = false
|
||||
window.contractCallback = =>
|
||||
@authorizedWithLinkedIn = IN?.User?.isAuthorized()
|
||||
@render()
|
||||
|
||||
onServerError: (e) ->
|
||||
@disableModalInProgress(@$el)
|
||||
|
||||
afterInsert: ->
|
||||
super()
|
||||
linkedInButtonParentElement = document.getElementById("linkedInAuthButton")?.parentNode
|
||||
if linkedInButtonParentElement
|
||||
IN.parse()
|
||||
if me.get('anonymous')
|
||||
$(".IN-widget").get(0).addEventListener('click', @createAccount, true)
|
||||
|
||||
getRenderData: ->
|
||||
context = super()
|
||||
context.userIsAuthorized = @authorizedWithLinkedIn
|
||||
context.userHasSignedContract = "employer" in me.get("permissions")
|
||||
context.userIsAnonymous = context.me.get('anonymous')
|
||||
context
|
||||
|
||||
agreeToContract: ->
|
||||
application.linkedinHandler.constructEmployerAgreementObject (err, profileData) =>
|
||||
if err? then return handleAgreementFailure err
|
||||
$.ajax
|
||||
url: "/db/user/#{me.id}/agreeToEmployerAgreement"
|
||||
data: profileData
|
||||
type: "POST"
|
||||
success: @handleAgreementSuccess
|
||||
error: @handleAgreementFailure
|
||||
|
||||
handleAgreementSuccess: (result) ->
|
||||
window.tracker?.trackEvent 'Employer Agreed to Contract'
|
||||
me.fetch()
|
||||
window.location.reload()
|
||||
|
||||
handleAgreementFailure: (error) ->
|
||||
alert "There was an error signing the contract. Please contact team@codecombat.com with this error: #{error.responseText}"
|
||||
|
||||
createAccount: (e) =>
|
||||
window.tracker?.trackEvent 'Finished Employer Signup'
|
||||
e.stopPropagation()
|
||||
forms.clearFormAlerts(@$el)
|
||||
userObject = forms.formToObject @$el
|
||||
delete userObject.subscribe
|
||||
for key, val of me.attributes when key in ["preferredLanguage", "testGroupNumber", "dateCreated", "wizardColor1", "name", "music", "volume", "emails"]
|
||||
userObject[key] ?= val
|
||||
userObject.emails ?= {}
|
||||
userObject.emails.employerNotes = {enabled: true}
|
||||
res = tv4.validateMultiple userObject, User.schema
|
||||
return forms.applyErrorsToForm(@$el, res.errors) unless res.valid
|
||||
@enableModalInProgress(@$el)
|
||||
auth.createUserWithoutReload userObject, null
|
||||
IN.User.authorize @render, @
|
||||
|
||||
linkedInAuth: (e) ->
|
||||
me.fetch()
|
||||
@reloadWhenClosed = true
|
||||
|
||||
destroy: ->
|
||||
reloadWhenClosed = @reloadWhenClosed
|
||||
super()
|
||||
if reloadWhenClosed
|
||||
window.location.reload()
|
||||
|
|
|
@ -249,7 +249,7 @@ module.exports = class HUDView extends View
|
|||
return null # included in the bar
|
||||
context =
|
||||
prop: prop
|
||||
hasIcon: prop in ["health", "pos", "target", "inventory", "gold", "visualRange", "attackDamage", "attackRange", "maxSpeed"]
|
||||
hasIcon: prop in ["health", "pos", "target", "inventory", "gold", "bountyGold", "visualRange", "attackDamage", "attackRange", "maxSpeed"]
|
||||
hasBar: prop in ["health"]
|
||||
$(prop_template(context))
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ module.exports = class CastButtonView extends View
|
|||
@castOptions = $('.autocast-delays', @$el)
|
||||
delay = me.get('autocastDelay')
|
||||
delay ?= 5000
|
||||
if @levelID in ['brawlwood', 'brawlwood-tutorial', 'dungeon-arena', 'dungeon-arena-tutorial']
|
||||
if @levelID in ['brawlwood', 'brawlwood-tutorial', 'dungeon-arena', 'dungeon-arena-tutorial', 'gold-rush', 'greed']
|
||||
delay = 90019001
|
||||
@setAutocastDelay delay
|
||||
|
||||
|
@ -78,7 +78,7 @@ module.exports = class CastButtonView extends View
|
|||
async.some _.values(@spells), (spell, callback) =>
|
||||
spell.hasChangedSignificantly spell.getSource(), null, callback
|
||||
, (castable) =>
|
||||
|
||||
|
||||
@castButtonGroup.toggleClass('castable', castable).toggleClass('casting', @casting)
|
||||
if @casting
|
||||
s = $.i18n.t("play_level.tome_cast_button_casting", defaultValue: "Casting")
|
||||
|
|
|
@ -51,19 +51,24 @@ module.exports = class SpellPaletteView extends View
|
|||
allDocs['__' + doc.name].push doc
|
||||
if doc.type is 'snippet' then doc.owner = 'snippets'
|
||||
|
||||
propStorage =
|
||||
'this': 'programmableProperties'
|
||||
more: 'moreProgrammableProperties'
|
||||
Math: 'programmableMathProperties'
|
||||
Array: 'programmableArrayProperties'
|
||||
Object: 'programmableObjectProperties'
|
||||
String: 'programmableStringProperties'
|
||||
Vector: 'programmableVectorProperties'
|
||||
snippets: 'programmableSnippets'
|
||||
if @options.programmable
|
||||
propStorage =
|
||||
'this': 'programmableProperties'
|
||||
more: 'moreProgrammableProperties'
|
||||
Math: 'programmableMathProperties'
|
||||
Array: 'programmableArrayProperties'
|
||||
Object: 'programmableObjectProperties'
|
||||
String: 'programmableStringProperties'
|
||||
Vector: 'programmableVectorProperties'
|
||||
snippets: 'programmableSnippets'
|
||||
else
|
||||
propStorage =
|
||||
'this': 'apiProperties'
|
||||
count = 0
|
||||
propGroups = {}
|
||||
for owner, storage of propStorage
|
||||
added = propGroups[owner] = _.sortBy(@thang[storage] ? []).slice()
|
||||
props = _.reject @thang[storage] ? [], (prop) -> prop[0] is '_' # no private properties
|
||||
added = propGroups[owner] = _.sortBy(props).slice()
|
||||
count += added.length
|
||||
|
||||
shortenize = count > 6
|
||||
|
@ -78,7 +83,7 @@ module.exports = class SpellPaletteView extends View
|
|||
doc ?= prop
|
||||
@entries.push @addEntry(doc, shortenize, tabbify, owner is 'snippets')
|
||||
groupForEntry = (entry) ->
|
||||
return 'more' if entry.doc.owner is 'this' and entry.doc.name in propGroups.more
|
||||
return 'more' if entry.doc.owner is 'this' and entry.doc.name in (propGroups.more ? [])
|
||||
entry.doc.owner
|
||||
@entries = _.sortBy @entries, (entry) ->
|
||||
order = ['this', 'more', 'Math', 'Vector', 'snippets']
|
||||
|
|
|
@ -73,7 +73,7 @@ module.exports = class TomeView extends View
|
|||
delete @options.thangs
|
||||
|
||||
onNewWorld: (e) ->
|
||||
thangs = _.filter e.world.thangs, 'isSelectable'
|
||||
thangs = _.filter e.world.thangs, 'inThangList'
|
||||
programmableThangs = _.filter thangs, 'isProgrammable'
|
||||
@createSpells programmableThangs, e.world
|
||||
@thangList.adjustThangs @spells, thangs
|
||||
|
@ -178,14 +178,12 @@ module.exports = class TomeView extends View
|
|||
thang = e.thang
|
||||
spellName = e.spellName
|
||||
@spellList?.$el.hide()
|
||||
return @clearSpellView() unless thang?.isProgrammable
|
||||
selectedThangSpells = (@spells[spellKey] for spellKey in @thangSpells[thang.id])
|
||||
if spellName
|
||||
spell = _.find selectedThangSpells, {name: spellName}
|
||||
else
|
||||
spell = @thangList.topSpellForThang thang
|
||||
#spell = selectedThangSpells[0] # TODO: remember last selected spell for this thang
|
||||
return @clearSpellView() unless spell?.canRead()
|
||||
return @clearSpellView() unless thang
|
||||
spell = @spellFor thang, spellName
|
||||
unless spell?.canRead()
|
||||
@clearSpellView()
|
||||
@updateSpellPalette thang, spell
|
||||
return
|
||||
unless spell.view is @spellView
|
||||
@clearSpellView()
|
||||
@spellView = spell.view
|
||||
|
@ -198,9 +196,22 @@ module.exports = class TomeView extends View
|
|||
@spellList.setThangAndSpell thang, spell
|
||||
@spellView?.setThang thang
|
||||
@spellTabView?.setThang thang
|
||||
if @spellPaletteView?.thang isnt thang
|
||||
@spellPaletteView = @insertSubView new SpellPaletteView thang: thang, supermodel: @supermodel
|
||||
@spellPaletteView.toggleControls {}, spell.view.controlsEnabled # TODO: know when palette should have been disabled but didn't exist
|
||||
@updateSpellPalette thang, spell
|
||||
|
||||
updateSpellPalette: (thang, spell) ->
|
||||
return unless thang and @spellPaletteView?.thang isnt thang and thang.programmableProperties or thang.apiProperties
|
||||
@spellPaletteView = @insertSubView new SpellPaletteView thang: thang, supermodel: @supermodel, programmable: spell?.canRead()
|
||||
@spellPaletteView.toggleControls {}, spell.view.controlsEnabled if spell # TODO: know when palette should have been disabled but didn't exist
|
||||
|
||||
spellFor: (thang, spellName) ->
|
||||
return null unless thang?.isProgrammable
|
||||
selectedThangSpells = (@spells[spellKey] for spellKey in @thangSpells[thang.id])
|
||||
if spellName
|
||||
spell = _.find selectedThangSpells, {name: spellName}
|
||||
else
|
||||
spell = @thangList.topSpellForThang thang
|
||||
#spell = selectedThangSpells[0] # TODO: remember last selected spell for this thang
|
||||
spell
|
||||
|
||||
reloadAllCode: ->
|
||||
spell.view.reloadCode false for spellKey, spell of @spells when spell.team is me.team or (spell.team in ["common", "neutral", null])
|
||||
|
|
|
@ -151,6 +151,22 @@ module.exports = class PlayView extends View
|
|||
description: "Play head-to-head against fellow Wizards in a dungeon melee!"
|
||||
levelPath: 'ladder'
|
||||
}
|
||||
{
|
||||
name: 'Gold Rush'
|
||||
difficulty: 3
|
||||
id: 'gold-rush'
|
||||
image: '/file/db/level/52602ecb026e8481e7000001/generic_1.png'
|
||||
description: "Prove you are better at collecting gold than your opponent!"
|
||||
levelPath: 'ladder'
|
||||
}
|
||||
{
|
||||
name: 'Greed'
|
||||
difficulty: 4
|
||||
id: 'greed'
|
||||
image: '/file/db/level/526fd3043c637ece50001bb2/the_herd_icon.png'
|
||||
description: "Liked Dungeon Arena and Gold Rush? Put them together in this economic arena!"
|
||||
levelPath: 'ladder'
|
||||
}
|
||||
{
|
||||
name: 'Brawlwood'
|
||||
difficulty: 4
|
||||
|
@ -159,14 +175,6 @@ module.exports = class PlayView extends View
|
|||
description: "Combat the armies of other Wizards in a strategic forest arena! (Fast computer required.)"
|
||||
levelPath: 'ladder'
|
||||
}
|
||||
{
|
||||
name: 'Gold Rush'
|
||||
difficulty: 3
|
||||
id: 'gold-rush'
|
||||
image: '/file/db/level/525ef8ef06e1ab0962000003/commanding_followers_icon.png'
|
||||
description: "Prove you are better at collecting gold than your opponent!"
|
||||
levelPath: 'ladder'
|
||||
}
|
||||
]
|
||||
|
||||
playerCreated = [
|
||||
|
@ -219,7 +227,14 @@ module.exports = class PlayView extends View
|
|||
image: '/file/db/level/526ae95c1e5cd30000000008/zone_of_danger_icon.png'
|
||||
description: "Identify the spies hidden among your soldiers - by Nathan Gossett"
|
||||
}
|
||||
|
||||
{
|
||||
name: 'Harvest Time'
|
||||
difficulty: 2
|
||||
id: 'find-the-spy'
|
||||
image: '/file/db/level/529662dfe0df8f0000000007/grab_the_mushroom_icon.png'
|
||||
description: "Collect a hundred mushrooms in just five lines of code - by Nathan Gossett"
|
||||
}
|
||||
|
||||
#{
|
||||
# name: 'Enemy Artillery'
|
||||
# difficulty: 1
|
||||
|
|
|
@ -29,7 +29,7 @@ UserSchema.post('init', ->
|
|||
UserSchema.methods.isAdmin = ->
|
||||
p = @get('permissions')
|
||||
return p and 'admin' in p
|
||||
|
||||
|
||||
emailNameMap =
|
||||
generalNews: 'announcement'
|
||||
adventurerNews: 'tester'
|
||||
|
@ -39,20 +39,20 @@ emailNameMap =
|
|||
diplomatNews: 'translator'
|
||||
ambassadorNews: 'support'
|
||||
anyNotes: 'notification'
|
||||
|
||||
|
||||
UserSchema.methods.setEmailSubscription = (newName, enabled) ->
|
||||
oldSubs = _.clone @get('emailSubscriptions')
|
||||
if oldSubs and oldName = emailNameMap[newName]
|
||||
oldSubs = (s for s in oldSubs when s isnt oldName)
|
||||
oldSubs.push(oldName) if enabled
|
||||
@set('emailSubscriptions', oldSubs)
|
||||
|
||||
|
||||
newSubs = _.clone(@get('emails') or _.cloneDeep(jsonschema.properties.emails.default))
|
||||
newSubs[newName] ?= {}
|
||||
newSubs[newName].enabled = enabled
|
||||
@set('emails', newSubs)
|
||||
@newsSubsChanged = true if newName in mail.NEWS_GROUPS
|
||||
|
||||
|
||||
UserSchema.methods.isEmailSubscriptionEnabled = (newName) ->
|
||||
emails = @get 'emails'
|
||||
if not emails
|
||||
|
@ -74,10 +74,10 @@ UserSchema.statics.updateMailChimp = (doc, callback) ->
|
|||
newGroups = []
|
||||
for [mailchimpEmailGroup, emailGroup] in _.zip(mail.MAILCHIMP_GROUPS, mail.NEWS_GROUPS)
|
||||
newGroups.push(mailchimpEmailGroup) if doc.isEmailSubscriptionEnabled(emailGroup)
|
||||
|
||||
|
||||
if (not existingProps) and newGroups.length is 0
|
||||
return callback?() # don't add totally unsubscribed people to the list
|
||||
|
||||
|
||||
params = {}
|
||||
params.id = mail.MAILCHIMP_LIST_ID
|
||||
params.email = if existingProps then {leid:existingProps.leid} else {email:doc.get('email')}
|
||||
|
@ -113,7 +113,7 @@ UserSchema.pre('save', (next) ->
|
|||
recipient:
|
||||
address: @get 'email'
|
||||
sendwithus.api.send data, (err, result) ->
|
||||
log.error 'error', err, 'result', result if err
|
||||
log.error "sendwithus post-save error: #{err}, result: #{result}" if err
|
||||
next()
|
||||
)
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ LevelSessionHandler = require '../levels/sessions/level_session_handler'
|
|||
serverProperties = ['passwordHash', 'emailLower', 'nameLower', 'passwordReset']
|
||||
privateProperties = [
|
||||
'permissions', 'email', 'firstName', 'lastName', 'gender', 'facebookID',
|
||||
'gplusID', 'music', 'volume', 'aceConfig', 'employerAt'
|
||||
'gplusID', 'music', 'volume', 'aceConfig', 'employerAt', 'signedEmployerAgreement'
|
||||
]
|
||||
candidateProperties = [
|
||||
'jobProfile', 'jobProfileApproved', 'jobProfileNotes'
|
||||
|
@ -182,6 +182,7 @@ UserHandler = class UserHandler extends Handler
|
|||
|
||||
getByRelationship: (req, res, args...) ->
|
||||
return @agreeToCLA(req, res) if args[1] is 'agreeToCLA'
|
||||
return @agreeToEmployerAgreement(req,res) if args[1] is 'agreeToEmployerAgreement'
|
||||
return @avatar(req, res, args[0]) if args[1] is 'avatar'
|
||||
return @getNamesByIDs(req, res) if args[1] is 'names'
|
||||
return @nameToID(req, res, args[0]) if args[1] is 'nameToID'
|
||||
|
@ -232,6 +233,32 @@ UserHandler = class UserHandler extends Handler
|
|||
documents = (LevelSessionHandler.formatEntity(req, doc) for doc in documents)
|
||||
@sendSuccess(res, documents)
|
||||
|
||||
agreeToEmployerAgreement: (req, res) ->
|
||||
userIsAnonymous = req.user?.get('anonymous')
|
||||
if userIsAnonymous then return errors.unauthorized(res, "You need to be logged in to agree to the employer agreeement.")
|
||||
profileData = req.body
|
||||
#TODO: refactor this bit to make it more elegant
|
||||
if not profileData.id or not profileData.positions or not profileData.emailAddress or not profileData.firstName or not profileData.lastName
|
||||
return errors.badInput(res, "You need to have a more complete profile to sign up for this service.")
|
||||
@modelClass.findById(req.user.id).exec (err, user) =>
|
||||
if user.get('employerAt') or user.get('signedEmployerAgreement') or "employer" in user.get('permissions')
|
||||
return errors.conflict(res, "You already have signed the agreement!")
|
||||
#TODO: Search for the current position
|
||||
employerAt = _.filter(profileData.positions.values,"isCurrent")[0]?.company.name ? "Not available"
|
||||
signedEmployerAgreement =
|
||||
linkedinID: profileData.id
|
||||
date: new Date()
|
||||
data: profileData
|
||||
updateObject =
|
||||
"employerAt": employerAt
|
||||
"signedEmployerAgreement": signedEmployerAgreement
|
||||
$push: "permissions":'employer'
|
||||
|
||||
User.update {"_id": req.user.id}, updateObject, (err, result) =>
|
||||
if err? then return errors.serverError(res, "There was an issue updating the user object to reflect employer status: #{err}")
|
||||
res.send({"message": "The agreement was successful."})
|
||||
res.end()
|
||||
|
||||
getCandidates: (req, res) ->
|
||||
authorized = req.user.isAdmin() or ('employer' in req.user.get('permissions'))
|
||||
since = (new Date((new Date()) - 2 * 30.4 * 86400 * 1000)).toISOString()
|
||||
|
|
Loading…
Add table
Reference in a new issue