mirror of
https://github.com/twisterarmy/twister-react.git
synced 2025-01-11 23:47:55 +00:00
93 lines
2.4 KiB
JavaScript
93 lines
2.4 KiB
JavaScript
|
|
|
|
/*
|
|
var Router = require('react-router')
|
|
, RouteHandler = Router.RouteHandler
|
|
, Route = Router.Route;
|
|
|
|
|
|
var ReactRouterBootstrap = require('react-router-bootstrap')
|
|
, NavItemLink = ReactRouterBootstrap.NavItemLink
|
|
, ButtonLink = ReactRouterBootstrap.ButtonLink
|
|
, ListGroupItemLink = ReactRouterBootstrap.ListGroupItemLink;
|
|
*/
|
|
|
|
var ReactBootstrap = require('react-bootstrap')
|
|
, NavItem = ReactBootstrap.NavItem
|
|
, Nav = ReactBootstrap.Nav
|
|
, ListGroup = ReactBootstrap.ListGroup
|
|
, Panel = ReactBootstrap.Panel
|
|
|
|
var React = require('react');
|
|
var Router = require('react-router');
|
|
var { Route, DefaultRoute, RouteHandler, Link } = Router;
|
|
|
|
var Timeline = require("./Timeline.js");
|
|
|
|
App = React.createClass({displayName: "App",
|
|
|
|
contextTypes: {
|
|
router: React.PropTypes.func
|
|
},
|
|
|
|
getHandlerKey: function () {
|
|
var childDepth = 1; // assuming App is top-level route
|
|
var { router } = this.context;
|
|
//console.log(router.getCurrentParams())
|
|
if ( router.getCurrentRoutes()[childDepth] ) {
|
|
var key = router.getCurrentRoutes()[childDepth].name;
|
|
var id = JSON.stringify(router.getCurrentParams());
|
|
if (id) { key += id; }
|
|
return key;
|
|
} else {return "none"}
|
|
},
|
|
|
|
render: function() {
|
|
return (
|
|
React.createElement("div", null,
|
|
React.createElement(Nav, {bsStyle: "pills"},
|
|
React.createElement(NavItem, {href: "#timeline/tschaul"},
|
|
"tschaul"
|
|
),
|
|
React.createElement(NavItem, {href: "#timeline/timbuktu"},
|
|
"timbuktu"
|
|
),
|
|
React.createElement(NavItem, {href: "#timeline/pampalulu"},
|
|
"pampalulu"
|
|
)
|
|
),
|
|
React.createElement(RouteHandler, {pollInterval: "60000", key: this.getHandlerKey()})
|
|
)
|
|
);
|
|
}
|
|
});
|
|
|
|
|
|
var routes = (
|
|
React.createElement(Route, {handler: App, path: "/"},
|
|
React.createElement(Route, {name: "timeline", path: "timeline/:timelineUser", handler: Timeline})
|
|
)
|
|
);
|
|
|
|
|
|
var intitializeApp = function(res){
|
|
|
|
Router.run(routes, function (Handler) {
|
|
React.render(React.createElement(Handler, null), document.getElementById('content'));
|
|
});
|
|
|
|
};
|
|
|
|
///////// LOAD TWISTER FROM CACHE AND INITIALIZE
|
|
|
|
|
|
Twister.init({
|
|
host: 'http://user:pwd@localhost:28332',
|
|
errorfunc: function(error){console.log(this,error)}
|
|
});
|
|
|
|
loadCache();
|
|
|
|
setInterval(saveCache,300000);
|
|
|
|
Twister.loadServerAccounts(intitializeApp); |