From b0b9b82f7892838ff08e3a3b3b367bb9bd631761 Mon Sep 17 00:00:00 2001
From: sayuri <smr17>
Date: Wed, 14 Aug 2019 11:49:00 -0300
Subject: [PATCH] =?UTF-8?q?avatar=20de=20autores=20em=20cards=20pronto=20-?=
 =?UTF-8?q?=20cards=20recurso=20e=20cole=C3=A7oes?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 src/Components/AreasSubPages.js  |  47 +++++++++++++++++++++++++------
 src/Components/CollectionCard.js |  31 ++++++++++++++------
 src/Components/ResourceCard.js   |  17 +++++++++--
 src/img/default_profile.png      | Bin 0 -> 1334 bytes
 4 files changed, 76 insertions(+), 19 deletions(-)
 create mode 100644 src/img/default_profile.png

diff --git a/src/Components/AreasSubPages.js b/src/Components/AreasSubPages.js
index 96eaec1e..2ccd1a86 100644
--- a/src/Components/AreasSubPages.js
+++ b/src/Components/AreasSubPages.js
@@ -53,10 +53,26 @@ class ReqResources extends Component{
                       /></Col>)}
       </Row>
       <Row>
-      {row2.map(card => <Col md={3} sm={6} key={card.id}><ResourceCard name={card.name} rating={card.score} type={card.object_type} description={card.description} thumbnail={card.thumbnail} author={card.author}/></Col>)}
+      {row2.map(card => <Col md={3} sm={6} key={card.id}>
+        <ResourceCard name={card.name}
+                      rating={card.score}
+                      type={card.object_type}
+                      description={card.description}
+                      thumbnail={card.thumbnail}
+                      author={card.author}
+                      avatar={card.publisher.avatar}
+                      /></Col>)}
       </Row>
       <Row>
-      {row3.map(card => <Col md={3} sm={6} key={card.id}><ResourceCard name={card.name} rating={card.score} type={card.object_type} description={card.description} thumbnail={card.thumbnail} author={card.author}/></Col>)}
+      {row3.map(card => <Col md={3} sm={6} key={card.id}>
+        <ResourceCard name={card.name}
+                      rating={card.score}
+                      type={card.object_type}
+                      description={card.description}
+                      thumbnail={card.thumbnail}
+                      author={card.author}
+                      avatar={card.publisher.avatar}
+                      /></Col>)}
       </Row>
     </Carousel>
     )
@@ -83,23 +99,38 @@ class ReqCollections extends Component{
     return(
       <Carousel showThumbs={false} infiniteLoop={true} showStatus={false}>
       <Row style={{paddingBottom: "5px"}}>
-      {row1.map(card => <Col md={3} sm={6} key={card.id}><CollectionCard name={card.name} rating={card.score} author={card.owner.name} description={card.description} thumbnail={card.items_thumbnails} avatar={card.owner.avatar}/></Col>)}
+      {row1.map(card => <Col md={3} sm={6} key={card.id}>
+        <CollectionCard name={card.name}
+                        rating={card.score}
+                        author={card.owner.name}
+                        description={card.description}
+                        thumbnail={card.items_thumbnails}
+                        avatar={card.owner.avatar}/></Col>)}
       </Row>
       <Row>
-      {row2.map(card => <Col md={3} sm={6} key={card.id}><CollectionCard name={card.name} rating={card.score} author={card.owner.name} description={card.description} thumbnail={card.items_thumbnails} avatar={card.owner.avatar}/></Col>)}
+      {row2.map(card => <Col md={3} sm={6} key={card.id}>
+        <CollectionCard name={card.name}
+                        rating={card.score}
+                        author={card.owner.name}
+                        description={card.description}
+                        thumbnail={card.items_thumbnails}
+                        avatar={card.owner.avatar}/></Col>)}
       </Row>
       <Row>
-      {row3.map(card => <Col md={3} sm={6} key={card.id}><CollectionCard name={card.name} rating={card.score} author={card.owner.name} description={card.description} thumbnail={card.items_thumbnails} avatar={card.owner.avatar}/></Col>)}
+      {row3.map(card => <Col md={3} sm={6} key={card.id}>
+        <CollectionCard name={card.name}
+                        rating={card.score}
+                        author={card.owner.name}
+                        description={card.description}
+                        thumbnail={card.items_thumbnails}
+                        avatar={card.owner.avatar}/></Col>)}
       </Row>
     </Carousel>
     )
   }
 }
 
