var bindDialogInfo = function(peer) { switch(peer.type) { case PeerTypes.USER: ActorClient.bindUser(peer.id, onCurrentDialogInfoChange); break; case PeerTypes.GROUP: ActorClient.bindGroup(peer.id, onCurrentDialogInfoChange); break; default: } };
var _setActivityFromPeer = function () { _cleanup(); var peer = DialogStore.getSelectedDialogPeer(); switch (peer.type) { case PeerTypes.USER: { let change = function (user) { _activity = { type: ActivityTypes.USER_PROFILE, user: user }; ActivityStore.emitChange(); }; _cleanup = function () { ActorClient.unbindUser(peer.id, change); }; ActorClient.bindUser(peer.id, change); } break; case PeerTypes.GROUP: { let change = function (group) { _activity = { type: ActivityTypes.GROUP_PROFILE, group: group }; ActivityStore.emitChange(); }; _cleanup = function () { ActorClient.unbindGroup(peer.id, change); }; ActorClient.bindGroup(peer.id, change); } break; default: return; } };
getName() { return _name; }, setName(name) { ActorClient.editMyName(name); }, setProfile(profile) { _profile = profile; _name = profile.name; this.trigger(); }, onModalOpen() { ActorClient.bindUser(ActorClient.getUid(), this.setProfile); _isModalOpen = true; this.trigger(); }, onModalClose() { ActorClient.unbindUser(ActorClient.getUid(), this.setProfile); _isModalOpen = false; this.trigger(); } });