]>
git.proxmox.com Git - sencha-touch.git/blob - src/examples/oreilly/app/controller/Speakers.js
1 Ext
.define('Oreilly.controller.Speakers', {
2 extend
: 'Ext.app.Controller',
6 speakerContainer
: 'speakerContainer',
7 speakers
: 'speakerContainer speakers',
8 speaker
: 'speakerContainer speaker',
9 speakerInfo
: 'speakerContainer speakerInfo',
10 sessions
: 'speakerContainer speaker list'
14 itemtap
: 'onSpeakerTap',
15 activate
: 'onSpeakersActivate'
18 itemtap
: 'onSessionTap'
23 onSpeakerTap: function(list
, idx
, el
, record
) {
24 var sessionStore
= Ext
.getStore('SpeakerSessions'),
25 sessionIds
= record
.get('sessionIds');
27 sessionStore
.clearFilter(true);
28 sessionStore
.filterBy(function(session
) {
29 return Ext
.Array
.contains(sessionIds
, session
.get('id'));
33 this.speaker
= Ext
.widget('speaker');
36 this.speaker
.config
.title
= record
.getFullName();
37 this.getSpeakerContainer().push(this.speaker
);
38 this.getSpeakerInfo().setRecord(record
);
41 onSessionTap: function(list
, idx
, el
, record
) {
43 if (!this.sessionInfo
) {
44 this.sessionInfo
= Ext
.widget('sessionInfo');
47 this.sessionInfo
.config
.title
= record
.get('title');
48 this.sessionInfo
.setRecord(record
);
49 this.getSpeakerContainer().push(this.sessionInfo
);
52 onSpeakersActivate: function() {
54 this.speaker
.down('list').deselectAll();