File tree Expand file tree Collapse file tree 4 files changed +19
-21
lines changed Expand file tree Collapse file tree 4 files changed +19
-21
lines changed Original file line number Diff line number Diff line change 14
14
15
15
<appSettings >
16
16
<add key =" background" value =" /img/bg.jpg" />
17
+ <add key =" DebugMode" value =" True" />
17
18
<add key =" LimitRemoteControlToAuthenticatedUsers" value =" False" />
18
19
19
20
<!-- Uncomment to use fan-out Redis Server Events -->
Original file line number Diff line number Diff line change 32
32
<script type =" text/javascript" >
33
33
var AppData = {
34
34
channel: " @channel" ,
35
- isAuthenticated: @IsAuthenticated .ToString ().ToLower ()
35
+ isAuthenticated: @IsAuthenticated .ToString ().ToLower (),
36
+ channelSubscribersUrl: " /event-subscribers?channel=@channel"
36
37
};
37
38
</script >
38
39
</head >
39
- <body >
40
+ <body >
40
41
41
42
<div id =" app" ></div >
42
43
43
44
<!-- build:js js/app.jsx.js -->
44
- <script type =" text/jsx " src =" js/components/Actions.js" ></script >
45
+ <script type =" text/javascript " src =" js/components/Actions.js" ></script >
45
46
<script type =" text/jsx" src =" js/components/User.jsx" ></script >
46
47
<script type =" text/jsx" src =" js/components/Header.jsx" ></script >
47
48
<script type =" text/jsx" src =" js/components/Sidebar.jsx" ></script >
Original file line number Diff line number Diff line change @@ -3,7 +3,7 @@ var Actions = Reflux.createActions([
3
3
"addMessages" ,
4
4
"removeAllMessages" ,
5
5
"recordMessage" ,
6
- "setUsers " ,
6
+ "refreshUsers " ,
7
7
"showError" ,
8
8
"logError" ,
9
9
"announce" ,
@@ -50,9 +50,16 @@ var UsersStore = Reflux.createStore({
50
50
this . listenToMany ( Actions ) ;
51
51
this . users = [ ] ;
52
52
} ,
53
- setUsers : function ( users ) {
54
- this . users = users ;
55
- this . trigger ( this . users ) ;
53
+ refreshUsers : function ( ) {
54
+ var $this = this ;
55
+ $ . getJSON ( AppData . channelSubscribersUrl , function ( users ) {
56
+ var usersMap = { } ;
57
+ $ . map ( users , function ( user ) {
58
+ usersMap [ user . userId ] = user ;
59
+ } ) ;
60
+ $this . users = $ . map ( usersMap , function ( user ) { return user ; } ) ;
61
+ $this . trigger ( $this . users ) ;
62
+ } ) ;
56
63
}
57
64
} ) ;
58
65
Original file line number Diff line number Diff line change @@ -47,13 +47,13 @@ var ChatApp = React.createClass({
47
47
Actions . addMessages ( r . results ) ;
48
48
} ) ;
49
49
50
- $this . refreshUsers ( ) ;
50
+ Actions . refreshUsers ( ) ;
51
51
} ,
52
52
onReconnect : function ( ) {
53
53
console . log ( "onReconnect" , { newEventSource : this , errorArgs : arguments } ) ;
54
54
} ,
55
- onJoin : this . refreshUsers ,
56
- onLeave : this . refreshUsers ,
55
+ onJoin : Actions . refreshUsers ,
56
+ onLeave : Actions . refreshUsers ,
57
57
chat : function ( m , e ) {
58
58
Actions . addMessages ( [ m ] ) ;
59
59
}
@@ -66,17 +66,6 @@ var ChatApp = React.createClass({
66
66
}
67
67
} ) ;
68
68
} ,
69
- refreshUsers : function ( ) {
70
- $ . getJSON ( "/event-subscribers?channel=" + this . props . channel , function ( users ) {
71
- usersMap = { } ;
72
- $ . map ( users , function ( user ) {
73
- usersMap [ user . userId ] = user ;
74
- } ) ;
75
- Actions . setUsers ( $ . map ( usersMap , function ( user ) {
76
- return user ;
77
- } ) ) ;
78
- } ) ;
79
- } ,
80
69
onMessagesUpdate : function ( messages ) {
81
70
var $this = this ;
82
71
this . setState ( { messages : messages } , function ( ) {
You can’t perform that action at this time.
0 commit comments