-
-
 class SubPages extends Component{
-
   areaRender(){
     switch(this.props.banner){
     case "Recursos":
diff --git a/src/Components/CollectionCard.js b/src/Components/CollectionCard.js
index 2f9741ee..f55985e2 100644
--- a/src/Components/CollectionCard.js
+++ b/src/Components/CollectionCard.js
@@ -11,6 +11,7 @@ import FolderIcon from '@material-ui/icons/Folder';
 import FavoriteIcon from '@material-ui/icons/Favorite';
 import StarRatings from 'react-star-ratings';
 import algumaCoisa from "../img/laranja/LIVRO_DIGITAL.jpg";
+import noAvatar from "../img/default_profile.png";
 
 var authorStyle={
   position: "absolute",
@@ -26,10 +27,10 @@ var pictureStyle={
   display: "flex",
   backgroundColor: "white",
   borderRadius: "50%",
-  bottom:"23%",
-  left: "40%",
-  height: "50px",
-  width: "50px",
+  bottom:"7%",
+  left: "37%",
+  height: "70px",
+  width: "70px",
 };
 const slideStyle={
   height: "50px",
@@ -47,6 +48,10 @@ class RenderThumbs extends Component {
   render(){
     if (this.props.thumbs) {
       var array = this.props.thumbs.slice(0,4);
+      if (array.length < 3) {
+        return(
+          <img height="160" src={apiDomain+array[0]}/>)
+      }
     return(
       <Row>
         {array.map(thumb => <Col style={{padding: "0px"}} md={6}><img key={thumb.id} height="80" src={apiDomain+thumb}/> </Col>)}
@@ -60,7 +65,8 @@ class CollectionCard extends Component {
   constructor(props){
     super(props);
     this.state={
-      userStyle: "animatiOff"
+      userStyle: "animatiOff",
+      userAvatar: null,
     };
   }
   onHover(){
@@ -69,19 +75,28 @@ class CollectionCard extends Component {
   onIddle(){
     this.setState({userStyle: "animatiOff"})
   }
+  defAvatar(){
+    if (!this.state.userAvatar && (!this.props.avatar.length)){
+      this.setState({userAvatar: noAvatar});
+    }
+    if (!this.state.userAvatar && (this.props.avatar.length) ) {
+      this.setState({userAvatar:apiDomain+this.props.avatar});
+    }
+  }
   render(){
+    this.defAvatar();
    return (
      <Card onMouseOver={this.onHover.bind(this)} onMouseOut={this.onIddle.bind(this)} >
      <Container style={{padding:"0px", backgroundColor: "#673ab7"}}>
      <div className={this.state.userStyle}>
-      <img style={slideStyle} src={apiDomain+this.props.avatar}/>
+      <img style={slideStyle} src={this.state.userAvatar}/>
       <div style={publisherStyle}>Enviado por: <br/>{this.props.author}</div>
      </div>
      <RenderThumbs thumbs={this.props.thumbnail}/>
      <div style={authorStyle}>
-      <Typography variant="title" color="textSecondary" component="p" >{this.props.name}</Typography>
+      <div style={{textAlign: "center"}}>{this.props.name}</div>
        </div>
-     <img style={pictureStyle} src={apiDomain+this.props.avatar}/>
+     <img style={pictureStyle} src={this.state.userAvatar}/>
 
      </Container>
        <CardContent style={{height: "60%", textAlign: "left", paddingBottom: "0px"}}>
diff --git a/src/Components/ResourceCard.js b/src/Components/ResourceCard.js
index 0ca8a28e..837910b8 100644
--- a/src/Components/ResourceCard.js
+++ b/src/Components/ResourceCard.js
@@ -27,6 +27,7 @@ import {apiDomain} from '../env';
 import AddIcon from '@material-ui/icons/CreateNewFolder';
 import Options from './CardOptions'
 import Video from '@material-ui/icons/OndemandVideo';
+import noAvatar from "../img/default_profile.png";
 
 const types = [{label: "Animação", thumb: animacao}, {label: "Apresentação", thumb: apresentacao},
 {label: "Aplicativo" , thumb: aplicativo}, {label: "Áudio", thumb: audio}, {label: "Vazio", thumb: vazio}, {label: "Imagem", thumb: imagem}, {label: "Gráfico", thumb: grafico}, {label: "Jogo", thumb: jogo}, {label: "Livro", thumb: livro}, {label: "Mapa", thumb: mapa}, {label: "Outros", thumb: outros}, {label: "Software", thumb:software}, {label: "Texto", thumb:texto}, {label: "Vídeo", thumb:video}]
@@ -38,7 +39,7 @@ const slideStyle={
 };
 const publisherStyle={
   color: "white",
-  paddinLeft: "20px",
+  paddinLeft: "30px",
   fontSize: "15px"
 
 };
@@ -49,6 +50,7 @@ class ResourceCard extends Component {
     this.state={
       thumbnail: null,
       userStyle: "animatiOff",
+      userAvatar: null,
     };
 
   }
@@ -67,13 +69,22 @@ class ResourceCard extends Component {
   onIddle(){
     this.setState({userStyle: "animatiOff"})
   }
+  defAvatar(){
+    if (!this.state.userAvatar && (!this.props.avatar.length)){
+      this.setState({userAvatar: noAvatar});
+    }
+    if (!this.state.userAvatar && (this.props.avatar) ) {
+      this.setState({userAvatar:apiDomain+this.props.avatar});
+    }
+  }
   render(){
-  this.renderType(this.props.type)
+  this.renderType(this.props.type);
+  this.defAvatar();
    return (
      <Card onMouseOver={this.onHover.bind(this)} onMouseOut={this.onIddle.bind(this)} >
        <Container style={{padding:"0px", height:"175px", backgroundColor: "#ff7f00"}}>
          <div className={this.state.userStyle}>
-          <img style={slideStyle} src={apiDomain+this.props.avatar}/>
+          <img style={slideStyle} src={this.state.userAvatar}/>
           <div style={publisherStyle}>Enviado por: <br/>{this.props.author}</div>
          </div>
          <img  src={this.state.thumbnail} style={{height:"100%"}}alt="thumbnail do recurso"/>
diff --git a/src/img/default_profile.png b/src/img/default_profile.png
new file mode 100644
index 0000000000000000000000000000000000000000..912e38e4b255ad6cc124f625dc950eddeb9121bd
GIT binary patch
literal 1334
zcmeAS@N?(olHy`uVBq!ia0y~yU}ykg4kiW$2A`O3a~K#HBuiW)N`mv#O3D+9QW+dm
z@{>{(JaZG%Q-e|yQz{EjrrIztu-x!;aSW-r^=7VZwo#x!>vh#e-W?M}q9Zh10y<o|
z{{NTvNS=78p@~s<+lGLE0!PL7o_hIqy@jRaY3t?%>u64T^Ty`;xxe$GD=RBGHEcsU
z8W=bllo*&6a3m}j>pogzcii~&rkgq2zLw|Z<t@_adi>+pFDZW}4Tle<vzA?cS+e=&
zlV69sySr69v$jgD5ICUNbl-ik;Hlpe|Ff4ax|!3&!sxO49yiZ628AR1?T7C>{rTu*
zk+n5y*(`Qv2DQm26AT0@0(akCcl|ZX2St+&1-454H>3r-8yI;_8TVA}zy4bB2giQ#
z#uc~Ut}+f_Tky2jn#Y9kMb&){W?zO6b(OO7Vq%pIE>u;o_?q<Pi*Chz-ff9zDj5%$
z+uPgUe%W(aV(p~`3=9kR-+v!1J@L?zJ(qp=F-i0vKk8>JqBMi$u%A4`zRMvWeu{NG
z@oqC=IQs0|vdTpa0x7D`rTGNT2<LG+Jv`5S#`}gxAcNN0Ifcqk8FoC4`OT29<jI>3
znTDS=aurIR!A}_^W>#!S(_);%&cG5jwejD<yQv$Wd2t-b+RC+O(u{)(BW8Z$ZkTb<
ziJ@frUL9!}wkfN?foxUFaO``Bw$vG^15yX16c%fA)qLEyWaYz`Q#JSds5We7oS@RF
z&!FNvmH9!RZq>uulV>kITsciAzDI;LVD;6W@2v^*K6rY)Y@BiP^RB38p3E60Qfb<Z
zJk6Erd<<`+H{aaC$<TIkekfPys+|W78GV8{`>iGy&h<NfNb>IauR>}o_e8NXELwYw
z{ePIkmMFEYFEdKE=jZ3^R>-Gm@C8ia&-(tm_O9*gj^DdV1MNc_m6%K4v%5_yU16}{
z!QTUZyQCN<*zD%IE-g7(`jq&V2%UNJ=AF7XN$mK?yLac#o#Xo~Xj-q^;!o!`E;^i?
zE0brK9y2ZVKtRswh6d*A(sSB2%{IL#8*BgRjz-&#g1t{A9r%T|`~A<Z7s~s3_T-Q2
zKd0=Hc>B3%XUy8LihnJP%fnY+UA<b{rq*+|v_ZKEqW}X41+X|Uh%gE;xH7Of2r@7R
zuzYZxefC-H%A%by>#o0EyT7cmGIDL$-SdSqvv1Wr=WV!|GcEPz?>WYQ>Yg<9C_hYF
zwOC`*Hr-J91HVNpKkV?CB%x54%_gRI=Q87iId*gXdSf0;Q0Wxo31rAiy~rxr{O|^=
z#=}-0P6l?JSFgN^Ja@V<bQr&!y~kVP`%IU&zE5432QeIYIr-#~-8O~0Z@;bD8+R=4
zm=fcHCH=>fcig+L^gq3oq0Mb^-~*1u5)66zv)u##{SaHUqPFZflSZ=iLVc~2-H#tK
z_}M);!LpQ@@xXhHAJ5<X%9ptH_FJNFNgjiQ8*lsJ;8zbtZUkp-jjDV;tBAp&(tV}-
z&E@OMIRrJYcmA$rT+qI_^!l8B!IhU^zOn53C*82SQh?#b%^0SJS|O%Cj0}SE_r5>+
zB->oX$ym0XYd6D`s+iX`TYe|pDr4ZV?(grHyZb9CW(CXl@86>jUle0_k#y)ck9BLi
zvcV6_)xTsNW-V(z*sxc2<HuX#3_QO+`5t0t_<BV3`Qr1LT5*gUman()TCwK(>$vsD
zcgj{SbbME~dun?-dsX~IN00Z~T<4yPs-03|U{YY{f)y|g3>w(ETAu$|Bp5m*blQ3{
TzMo=XU|{fc^>bP0l+XkK5;0a-

literal 0
HcmV?d00001

-- 
GitLab