import PopupController from '../../lib/popup-controller' import ContentController from '../../lib/content-controller' import RoomController from '../../lib/room-controller' import ChannelController from '../../lib/channel-controller' /* (1) Channel data gathering ---------------------------------------------------------*/ /* (1) Store route params */ window.initial_link = gs.get.router.history.current.params.link; console.log(`[channel.URL] ${initial_link}`); /* (2) Fetch channel data */ setTimeout(() => { /* (3) Fetch data */ gs.get.channel.dump( require('../../mockup/api-channels.json') ); /* (4) Find if @link matches */ var redirect_id = null; for( let c of gs.get.channel.list ){ if( c.link === window.initial_link ){ redirect_id = c.id; break; } } /* (4) Emulate navigatation from URL */ console.log(`[restore.channel] ${redirect_id}`); gs.get.channel.nav(redirect_id); }, 500); /* (2) Main components ---------------------------------------------------------*/ /* (1) Initialize popup management */ gs.set('popup', new PopupController()); /* (2) Initialize content management */ gs.set('content', new ContentController()); /* (3) Initialize rooms & room menu */ gs.set('room', new RoomController()); /* (4) Initialize channels & channel menu */ gs.set('channel', new ChannelController());