1
0
mirror of https://github.com/ascribe/onion.git synced 2024-06-30 21:52:08 +02:00
onion/js/components/ascribe_accordion_list/accordion_list_item.js

54 lines
2.1 KiB
JavaScript
Raw Normal View History

'use strict';
import React from 'react';
2015-07-01 15:28:48 +02:00
import Router from 'react-router';
import requests from '../../utils/requests';
import { getLangText } from '../../utils/lang_utils';
let AccordionListItem = React.createClass({
2015-07-01 15:28:48 +02:00
mixins: [Router.Navigation],
propTypes: {
className: React.PropTypes.string,
content: React.PropTypes.object,
children: React.PropTypes.object
},
2015-07-01 15:28:48 +02:00
handleClick(event){
requests.get('piece_first_edition_id', {'piece_id': this.props.content.id})
.then((res) => this.transitionTo('edition', {editionId: res.bitcoin_id}));
2015-07-01 15:28:48 +02:00
console.log(event.target);
},
render() {
return (
<div className="row">
<div className={this.props.className}>
<div className="wrapper">
2015-07-01 13:54:58 +02:00
<div className="col-xs-4 col-sm-3 col-md-2 col-lg-2 clear-paddings">
2015-07-01 15:28:48 +02:00
<div className="thumbnail-wrapper" onClick={this.handleClick}>
2015-07-01 13:54:58 +02:00
<img src={this.props.content.thumbnail} />
</div>
</div>
2015-07-01 13:54:58 +02:00
<div className="col-xs-8 col-sm-9 col-md-9 col-lg-9 col-md-offset-1 col-lg-offset-1 accordion-list-item-header">
2015-07-01 15:28:48 +02:00
<h1 onClick={this.handleClick}>{this.props.content.title}</h1>
<h3>{getLangText('by %s', this.props.content.artist_name)}</h3>
2015-07-01 13:54:58 +02:00
<div>
<span>{this.props.content.date_created.split('-')[0]}</span>
<a href={this.props.content.license_type.url} target="_blank" className="pull-right">
{this.props.content.license_type.code} license
</a>
</div>
</div>
<span style={{'clear': 'both'}}></span>
</div>
</div>
{this.props.children}
</div>
);
}
});
export default AccordionListItem;