summaryrefslogtreecommitdiff
path: root/app/assets/javascripts
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2014-07-19 08:38:36 -0600
committermo khan <mo@mokhan.ca>2014-07-19 08:38:36 -0600
commitd18dd692acb0411bdb8a413825c60062af70ece3 (patch)
treedc320251783af94b1f1b0b3b44c649615fb6a906 /app/assets/javascripts
parent164f1ffee9f046bd31d001451b255e79db36cd2b (diff)
reset preview panel when url changes and extract helper method.
Diffstat (limited to 'app/assets/javascripts')
-rw-r--r--app/assets/javascripts/backbone/templates/tutorials/new.jst.ejs2
-rw-r--r--app/assets/javascripts/backbone/views/tutorials/new_view.js.coffee17
2 files changed, 17 insertions, 2 deletions
diff --git a/app/assets/javascripts/backbone/templates/tutorials/new.jst.ejs b/app/assets/javascripts/backbone/templates/tutorials/new.jst.ejs
index 32cb5dc7..00f84f83 100644
--- a/app/assets/javascripts/backbone/templates/tutorials/new.jst.ejs
+++ b/app/assets/javascripts/backbone/templates/tutorials/new.jst.ejs
@@ -28,7 +28,7 @@
</div>
</fieldset>
</form>
- <% if(image_url) { %>
+ <% if(canLoadPreview()) { %>
<div class="thumbnail">
<img class="embed-thumb" src="<%= image_url %>" />
<div class="caption">
diff --git a/app/assets/javascripts/backbone/views/tutorials/new_view.js.coffee b/app/assets/javascripts/backbone/views/tutorials/new_view.js.coffee
index 855bc9ad..9259f355 100644
--- a/app/assets/javascripts/backbone/views/tutorials/new_view.js.coffee
+++ b/app/assets/javascripts/backbone/views/tutorials/new_view.js.coffee
@@ -7,12 +7,18 @@ class CakeSide.Views.Tutorials.NewView extends Marionette.ItemView
events:
'change #tutorial_url': 'loadUrl'
+ templateHelpers:
+ canLoadPreview: ->
+ @image_url
+
initialize: ->
@model = new @collection.model()
@service = new EmbedlyService()
loadUrl: ->
- @service.retrieve_info_on(@ui.url.val(), @loadUrlInformation)
+ url = @ui.url.val()
+ @resetTutorial(url)
+ @service.retrieve_info_on(url, @loadUrlInformation)
loadUrlInformation: (data) =>
@model.set('url', data.url)
@@ -22,3 +28,12 @@ class CakeSide.Views.Tutorials.NewView extends Marionette.ItemView
@model.set('author', data.provider_name)
@model.set('author_url', data.provider_url)
@render()
+
+ resetTutorial: (url) ->
+ @model.set('url', url)
+ @model.set('heading', '')
+ @model.set('description', '')
+ @model.set('image_url', '')
+ @model.set('author', '')
+ @model.set('author_url', '')
+ @render()