class Pettanr.User extends Backbone.Model\r
\r
- url: '/users/'\r
- \r
defaults: {\r
- id: null\r
} \r
\r
author: () ->\r
\r
artist: () ->\r
\r
- initialize: () ->\r
+ initialize: (attr = {}, options = {}) ->\r
+ super(attr, options)\r
_.extend(this, Backbone.Events)\r
if @id\r
@url = @url + @id\r
\r
-class Pettanr.User.Current extends Pettanr.User\r
+class Pettanr.User.Session extends Pettanr.User\r
+ \r
+ sign_in: () ->\r
+ @save({})\r
\r
save: (model_attr) ->\r
+ @url = '/users/sign_in'\r
super(model_attr, {\r
success: (model, response, options) =>\r
- @trigger('sign_in:success')\r
- error: (model, response, options) ->\r
- @trigger('sign_in:fail')\r
+ @trigger('sign_in:success', model, response)\r
+ error: (model, response, options) =>\r
+ @trigger('sign_in:fail', model, response)\r
})\r
\r
- initialize: () ->\r
- @url = '/users/sign_in'\r
+ destroy: () ->\r
+ @url = '/users/sign_out'\r
+ @sync('delete', this, {\r
+ success: (model, response, options) =>\r
+ @trigger('sign_out:success', model, response)\r
+ error: (model, response, options) =>\r
+ @trigger('sign_out:fail', model, response)\r
+ })\r
+ \r
+ initialize: (attr = {}, options = {}) ->\r
+ super(attr, options)\r
\r