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