mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-03-14 07:00:01 -04:00
Default image for achievements. Redid border logic
This commit is contained in:
parent
15c1939657
commit
a8df3df095
8 changed files with 52 additions and 17 deletions
|
@ -40,7 +40,12 @@ Application = initialize: ->
|
|||
@facebookHandler = new FacebookHandler()
|
||||
@gplusHandler = new GPlusHandler()
|
||||
$(document).bind 'keydown', preventBackspace
|
||||
$.notify.addStyle 'achievement', html: $(AchievementNotify popup:true)
|
||||
#$.notify.addStyle 'achievement', html: $(AchievementNotify popup:true)
|
||||
$.notify.addStyle 'achievement-wood', html: $(AchievementNotify popup:true)
|
||||
$.notify.addStyle 'achievement-stone', html: $(AchievementNotify popup:true)
|
||||
$.notify.addStyle 'achievement-silver', html: $(AchievementNotify popup:true)
|
||||
$.notify.addStyle 'achievement-gold', html: $(AchievementNotify popup:true)
|
||||
$.notify.addStyle 'achievement-diamong', html: $(AchievementNotify popup:true)
|
||||
@linkedinHandler = new LinkedInHandler()
|
||||
preload(COMMON_FILES)
|
||||
$.i18n.init {
|
||||
|
|
|
@ -14,3 +14,15 @@ module.exports = class Achievement extends CocoModel
|
|||
kind = @get('function')?.kind or jsonschema.properties.function.default.kind
|
||||
parameters = @get('function')?.parameters or jsonschema.properties.function.default.parameters
|
||||
return utils.functionCreators[kind](parameters) if kind of utils.functionCreators
|
||||
|
||||
@styleMapping:
|
||||
1: 'achievement-wood'
|
||||
2: 'achievement-stone'
|
||||
3: 'achievement-silver'
|
||||
4: 'achievement-gold'
|
||||
5: 'achievement-diamond'
|
||||
|
||||
getNotifyStyle: -> Achievement.styleMapping[@get 'difficulty']
|
||||
|
||||
getImageURL: ->
|
||||
if @get 'icon' then '/file/' + @get('icon') else '/images/achievements/stars.png'
|
||||
|
|
|
@ -24,8 +24,9 @@ MongoFindQuerySchema =
|
|||
'^[-a-zA-Z0-9\.]*$':
|
||||
oneOf: [
|
||||
#{$ref: '#/definitions/' + MongoQueryOperatorSchema.id},
|
||||
{type: 'string'},
|
||||
{type: 'string'}
|
||||
{type: 'object'}
|
||||
{type: 'boolean'}
|
||||
]
|
||||
additionalProperties: true # TODO make Treema accept new pattern matched keys
|
||||
definitions: {}
|
||||
|
@ -72,7 +73,7 @@ _.extend AchievementSchema.properties,
|
|||
additionalProperties: false
|
||||
|
||||
_.extend AchievementSchema, # Let's have these on the bottom
|
||||
required: ['query', 'worth', 'collection', 'userField', 'category', 'difficulty']
|
||||
required: ['name', 'description', 'query', 'worth', 'collection', 'userField', 'category', 'difficulty']
|
||||
additionalProperties: false
|
||||
|
||||
AchievementSchema.definitions = {}
|
||||
|
|
|
@ -38,14 +38,6 @@
|
|||
margin-top: auto
|
||||
margin-bottom: 0px !important
|
||||
|
||||
.achievement-border-wood
|
||||
background: url("/images/achievements/border_wood.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
.achievement-border-silver
|
||||
background: url("/images/achievements/border_silver.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
#user-achievements-view
|
||||
.row
|
||||
//.col-lg-4, .col-xs-12
|
||||
|
@ -83,7 +75,8 @@
|
|||
line-height: 1.3em
|
||||
max-height: 2.6em
|
||||
|
||||
.notifyjs-achievement-base
|
||||
.notifyjs-achievement-wood-base, .notifyjs-achievement-stone-base, .notifyjs-achievement-silver-base,
|
||||
.notifyjs-achievement-gold-base, .notifyjs-achievement-diamond-base
|
||||
padding: 20px 0px
|
||||
|
||||
.achievement-body
|
||||
|
@ -150,5 +143,30 @@
|
|||
.progress-bar-border img
|
||||
width: 100%
|
||||
|
||||
.notifyjs-achievement-wood-base
|
||||
.achievement-icon
|
||||
background: url("/images/achievements/border_wood.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
.notifyjs-achievement-stone-base
|
||||
.achievement-icon
|
||||
background: url("/images/achievements/border_stone.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
.notifyjs-achievement-silver-base
|
||||
.achievement-icon
|
||||
background: url("/images/achievements/border_silver.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
.notifyjs-achievement-gold-base
|
||||
.achievement-icon
|
||||
background: url("/images/achievements/border_gold.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
.notifyjs-achievement-diamond-base
|
||||
.achievement-icon
|
||||
background: url("/images/achievements/border_diamond.png") no-repeat
|
||||
background-size: 100% 100%
|
||||
|
||||
.progress-bar-white
|
||||
background-color: white
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
div
|
||||
.clearfix.achievement-body
|
||||
.achievement-icon.achievement-border-silver(class=locked === true ? "locked" : "")
|
||||
.achievement-icon(class=locked === true ? "locked" : "", class=border)
|
||||
.achievement-image(data-notify-html="image")
|
||||
if imgURL
|
||||
img(src=imgURL)
|
||||
|
|
|
@ -71,7 +71,7 @@ module.exports = class AchievementEditView extends RootView
|
|||
|
||||
data = @createNotifyData @achievement, earned
|
||||
options =
|
||||
style: 'achievement'
|
||||
style: @achievement.getNotifyStyle()
|
||||
autoHide: false
|
||||
clickToHide: false
|
||||
arrowShow: false
|
||||
|
|
|
@ -80,10 +80,9 @@ module.exports = class RootView extends CocoView
|
|||
$actualHover.trigger e if $actualHover
|
||||
|
||||
# TODO a default should be linked here
|
||||
imageURL = '/file/' + achievement.get('icon')
|
||||
data =
|
||||
title: achievement.get('name')
|
||||
image: $("<img src='#{imageURL}' />")
|
||||
image: $("<img src='#{achievement.getImageURL()}' />")
|
||||
description: achievement.get('description')
|
||||
progressBar: progressBar
|
||||
earnedExp: "+ #{achievedExp} XP"
|
||||
|
@ -99,7 +98,7 @@ module.exports = class RootView extends CocoView
|
|||
autoHideDelay: 10000
|
||||
globalPosition: 'bottom right'
|
||||
showDuration: 400
|
||||
style: 'achievement'
|
||||
style: achievement.getNotifyStyle()
|
||||
autoHide: true
|
||||
clickToHide: true
|
||||
|
||||
|
|
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 7.7 KiB |
Loading…
Reference in a new issue