2018-03-22 13:57:03 +00:00
|
|
|
export class ContentController{
|
|
|
|
|
|
|
|
/* (1) Construct default attributes
|
|
|
|
*
|
|
|
|
---------------------------------------------------------*/
|
|
|
|
|
2018-03-22 14:28:34 +00:00
|
|
|
constructor(){}
|
2018-03-22 13:57:03 +00:00
|
|
|
|
2018-03-22 14:28:34 +00:00
|
|
|
/* (2) Channel bindings
|
|
|
|
*
|
|
|
|
---------------------------------------------------------*/
|
|
|
|
get cid(){ return gs.get.channel.current; }
|
|
|
|
get cbuf(){ return gs.get.channel.buffer; }
|
2018-03-22 13:57:03 +00:00
|
|
|
|
|
|
|
|
2018-03-22 14:28:34 +00:00
|
|
|
/* (3) Room ID binding
|
2018-03-22 13:57:03 +00:00
|
|
|
*
|
|
|
|
---------------------------------------------------------*/
|
|
|
|
get rid(){ return gs.get.room.text.current; }
|
|
|
|
|
|
|
|
|
2018-03-22 14:28:34 +00:00
|
|
|
/* (4) Room buffer binding
|
|
|
|
*
|
|
|
|
---------------------------------------------------------*/
|
|
|
|
get rbuf(){
|
|
|
|
|
|
|
|
/* (1) Ignore: if no rooms empty */
|
|
|
|
if( this.cbuf.room == null || this.cbuf.room.length === 0 )
|
|
|
|
return {};
|
|
|
|
|
|
|
|
/* (2) Search for current room */
|
|
|
|
for( let r of this.cbuf.room ){
|
|
|
|
|
|
|
|
// Return if room found //
|
|
|
|
if( r.rid === this.rid )
|
|
|
|
return r;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/* (3) If nothing found */
|
|
|
|
return {};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
get messages(){ return this.rbuf.messages; }
|
|
|
|
get members(){ return this.rbuf.members; }
|
|
|
|
|
2018-03-22 15:03:09 +00:00
|
|
|
|
|
|
|
/* (5) User getter
|
|
|
|
*
|
|
|
|
* @user_id<int> User id
|
|
|
|
*
|
|
|
|
* @return user<array> User data
|
|
|
|
*
|
|
|
|
---------------------------------------------------------*/
|
|
|
|
user(user_id=null){
|
|
|
|
|
|
|
|
/* (1) Error: if invalid user_id */
|
|
|
|
if( isNaN(user_id) )
|
|
|
|
return {};
|
|
|
|
|
|
|
|
/* (2) Error: unknown user */
|
|
|
|
if( this.cbuf.users == null || this.cbuf.users.length < 1 )
|
|
|
|
return {};
|
|
|
|
|
|
|
|
/* (3) return user data */
|
|
|
|
for( let u of this.cbuf.users )
|
|
|
|
if( u.uid === user_id )
|
|
|
|
return u;
|
|
|
|
|
|
|
|
/* (4) Error */
|
|
|
|
return {};
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2018-03-22 13:57:03 +00:00
|
|
|
}
|