50 lines
1017 B
CoffeeScript
50 lines
1017 B
CoffeeScript
require 'utils/validations'
|
|
|
|
Validations = Travis.Validations
|
|
|
|
Controller = Ember.ObjectController.extend Validations,
|
|
isEditing: false
|
|
isDeleting: false
|
|
|
|
validates:
|
|
name: ['presence']
|
|
|
|
actionType: 'Save'
|
|
showValueField: Ember.computed.alias('public')
|
|
|
|
value: ( (key, value) ->
|
|
if arguments.length == 2
|
|
@get('model').set('value', value)
|
|
value
|
|
else if @get('public')
|
|
@get('model.value')
|
|
else
|
|
'••••••••••••••••'
|
|
).property('model.value', 'public')
|
|
|
|
actions:
|
|
delete: ->
|
|
return if @get('isDeleting')
|
|
@set('isDeleting', true)
|
|
|
|
@get('model').destroyRecord()
|
|
|
|
edit: ->
|
|
@set('isEditing', true)
|
|
|
|
cancel: ->
|
|
@set('isEditing', false)
|
|
@get('model').revert()
|
|
|
|
save: ->
|
|
return if @get('isSaving')
|
|
|
|
if @isValid()
|
|
env_var = @get('model')
|
|
|
|
# TODO: handle errors
|
|
env_var.save().then =>
|
|
@set('isEditing', false)
|
|
|
|
Travis.EnvVarController = Controller
|