From e0c750079f13e50925c2565b40beeef845711c5b Mon Sep 17 00:00:00 2001
From: rlacko <rlacko@sch.bme.hu>
Date: Sun, 2 Feb 2020 23:08:16 +0100
Subject: [PATCH] Responsive Mentors page

---
 src/components/pages/Mentors.js | 128 ++++++++++++++++++++++++++------
 1 file changed, 106 insertions(+), 22 deletions(-)

diff --git a/src/components/pages/Mentors.js b/src/components/pages/Mentors.js
index 791cce7..73dcb60 100644
--- a/src/components/pages/Mentors.js
+++ b/src/components/pages/Mentors.js
@@ -1,5 +1,5 @@
 import React, { Component } from 'react'
-  import { Container, Segment, Item, Divider, Header, Image, Card, Label, Icon } from 'semantic-ui-react'
+  import { Container, Segment, Item, Header, Card, Label, Icon, Responsive, Image } from 'semantic-ui-react'
 import { connect } from 'react-redux'
 import { getMentors } from '../../actions/mentors'
 
@@ -8,7 +8,7 @@ class Mentors extends Component {
     this.props.getMentors();
   }
 
-  renderMentors() {
+  renderMentorsNormal() {
     return this.props.mentors.map( (item, index) => (
       <Card style={{maxWidth: '100%', minWidth: '100%'}}>
         <Card.Content style={{padding: '0'}}>
@@ -36,32 +36,116 @@ class Mentors extends Component {
     ));
   }
 
-  renderMultiLine(text) {
-    const strings = text.split('\n');
-    return strings.map(string => <p key={Math.random()}>{string}</p>);
+  renderMentorsMobile() {
+    return this.props.mentors.map( (item, index) => (
+      // <Card style={{maxWidth: '100%', minWidth: '100%'}}>
+      //   <Card.Content style={{padding: '0'}}>
+      //       <Item.Group>
+      //           <Item>
+      //             <Item.Image size='medium' src={item.image} />
+      //             <Item.Content style={{padding: '1rem'}}>
+      //               <Item.Header>{item.name}</Item.Header>
+      //               <Item.Extra>
+      //                 <Label><Icon name='mail'></Icon>{item.email}</Label>
+      //               </Item.Extra>
+      //             </Item.Content>
+      //           </Item>
+      //           <Item>
+      //             <Item.Content style={{padding: '1rem'}}>
+      //                 <Item.Description>
+      //                     <p>{item.text}</p>
+      //                 </Item.Description>
+      //                 <Item.Extra>
+      //                   <Label><Icon name='mail'></Icon>{item.email}</Label>
+      //                 </Item.Extra>
+      //             </Item.Content>
+      //           </Item>
+      //       </Item.Group>
+      //   </Card.Content>
+      // </Card>
+      <Card key={item.id}>
+        <Image src={item.image} wrapped ui={false}/>
+        <Card.Content>
+          <Card.Header>{item.name}</Card.Header>
+          <Card.Description>
+            {item.text}
+          </Card.Description>
+        </Card.Content>
+        <Card.Content extra>
+          <Label><Icon name='mail'></Icon>{item.email}</Label>
+        </Card.Content>
+      </Card>
+    ));
   }
 
   render() {
     return (
       <div>
-        <Segment inverted textAlign='center' vertical>
-          <Container>
-            <Header
-              as='h1'
-              content='Mentorok'
-              inverted
-              style={{
-                fontSize: '3em',
-                fontWeight: 'normal',
-                marginBottom: 0,
-                marginTop: '0.5em',
-              }}
-            />
+        <Responsive minWidth={768}>
+          <Segment inverted textAlign='center' vertical>
+            <Container>
+              <Header
+                as='h1'
+                content='Mentorok'
+                inverted
+                style={{
+                  fontSize: '3em',
+                  fontWeight: 'normal',
+                  marginBottom: 0,
+                  marginTop: '0.5em',
+                }}
+              />
+            </Container>
+          </Segment>
+          <Container style={{paddingTop: '2em', paddingBottom: '5em'}}> 
+            {this.renderMentorsNormal()}
+          </Container>
+        </Responsive>
+        <Responsive minWidth={551} maxWidth={767}>
+          <Segment inverted textAlign='center' vertical>
+            <Container>
+              <Header
+                as='h1'
+                content='Mentorok'
+                inverted
+                style={{
+                  fontSize: '3em',
+                  fontWeight: 'normal',
+                  marginBottom: 0,
+                  marginTop: '0.5em',
+                }}
+              />
+            </Container>
+          </Segment>
+          <Container style={{paddingTop: '2em', paddingBottom: '5em'}}> 
+            <Card.Group itemsPerRow={2}>
+              {this.renderMentorsMobile()}
+            </Card.Group>
+          </Container>
+        </Responsive>
+
+        <Responsive maxWidth={550}>
+          <Segment inverted textAlign='center' vertical>
+            <Container>
+              <Header
+                as='h1'
+                content='Mentorok'
+                inverted
+                style={{
+                  fontSize: '3em',
+                  fontWeight: 'normal',
+                  marginBottom: 0,
+                  marginTop: '0.5em',
+                }}
+              />
+            </Container>
+          </Segment>
+          <Container style={{paddingTop: '2em', paddingBottom: '5em'}}> 
+            <Card.Group itemsPerRow={1}>
+              {this.renderMentorsMobile()}
+            </Card.Group>
           </Container>
-        </Segment>
-        <Container style={{paddingTop: '2em', paddingBottom: '5em'}}> 
-          {this.renderMentors()}
-        </Container>
+        </Responsive>
       </div>
     );
   }
-- 
GitLab