master
 1class csx.Models.Tutorial extends Backbone.Model
 2  paramRoot: 'tutorial'
 3
 4  defaults:
 5    id: null
 6    url: null
 7    image_url: null
 8    heading: null
 9    description: null
10
11  validate: (attributes, options) ->
12    return "Invalid Url." unless @isValidUrl(attributes.url || '')
13    return "This tutorial has no photos." unless @hasImage(attributes.image_url)
14
15  isValidUrl: (url) ->
16    expression = /[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi;
17    url.match(new RegExp(expression))
18
19  hasImage: (image_url) ->
20    image_url