5 Commits 5fe3545881 ... e442b9c607

Author SHA1 Message Date
  Marina Yakovenko e442b9c607 router 5 years ago
  Marina Yakovenko 2acaf0223e router 5 years ago
  Marina Yakovenko 7bf5177174 router 5 years ago
  Marina Yakovenko ffdff20ef3 Merge branch 'dev' into Marina 5 years ago
  Marina Yakovenko 053971cab8 Merge branch 'dev' of http://gitlab.a-level.com.ua/Entony/FEA_12_TRIATHLON into Marina 5 years ago

+ 8 - 5
src/actions/logout.js

@@ -23,13 +23,16 @@ export const getLogoutUserSubmit = () => {
         dispatch(getLogoutUser())
 
         promise.then(
-            data => data.json().then(data => dispatch(getLogoutUserSuccess(data))),
+            data => data.json().then(data => {
+                localStorage.removeItem('user');
+                dispatch(getLogoutUserSuccess(data))
+        }),
             error => dispatch(getLogoutUserError(error))
         )
     }
 }
 
-export const clearLocalStorage = () => {
-    localStorage.removeItem('user');
-    document.location.reload(true);
-}
+// export const clearLocalStorage = () => {
+//     localStorage.removeItem('user');
+//     document.location.reload(true);
+// }

+ 1 - 1
src/components/adminMenu/adminMenu.js

@@ -29,7 +29,7 @@ class AdminMenu extends Component {
                         onClick={this.clickEventHandler}
                     >
                         <h2 className="menu-text">{el.text.toUpperCase()}</h2>
-                        {/* <Link to={el.path} className = "menu-text">{el.text.toUpperCase()}</Link> */}
+                        {/* <Link to={el.path} className = "menu-text">{el.text.toUpperCase()}</Link>  */}
                     </div>
                 )}
 

+ 1 - 1
src/components/login-form/LoginForm.js

