travis-web/assets/scripts/app/controllers/env_var_new.coffee
2015-01-29 13:39:05 +01:00

45 lines
951 B
CoffeeScript

require 'travis/validations'
Validations = Travis.Validations
EnvVar = Travis.EnvVar
Travis.EnvVarsNewController = Ember.Controller.extend Validations,
needs: ['repo']
repo: Ember.computed.alias('controllers.repo.repo')
isSaving: false
validates:
name: ['presence']
actionType: 'Add'
showValueField: true
reset: ->
@setProperties(name: null, value: null, public: null)
actions:
cancel: ->
@reset()
@transitionToRoute('env_vars')
save: ->
return if @get('isSaving')
@set('isSaving', true)
if @isValid()
env_var = @store.createRecord('env_var',
name: @get('name')
value: @get('value')
public: @get('public')
repo: @get('repo')
)
self = this
env_var.save().then =>
@set('isSaving', false)
@reset()
self.transitionToRoute('env_vars')
, =>
@set('isSaving', false)