1
0
mirror of https://github.com/ascribe/onion.git synced 2024-11-15 01:25:17 +01:00

Merge branch 'AD-1149-implement-lumenus-the-lumen-mark' of github.com:ascribe/onion into AD-1149-implement-lumenus-the-lumen-mark

This commit is contained in:
diminator 2015-12-02 21:44:12 +01:00
commit dafdf97678
3 changed files with 33 additions and 13 deletions

View File

@ -91,7 +91,7 @@ let MarketSubmitButton = React.createClass({
render() {
const { availableAcls, currentUser, className, editions, handleSuccess } = this.props;
const { whitelabel } = this.state;
const { whitelabel: { name: whitelabelName = 'Market', user: whitelabelAdminEmail } } = this.state;
const { solePieceId, canSubmit } = this.getAggregateEditionDetails();
const message = getAclFormMessage({
aclName: 'acl_consign',
@ -103,14 +103,14 @@ let MarketSubmitButton = React.createClass({
const triggerButton = (
<button className={classNames('btn', 'btn-default', 'btn-sm', className)}>
{getLangText('CONSIGN TO %s', whitelabel.name.toUpperCase())}
{getLangText('CONSIGN TO %s', whitelabelName.toUpperCase())}
</button>
);
const consignForm = (
<AclFormFactory
action='acl_consign'
autoFocusProperty='message'
email={whitelabel.user}
email={whitelabelAdminEmail}
message={message}
labels={{
'message': getLangText('Message (also suggest a sales price if necessary)')
@ -148,7 +148,7 @@ let MarketSubmitButton = React.createClass({
<ModalWrapper
trigger={triggerButton}
handleSuccess={handleSuccess}
title={getLangText('Consign artwork to %s', whitelabel.name)}>
title={getLangText('Consign artwork to %s', whitelabelName)}>
{consignForm}
</ModalWrapper>
</AclProxy>

View File

@ -49,19 +49,25 @@ let MarketPieceList = React.createClass({
},
render() {
const { currentUser, whitelabel } = this.state;
const {
currentUser: { email: userEmail },
whitelabel: {
name: whitelabelName = 'Market',
user: whitelabelAdminEmail
} } = this.state;
let filterParams = null;
let canLoadPieceList = false;
if (currentUser.email && whitelabel.user) {
if (userEmail && whitelabelAdminEmail) {
canLoadPieceList = true;
const isUserAdmin = currentUser.email === whitelabel.user;
const isUserAdmin = userEmail === whitelabelAdminEmail;
filterParams = [{
label: getLangText('Show works I can'),
items: [{
key: isUserAdmin ? 'acl_transfer' : 'acl_consign',
label: getLangText(isUserAdmin ? 'transfer' : 'consign to %s', whitelabel.name),
label: getLangText(isUserAdmin ? 'transfer' : 'consign to %s', whitelabelName),
defaultValue: true
}]
}];

View File

@ -11,11 +11,13 @@ import MarketAdditionalDataForm from './market_forms/market_additional_data_form
import Property from '../../../../ascribe_forms/property';
import RegisterPieceForm from '../../../../ascribe_forms/form_register_piece';
import UserStore from '../../../../../stores/user_store';
import UserActions from '../../../../../actions/user_actions';
import PieceActions from '../../../../../actions/piece_actions';
import PieceListStore from '../../../../../stores/piece_list_store';
import PieceListActions from '../../../../../actions/piece_list_actions';
import UserStore from '../../../../../stores/user_store';
import UserActions from '../../../../../actions/user_actions';
import WhitelabelActions from '../../../../../actions/whitelabel_actions';
import WhitelabelStore from '../../../../../stores/whitelabel_store';
import SlidesContainer from '../../../../ascribe_slides_container/slides_container';
@ -32,8 +34,9 @@ let MarketRegisterPiece = React.createClass({
getInitialState(){
return mergeOptions(
UserStore.getState(),
PieceListStore.getState(),
UserStore.getState(),
WhitelabelStore.getState(),
{
step: 0
});
@ -42,7 +45,10 @@ let MarketRegisterPiece = React.createClass({
componentDidMount() {
PieceListStore.listen(this.onChange);
UserStore.listen(this.onChange);
WhitelabelStore.listen(this.onChange);
UserActions.fetchCurrentUser();
WhitelabelActions.fetchWhitelabel();
// Reset the piece store to make sure that we don't display old data
// if the user repeatedly registers works
@ -52,6 +58,7 @@ let MarketRegisterPiece = React.createClass({
componentWillUnmount() {
PieceListStore.unlisten(this.onChange);
UserStore.unlisten(this.onChange);
WhitelabelStore.unlisten(this.onChange);
},
onChange(state) {
@ -107,6 +114,13 @@ let MarketRegisterPiece = React.createClass({
},
render() {
const {
isFineUploaderActive,
step,
whitelabel: {
name: whitelabelName = 'Market'
} } = this.state;
setDocumentTitle(getLangText('Register a new piece'));
return (
@ -122,9 +136,9 @@ let MarketRegisterPiece = React.createClass({
<Row className="no-margin">
<Col xs={12} sm={10} md={8} smOffset={1} mdOffset={2}>
<RegisterPieceForm
disabled={this.state.step > 0}
disabled={step > 0}
enableLocalHashing={false}
headerMessage={getLangText('Consign to Market')}
headerMessage={getLangText('Consign to %s', whitelabelName)}
submitMessage={getLangText('Proceed to additional details')}
isFineUploaderActive={true}
handleSuccess={this.handleRegisterSuccess}