@@ -8,7 +8,7 @@ let LoginForm = props => {
 
     const submit = value => {
         postLoginSubmit(value);
-        history.push('/profile');
+        // history.push('/profile');
     };
 
     return (

+ 6 - 0
src/components/sidebar/Sidebar.js

@@ -36,7 +36,13 @@ const siteMenu = [
 ];
 
 export class Sidebar extends React.Component {
+    
+
+    logoutHandler = () => {
+        this.props.getLogoutUserSubmit()
+    }
     render() {
+        console.log('ssdsd',this.props)
 	    const { showSidebar, showSidebarFlag, getLogoutUserSubmit } = this.props;
         return (
             <div className={ !showSidebarFlag ? 'menu close' : 'menu' }>

+ 2 - 2
src/conteiners/home/Home.js

@@ -102,7 +102,7 @@ export default class Home extends React.Component {
                     <div className="events-content">
                         <h4>Last Events</h4>
 
-                        <div className="events-list">
+                        {/* <div className="events-list">
                             {
                                 events.reverse().map( (event,ind) => ind < 6 && <EventInfoShort
                                     key={event._id}
@@ -114,7 +114,7 @@ export default class Home extends React.Component {
                                     imgSrc={event.mainBannerPicture} />
                                 )
                             }
-                        </div>
+                        </div> */}
                     </div>
                 </div>
 

+ 2 - 2
src/conteiners/login/Login.js

@@ -11,11 +11,11 @@ import LoginForm from '../../components/login-form/LoginForm';
 export class Login extends React.Component {
     render() {
         const { postLoginSubmit } = this.props;
-        const history = this.props.history;
+        // const history = this.props.history;
         //console.log(this.props);
         return (
             <div>
-                <LoginForm postLoginSubmit={postLoginSubmit} history={ history }/>
+                <LoginForm postLoginSubmit={postLoginSubmit}/>
                 <p className="form-quest">Don't have an account? <Link to="/registration">Sign up now</Link></p>
             </div>
         )

+ 2 - 2
src/reducers/logout.js

@@ -1,5 +1,5 @@
 import * as types from "../actionTypes/actionTypes";
-import { clearLocalStorage } from "../actions/logout";
+// import { clearLocalStorage } from "../actions/logout";
 
 const initialState = {
     logOut: false
@@ -13,7 +13,7 @@ export default (state = initialState, action) => {
 
         case types.GET_LOGOUT_USER_SUCCESS: {
             //console.log('logout',action.payload.logOut);
-            clearLocalStorage();
+            // clearLocalStorage();
             
             return state
         }

+ 50 - 105
src/router.js

@@ -31,7 +31,7 @@ const route = [
 		path: "/",
 		protected: false,
 		component: Home,
-		events: true
+		// events: true
 	},
 	{
 		id: 2,
@@ -121,116 +121,61 @@ const route = [
 	}
 ];
 
-// export const Router = withRouter(({ history }) => {
-
-// 	const [events, setEvents] = useState([]);
-
-// 	useEffect(() => {
-// 		fetch("https://api-marathon.herokuapp.com/api/v1/event")
-// 			.then(response => response.json())
-// 			.then(json => setEvents(json));
-// 	}, []);
-
-// 	console.log('events', events)
-
-// 	useEffect(() => {
-// 		const user = localStorage.getItem("user");
-// 		if (user) {
-// 			const userRole = JSON.parse(user).role;
-// 			if (userRole === 'admin') {
-// 				history.push("/admin");
-//             }
-//             if (userRole === 'user') {
-// 				history.push("/profile");
-// 			}
-// 		}
-// 	}, [history]);
-
-// 	return (
-// 		<div className="container">
-// 			{console.log('events', events)}
-// 			<Switch>
-// 				{route.map(el => (
-// 					<PrivateRoute
-// 						protectedRoute={el.protected}
-// 						key={el.id}
-// 						exact={el.exact}
-// 						path={el.path}
-//                         component={el.component}
-//                         events = {el.events && events}
-// 					/>
-// 				))}
+const Router = withRouter(({ history, user }) => {
+
+	useEffect(() => {
+		const user = localStorage.getItem("user");
+		if (user) {
+			const userRole = JSON.parse(user).role;
+			if (userRole === 'admin') {
+				history.push("/admin");
+            }
+            if (userRole === 'user') {
+				history.push("/profile");
+			}
+		}
+	}, [user]);
+
+	console.log('user', user)
+
+	return (
+		<div className="container">
+			{/* {console.log('events', events)}  */}
+			<Switch>
+				{route.map(el => (
+					<PrivateRoute
+						protectedRoute={el.protected}
+						key={el.id}
+						exact={el.exact}
+						path={el.path}
+                        component={el.component}
+                        // events = {el.events && events}
+					/>
+				))}
 				
-// 				{
-// 					events.map(event =>
-// 						<Route exact
-// 							path={`/events/${event._id}`}
-// 							key={event._id}
-// 							render={ props => (<EventCard event={event} />) }
-// 						/>                            
-// 					)
-// 				}
-// 			</Switch>
-// 		</div>
-// 	);
-// });
-
-export class Router extends React.Component {
-    componentDidMount() {
-        this.props.getAllEvents();
-    }
-
-    render() {
-        const { events } = this.props;
-		return(
-			<div className="container">
-			    <Switch>
-                    <Route exact path="/" render={ props => (
-                        <Home events={events} />
-                    )} />
-
-                    <Route exact path="/events" render={ props => (
-                        <Events events={events} />
-                    )} />
-
-                    <Route exact path="/result" component={Result} />
-                    <Route exact path="/gallery" component={Gallery} />
-                    <Route exact path="/reviews" component={Reviews} />
-
-                    {
-                        events.map(event =>
-                            <Route exact
-                                path={`/events/${event._id}`}
-                                key={event._id}
-                                render={ props => (<EventCard event={event} />) }
-                            />                            
-                        )
-                    }
-
-                    <Route exact path="/login" component={Login} />
-                    <Route exact path="/registration" component={RegistrationPage} />
-
-                    <Route exact path="/profile" component={Profile} />
-                    
-			           
-			        <Route exact path = '/admin' component = {AdminMainPage} />
-			        <Route exact path = '/admin/add_new_event' component = {AdminAddEventPage} />
-			        <Route exact path = '/admin/photogalary' component = {AdminAddPhotogalarytPage} />
-					<Route exact path = '/admin/my_events' component = {AdminMyEventsPage} />
-			            
-			    </Switch>
-			</div>
-		)
-	}
-}
+				{/* {
+					events.map(event =>
+						<Route exact
+							path={`/events/${event._id}`}
+							key={event._id}
+							render={ props => (<EventCard event={event} />) }
+						/>                            
+					)
+				} */}
+			</Switch>
+		</div>
+	);
+});
 
 const mapStateToProps = state => {
+	console.log('state',state)
     return {
-        events: state.getEvents.events
+		// events: state.getEvents.events,
+		user: state.login.user
     };
 };
 
 export default connect(
-    mapStateToProps,
-    { getAllEvents }
+    mapStateToProps
+    // { getAllEvents }
 )(Router);