/* TeamMembers */

(function(module) {

    module.ModelView = Backbone.View.extend({

        className: "user-box",
        
        template: JST['app/scripts/TeamMembers/TeamMembersTpl.ejs'],
        
        initialize: function() {
            this.model.on("change", this.show, this);
            this.model.once("sync", this.saveRole, this);
            this.show();
        },

        subscriptions: {
            "TeamEditPage:roleSetUp": "setRole"
        },
       
        show: function() {
            this.canRender() ? this.$el.removeClass('hide'): 
                                this.$el.addClass('hide');
        },

        saveRole: function() {
            mediator.pub("TeamMembers:Saved");
            mediator.pub("TeamMembers:ChangeRole");
        },

        canRender: function() {
            return (this.model.get("role") === this.role);  
        },

        setRole: function(new_role) {
            this.role = new_role;
            this.show();
        },

        render: function() {
            this.$el.html(this.template(this.model.toJSON()));
            this.show();

            return this;
        }

    });
    
})(app.TeamMembers);

@@ -464,16 +464,92 @@
      %7D,%0A
+        %0A        events: %7B%0A            %22dblclick%22 : %22deleteRole%22%0A        %7D,%0A
        %0A
@@ -1054,32 +1054,191 @@
 ow();%0A        %7D,
+%0A        %0A        deleteRole: function () %7B%0A            mediator.pub(%22TeamMembers:DeleteRole%22, this.model);%0A            this.model.set(%22role%22, %22 %22);%0A        %7D,
 %0A%0A        render

Update TeamMembersModelView.js