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

46 lines
1.4 KiB
JavaScript
Raw Normal View History

import React from 'react';
import AltContainer from 'alt/AltContainer';
import PieceListStore from '../stores/piece_list_store';
import PieceListActions from '../actions/piece_list_actions';
2015-05-20 15:22:29 +02:00
2015-05-21 15:14:05 +02:00
import Table from './ascribe_table/table';
import TableItemImg from './ascribe_table/table_item_img';
import TableItemText from './ascribe_table/table_item_text';
import TableColumnModel from '../models/table_column_model';
import Pagination from './pagination'
2015-05-20 16:44:45 +02:00
2015-05-19 17:16:01 +02:00
let PieceList = React.createClass({
// FIXME: this might be useless
2015-05-21 12:12:25 +02:00
getInitialState() {
return PieceListStore.getState();
},
componentDidMount() {
let page = this.props.query.page || this.state.page;
PieceListActions.fetchList(page, this.state.pageSize, this.state.search,
this.state.orderBy, this.state.orderAsc);
},
render() {
let columnList = [
new TableColumnModel('thumbnail', '', TableItemImg, 2, false),
new TableColumnModel('artist_name', 'Artist', TableItemText, 4, true),
new TableColumnModel('title', 'Title', TableItemText, 4, true)
];
2015-05-20 19:19:57 +02:00
return (
2015-05-20 19:19:57 +02:00
<AltContainer store={PieceListStore} actions={PieceListActions}>
<Table columnList={columnList} />
<Pagination currentPage={this.props.query.page} />
</AltContainer>
);
}
});
export default PieceList;