[Glitch] Ensure link thumbnails are not stretched to super low quality

Port front-end changes from c36b9cc5a6 to glitch-soc
This commit is contained in:
Thibaut Girka 2018-09-10 17:51:00 +02:00 committed by ThibG
parent 49eaf72faf
commit cc58265216

View file

@ -59,6 +59,8 @@ export default class Card extends React.PureComponent {
renderLink () { renderLink () {
const { card, maxDescription } = this.props; const { card, maxDescription } = this.props;
const { width } = this.state;
const horizontal = card.get('width') > card.get('height') && (card.get('width') + 100 >= width);
let image = ''; let image = '';
let provider = card.get('provider_name'); let provider = card.get('provider_name');
@ -75,17 +77,15 @@ export default class Card extends React.PureComponent {
provider = decodeIDNA(getHostname(card.get('url'))); provider = decodeIDNA(getHostname(card.get('url')));
} }
const className = classnames('status-card', { const className = classnames('status-card', { horizontal });
'horizontal': card.get('width') > card.get('height'),
});
return ( return (
<a href={card.get('url')} className={className} target='_blank' rel='noopener'> <a href={card.get('url')} className={className} target='_blank' rel='noopener' ref={this.setRef}>
{image} {image}
<div className='status-card__content'> <div className='status-card__content'>
<strong className='status-card__title' title={card.get('title')}>{card.get('title')}</strong> <strong className='status-card__title' title={card.get('title')}>{card.get('title')}</strong>
<p className='status-card__description'>{(card.get('description') || '').substring(0, maxDescription)}</p> {!horizontal && <p className='status-card__description'>{(card.get('description') || '').substring(0, maxDescription)}</p>}
<span className='status-card__host'>{provider}</span> <span className='status-card__host'>{provider}</span>
</div> </div>
</a> </a>