Files
mattermost/webapp/components/create_team/create_team_controller.jsx
Joram Wilander abd0466a42 PLT-3466 E10: Add announcement bar feature (#6509)
* E10 - Add announcement bar feature

* Updates per feedback

* Add component tests and snapshots

* Update snapshots

* Updating color picker UI (#6543)

* Add class to body tag when banner is not dismissable and clean up localstorage items when banner changes

* Fixing links (#6544)

* Updating UI for fixed error bar (#6552)

* Truncating text on fixed banner (#6561)

* Plt 3466 - Error bar link states (#6577)

* Updating error bar hover state

* Updating error bar link states
2017-06-05 12:49:38 -04:00

97 lines
3.0 KiB
JavaScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
import AnnouncementBar from 'components/announcement_bar';
import ChannelStore from 'stores/channel_store.jsx';
import TeamStore from 'stores/team_store.jsx';
import {FormattedMessage} from 'react-intl';
import {browserHistory, Link} from 'react-router/es6';
import PropTypes from 'prop-types';
import React from 'react';
export default class CreateTeamController extends React.Component {
constructor(props) {
super(props);
this.submit = this.submit.bind(this);
this.updateParent = this.updateParent.bind(this);
const state = {};
state.team = {};
state.wizard = 'display_name';
this.state = state;
}
submit() {
// todo fill in
}
componentDidMount() {
browserHistory.push('/create_team/display_name');
}
updateParent(state) {
this.setState(state);
browserHistory.push('/create_team/' + state.wizard);
}
render() {
let description = null;
if (global.window.mm_license.IsLicensed === 'true' && global.window.mm_license.CustomBrand === 'true' && global.window.mm_config.EnableCustomBrand === 'true') {
description = global.window.mm_config.CustomDescriptionText;
} else {
description = (
<FormattedMessage
id='web.root.signup_info'
defaultMessage='All team communication in one place, searchable and accessible anywhere'
/>
);
}
let url = '/select_team';
const team = TeamStore.getCurrent();
const channel = ChannelStore.getCurrent();
if (team) {
url = `/${team.name}`;
if (channel) {
url += `/channels/${channel.name}`;
}
}
return (
<div>
<AnnouncementBar/>
<div className='signup-header'>
<Link to={url}>
<span className='fa fa-chevron-left'/>
<FormattedMessage
id='web.header.back'
/>
</Link>
</div>
<div className='col-sm-12'>
<div className='signup-team__container'>
<h1>{global.window.mm_config.SiteName}</h1>
<h4 className='color--light'>
{description}
</h4>
<div className='signup__content'>
{React.cloneElement(this.props.children, {
state: this.state,
updateParent: this.updateParent
})}
</div>
</div>
</div>
</div>
);
}
}
CreateTeamController.propTypes = {
children: PropTypes.node
};