Commit 582b2c2
Changed files (4)
app
assets
javascripts
controllers
models
routes
templates
videos
app/assets/javascripts/controllers/videos_new.js.coffee
@@ -1,6 +1,10 @@
App.VideosNewController = Ember.Controller.extend
actions:
createVideo: ->
- video = @store.createRecord('video', @get('fields'))
- video.save().then =>
- @transitionTo('video', video)
+ fields = @get('fields')
+ if App.Video.valid(fields)
+ video = @store.createRecord('video', @get('fields'))
+ video.save().then =>
+ @transitionTo('video', video)
+ else
+ @set('showError', true)
app/assets/javascripts/models/video.js.coffee
@@ -2,3 +2,7 @@ App.Video = DS.Model.extend
title: DS.attr('string')
description: DS.attr('string')
uri: DS.attr('string')
+
+App.Video.reopenClass
+ valid: (fields) ->
+ fields.title and fields.uri
app/assets/javascripts/routes/videos_new.js.coffee
@@ -1,3 +1,4 @@
App.VideosNewRoute = Ember.Route.extend
setupController: (controller) ->
controller.set('fields', {})
+ controller.set('showError', false)
app/assets/javascripts/templates/videos/new.hbs
@@ -1,5 +1,7 @@
<h1>New Video</h1>
-
+{{#if showError}}
+<p>Videos must have at title and uri.</p>
+{{/if}}
<form>
<fieldset>
<dl>