Fixed bugs with forking ThangTypes.

This commit is contained in:
Nick Winter 2014-09-08 16:03:29 -07:00
parent c64c391d74
commit dd2cdf3ef9
3 changed files with 5 additions and 3 deletions

View file

@ -96,7 +96,9 @@ class CocoModel extends Backbone.Model
schema: -> return @constructor.schema
getValidationErrors: ->
errors = tv4.validateMultiple(@attributes, @constructor.schema or {}).errors
# Since Backbone unset only sets things to undefined instead of deleting them, we ignore undefined properties.
definedAttributes = _.pick @attributes, (v) -> v isnt undefined
errors = tv4.validateMultiple(definedAttributes, @constructor.schema or {}).errors
return errors if errors?.length
validate: ->

View file

@ -31,7 +31,7 @@ module.exports = class ForkModal extends ModalView
newModel.unset 'parent'
newModel.set 'commitMessage', "Forked from #{@model.get('name')}"
newModel.set 'name', @$el.find('#fork-model-name').val()
if @model.schema.properties.permissions
if @model.schema().properties.permissions
newModel.set 'permissions', [access: 'owner', target: me.id]
newPathPrefix = "editor/#{@editorPath}/"
res = newModel.save()

View file

@ -28,7 +28,7 @@ module.exports = class NewModelModal extends ModalView
model = new @model
name = @$el.find('#name').val()
model.set('name', name)
if @model.schema.properties.permissions
if @model.schema().properties.permissions
model.set 'permissions', [{access: 'owner', target: me.id}]
model.set(key, prop) for key, prop of @properties if @properties?
model