Blame view

imports/startup/client/routes.js 2.06 KB
c42d4eeac   themeteorchef   handful of changes
1
  /* eslint-disable max-len */
2b1ad7917   tmcdeveloper   wip moving to Met...
2
3
  import React from 'react';
  import { render } from 'react-dom';
76dd62c7b   tmcdeveloper   fix eslint error ...
4
  import { Router, Route, IndexRoute, browserHistory } from 'react-router';
cac7cbc73   tmcdeveloper   4.1.0 release
5
  import { Meteor } from 'meteor/meteor';
c42d4eeac   themeteorchef   handful of changes
6
7
8
9
10
11
12
13
14
15
16
  import App from '../../ui/layouts/App.js';
  import Documents from '../../ui/pages/Documents.js';
  import NewDocument from '../../ui/pages/NewDocument.js';
  import EditDocument from '../../ui/containers/EditDocument.js';
  import ViewDocument from '../../ui/containers/ViewDocument.js';
  import Index from '../../ui/pages/Index.js';
  import Login from '../../ui/pages/Login.js';
  import NotFound from '../../ui/pages/NotFound.js';
  import RecoverPassword from '../../ui/pages/RecoverPassword.js';
  import ResetPassword from '../../ui/pages/ResetPassword.js';
  import Signup from '../../ui/pages/Signup.js';
2b1ad7917   tmcdeveloper   wip moving to Met...
17

f0c912bf1   tmcdeveloper   add method tests ...
18
  const requireAuth = (nextState, replace) => {
cac7cbc73   tmcdeveloper   4.1.0 release
19
    if (!Meteor.loggingIn() && !Meteor.userId()) {
2b1ad7917   tmcdeveloper   wip moving to Met...
20
21
      replace({
        pathname: '/login',
cac7cbc73   tmcdeveloper   4.1.0 release
22
        state: { nextPathname: nextState.location.pathname },
2b1ad7917   tmcdeveloper   wip moving to Met...
23
24
25
      });
    }
  };
f0c912bf1   tmcdeveloper   add method tests ...
26
  Meteor.startup(() => {
2b1ad7917   tmcdeveloper   wip moving to Met...
27
28
29
    render(
      <Router history={ browserHistory }>
        <Route path="/" component={ App }>
7df77f0fa   tmcdeveloper   finish wiring up ...
30
          <IndexRoute name="index" component={ Index } onEnter={ requireAuth } />
d1f05315d   tmcdeveloper   wip adding API an...
31
          <Route name="documents" path="/documents" component={ Documents } onEnter={ requireAuth } />
c42d4eeac   themeteorchef   handful of changes
32
33
          <Route name="newDocument" path="/documents/new" component={ NewDocument } onEnter={ requireAuth } />
          <Route name="editDocument" path="/documents/:_id/edit" component={ EditDocument } onEnter={ requireAuth } />
d41fb1b0e   themeteorchef   correct name of v...
34
          <Route name="viewDocument" path="/documents/:_id" component={ ViewDocument } onEnter={ requireAuth } />
7df77f0fa   tmcdeveloper   finish wiring up ...
35
36
37
38
          <Route name="login" path="/login" component={ Login } />
          <Route name="recover-password" path="/recover-password" component={ RecoverPassword } />
          <Route name="reset-password" path="/reset-password/:token" component={ ResetPassword } />
          <Route name="signup" path="/signup" component={ Signup } />
c23f29749   tmcdeveloper   add not found rou...
39
          <Route path="*" component={ NotFound } />
2b1ad7917   tmcdeveloper   wip moving to Met...
40
41
        </Route>
      </Router>,
f0c912bf1   tmcdeveloper   add method tests ...
42
      document.getElementById('react-root')
2b1ad7917   tmcdeveloper   wip moving to Met...
43
44
    );
  });