mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-04-26 05:53:39 -04:00
Switching code language based on selection now.
This commit is contained in:
parent
a58f3e0fb6
commit
666c020389
3 changed files with 21 additions and 2 deletions
app
|
@ -81,7 +81,7 @@
|
|||
text-shadow: none
|
||||
|
||||
.code-wizard
|
||||
display: none
|
||||
opacity: 0.5
|
||||
|
||||
.code-language
|
||||
cursor: pointer
|
||||
|
@ -97,6 +97,7 @@
|
|||
|
||||
.code-wizard
|
||||
display: block
|
||||
opacity: 1
|
||||
|
||||
&.selected-language
|
||||
opacity: 1
|
||||
|
|
|
@ -7,7 +7,7 @@ block content
|
|||
.code-languages
|
||||
.primary-code-languages.row
|
||||
.col-md-6
|
||||
.code-language.selected-language#javascript(data-code-language='javascript')
|
||||
.code-language#javascript(data-code-language='javascript')
|
||||
.code-wizard
|
||||
h2 JavaScript
|
||||
p The language of the web. Great for writing websites, web apps, HTML5 games, and servers.
|
||||
|
|
|
@ -10,6 +10,9 @@ module.exports = class HomeView extends View
|
|||
id: 'home-view'
|
||||
template: template
|
||||
|
||||
events:
|
||||
'click .code-language': 'onCodeLanguageSelected'
|
||||
|
||||
constructor: ->
|
||||
super(arguments...)
|
||||
ThangType.loadUniversalWizard()
|
||||
|
@ -25,6 +28,7 @@ module.exports = class HomeView extends View
|
|||
console.warn 'no more jquery browser version...'
|
||||
c.isEnglish = (me.get('preferredLanguage') or 'en').startsWith 'en'
|
||||
c.languageName = me.get('preferredLanguage')
|
||||
c.codeLanguage = (me.get('aceConfig') ? {}).language or 'javascript'
|
||||
c
|
||||
|
||||
afterRender: ->
|
||||
|
@ -42,3 +46,17 @@ module.exports = class HomeView extends View
|
|||
href[href.length-1] = lastLevel if href.length isnt 0
|
||||
href = href.join("/")
|
||||
playLink.attr("href", href)
|
||||
|
||||
codeLanguage = (me.get('aceConfig') ? {}).language or 'javascript'
|
||||
@$el.find(".code-language[data-code-language=#{codeLanguage}]").addClass 'selected-language'
|
||||
|
||||
onCodeLanguageSelected: (e) ->
|
||||
target = $(e.target).closest('.code-language')
|
||||
codeLanguage = target.data('code-language')
|
||||
@$el.find('.code-language').removeClass 'selected-language'
|
||||
target.addClass 'selected-language'
|
||||
aceConfig = me.get('aceConfig') ? {}
|
||||
return if (aceConfig.language or 'javascript') is codeLanguage
|
||||
aceConfig.language = codeLanguage
|
||||
me.set 'aceConfig', aceConfig
|
||||
me.save() # me.patch() doesn't work if aceConfig previously existed and we switched just once
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue