mixpanel on posting
This commit is contained in:
parent
a7ced3f77b
commit
a836b06d3e
3 changed files with 44 additions and 0 deletions
|
|
@ -58,6 +58,14 @@ app.models.Post = Backbone.Model.extend(_.extend({}, app.models.formatDateMixin,
|
|||
preloadOrFetch : function(){
|
||||
var action = app.hasPreload("post") ? this.set(app.parsePreload("post")) : this.fetch()
|
||||
return $.when(action)
|
||||
},
|
||||
|
||||
hasPhotos : function(){
|
||||
return this.get("photos") && this.get("photos").length > 0
|
||||
},
|
||||
|
||||
hasText : function(){
|
||||
return $.trim(this.get("text")) !== ""
|
||||
}
|
||||
}), {
|
||||
headlineLimit : 118,
|
||||
|
|
|
|||
|
|
@ -129,6 +129,18 @@ app.views.framerControls = app.views.Base.extend({
|
|||
}
|
||||
this.$('input').prop('disabled', 'disabled')
|
||||
this.model.save()
|
||||
|
||||
this.trackPost()
|
||||
},
|
||||
|
||||
trackPost : function() {
|
||||
var model = this.model
|
||||
|
||||
app.track("Posted", {
|
||||
text : model.hasText(),
|
||||
photos : model.hasPhotos(),
|
||||
template : model.get("frame_name")
|
||||
})
|
||||
},
|
||||
|
||||
inValidFrame : function(){
|
||||
|
|
|
|||
|
|
@ -36,4 +36,28 @@ describe("app.models.Post", function() {
|
|||
expect(this.post.createdAt()).toEqual(+date);
|
||||
});
|
||||
});
|
||||
|
||||
describe("hasPhotos", function(){
|
||||
it('returns true if the model has more than one photo', function(){
|
||||
this.post.set({photos : [1,2]})
|
||||
expect(this.post.hasPhotos()).toBeTruthy()
|
||||
})
|
||||
|
||||
it('returns false if the model does not have any photos', function(){
|
||||
this.post.set({photos : []})
|
||||
expect(this.post.hasPhotos()).toBeFalsy()
|
||||
})
|
||||
});
|
||||
|
||||
describe("hasText", function(){
|
||||
it('returns true if the model has text', function(){
|
||||
this.post.set({text : "hella"})
|
||||
expect(this.post.hasText()).toBeTruthy()
|
||||
})
|
||||
|
||||
it('returns false if the model does not have text', function(){
|
||||
this.post.set({text : " "})
|
||||
expect(this.post.hasText()).toBeFalsy()
|
||||
})
|
||||
});
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in a new issue