| 103 | } |
| 104 | |
| 105 | loadPostClanData () { |
| 106 | this.campaigns = new CocoCollection([], { url: '/db/campaign', model: Campaign, comparator: '_id' }) |
| 107 | this.members = new CocoCollection([], { url: `/db/clan/${this.clanID}/members`, model: User, comparator: 'nameLower' }) |
| 108 | this.memberAchievements = new CocoCollection([], { url: `/db/clan/${this.clanID}/member_achievements`, model: EarnedAchievement, comparator: '_id' }) |
| 109 | this.memberSessions = new CocoCollection([], { url: `/db/clan/${this.clanID}/member_sessions`, model: LevelSession, comparator: '_id' }) |
| 110 | this.tournaments = new CocoCollection([], { url: `/db/tournaments?clanId=${this.clanID}`, model: Tournament }) |
| 111 | this.ladders = new LadderCollection([]) |
| 112 | |
| 113 | this.listenTo(me, 'sync', () => (typeof this.render === 'function' ? this.render() : undefined)) |
| 114 | this.listenTo(this.campaigns, 'sync', this.onCampaignSync) |
| 115 | this.listenTo(this.members, 'sync', this.onMembersSync) |
| 116 | this.listenTo(this.memberAchievements, 'sync', this.onMemberAchievementsSync) |
| 117 | this.listenTo(this.memberSessions, 'sync', this.onMemberSessionsSync) |
| 118 | this.listenTo(this.tournaments, 'sync', this.onTournamentsSync) |
| 119 | this.listenTo(this.ladders, 'sync', this.onLaddersSync) |
| 120 | |
| 121 | this.supermodel.loadModel(this.campaigns) |
| 122 | this.supermodel.loadCollection(this.members, 'members', { cache: false }) |
| 123 | this.supermodel.loadCollection(this.memberAchievements, 'member_achievements', { cache: false }) |
| 124 | this.supermodel.loadCollection(this.tournaments, 'tournaments', { cache: false }) |
| 125 | return this.supermodel.loadCollection(this.ladders, 'ladders') |
| 126 | } |
| 127 | |
| 128 | getRenderData () { |
| 129 | let left, needle |