summaryrefslogtreecommitdiffstats
path: root/web/react
diff options
context:
space:
mode:
authorChristopher Speller <crspeller@gmail.com>2016-03-14 07:17:31 -0400
committerChristopher Speller <crspeller@gmail.com>2016-03-14 07:17:31 -0400
commitbf7ae0711743926cfbb031675cc3320d7a942465 (patch)
tree44ad955ae2dba1991c8b7b7986d90c1a79cdfb65 /web/react
parent975159b52ac6bf0ee6b2d5b73d2391b2e0c6e165 (diff)
parent72ed22d7421f50bc686e5adaea2f4a416fcbad27 (diff)
downloadchat-bf7ae0711743926cfbb031675cc3320d7a942465.tar.gz
chat-bf7ae0711743926cfbb031675cc3320d7a942465.tar.bz2
chat-bf7ae0711743926cfbb031675cc3320d7a942465.zip
Merge branch 'release-2.1'
Diffstat (limited to 'web/react')
-rw-r--r--web/react/components/login.jsx34
-rw-r--r--web/react/components/post_body_additional_content.jsx20
-rw-r--r--web/react/components/textbox.jsx2
-rw-r--r--web/react/components/user_settings/custom_theme_chooser.jsx2
-rw-r--r--web/react/stores/socket_store.jsx14
-rw-r--r--web/react/utils/constants.jsx36
6 files changed, 76 insertions, 32 deletions
diff --git a/web/react/components/login.jsx b/web/react/components/login.jsx
index 30c8ffe4f..d3ee35082 100644
--- a/web/react/components/login.jsx
+++ b/web/react/components/login.jsx
@@ -49,6 +49,8 @@ export default class Login extends React.Component {
const teamDisplayName = currentTeam.display_name;
const teamName = currentTeam.name;
+ const ldapEnabled = global.window.mm_config.EnableLdap === 'true';
+ const usernameSigninEnabled = global.window.mm_config.EnableSignInWithUsername === 'true';
let loginMessage = [];
if (global.window.mm_config.EnableSignUpWithGitLab === 'true') {
@@ -209,6 +211,22 @@ export default class Login extends React.Component {
);
}
+ if (ldapEnabled && (loginMessage.length > 0 || emailSignup || usernameSigninEnabled)) {
+ ldapLogin = (
+ <div>
+ <div className='or__container'>
+ <FormattedMessage
+ id='login.or'
+ defaultMessage='or'
+ />
+ </div>
+ <LoginLdap
+ teamName={teamName}
+ />
+ </div>
+ );
+ }
+
let usernameLogin = null;
if (global.window.mm_config.EnableSignInWithUsername === 'true') {
usernameLogin = (
@@ -218,6 +236,22 @@ export default class Login extends React.Component {
);
}
+ if (usernameSigninEnabled && (loginMessage.length > 0 || emailSignup || ldapEnabled)) {
+ usernameLogin = (
+ <div>
+ <div className='or__container'>
+ <FormattedMessage
+ id='login.or'
+ defaultMessage='or'
+ />
+ </div>
+ <LoginUsername
+ teamName={teamName}
+ />
+ </div>
+ );
+ }
+
return (
<div>
<div className='signup-header'>
diff --git a/web/react/components/post_body_additional_content.jsx b/web/react/components/post_body_additional_content.jsx
index c2a928f3b..70b3c8dbf 100644
--- a/web/react/components/post_body_additional_content.jsx
+++ b/web/react/components/post_body_additional_content.jsx
@@ -112,24 +112,32 @@ export default class PostBodyAdditionalContent extends React.Component {
}
render() {
- var generateEmbed = this.generateEmbed();
+ const generateEmbed = this.generateEmbed();
+
if (generateEmbed) {
- return (
- <div>
+ let toggle;
+ if (Utils.isFeatureEnabled(Constants.PRE_RELEASE_FEATURES.EMBED_TOGGLE)) {
+ toggle = (
<a className='post__embed-visibility'
data-expanded={this.state.embedVisible}
aria-label='Toggle Embed Visibility'
onClick={this.toggleEmbedVisibility}
- >
- </a>
+ />
+ );
+ }
+
+ return (
+ <div>
+ {toggle}
<div className='post__embed-container'
hidden={!this.state.embedVisible}
>
{generateEmbed}
</div>
</div>
- );
+ );
}
+
return null;
}
}
diff --git a/web/react/components/textbox.jsx b/web/react/components/textbox.jsx
index c8c0c071e..d4eb60676 100644
--- a/web/react/components/textbox.jsx
+++ b/web/react/components/textbox.jsx
@@ -61,7 +61,7 @@ export default class Textbox extends React.Component {
onRecievedError() {
const errorCount = ErrorStore.getConnectionErrorCount();
- if (errorCount > 0) {
+ if (errorCount > 1) {
this.setState({connection: 'bad-connection'});
} else {
this.setState({connection: ''});
diff --git a/web/react/components/user_settings/custom_theme_chooser.jsx b/web/react/components/user_settings/custom_theme_chooser.jsx
index 1e724bb6e..4ee9fd0e2 100644
--- a/web/react/components/user_settings/custom_theme_chooser.jsx
+++ b/web/react/components/user_settings/custom_theme_chooser.jsx
@@ -253,6 +253,8 @@ class CustomThemeChooser extends React.Component {
</div>
</div>
);
+
+ colors += theme[element.id] + ',';
} else if (element.group === 'sidebarElements') {
sidebarElements.push(
<div
diff --git a/web/react/stores/socket_store.jsx b/web/react/stores/socket_store.jsx
index ad24a04cd..181de53d7 100644
--- a/web/react/stores/socket_store.jsx
+++ b/web/react/stores/socket_store.jsx
@@ -31,6 +31,7 @@ class SocketStoreClass extends EventEmitter {
this.close = this.close.bind(this);
this.failCount = 0;
+ this.isInitialize = false;
this.translations = this.getDefaultTranslations();
@@ -54,24 +55,23 @@ class SocketStoreClass extends EventEmitter {
if (this.failCount === 0) {
console.log('websocket connecting to ' + connUrl); //eslint-disable-line no-console
- if (ErrorStore.getConnectionErrorCount() > 0) {
- ErrorStore.setConnectionErrorCount(0);
- ErrorStore.emitChange();
- }
}
+
conn = new WebSocket(connUrl);
conn.onopen = () => {
if (this.failCount > 0) {
console.log('websocket re-established connection'); //eslint-disable-line no-console
+ AsyncClient.getChannels();
+ AsyncClient.getPosts(ChannelStore.getCurrentId());
+ }
+ if (this.isInitialize) {
ErrorStore.clearLastError();
ErrorStore.emitChange();
-
- AsyncClient.getChannels();
- AsyncClient.getPosts(ChannelStore.getCurrentId());
}
+ this.isInitialize = true;
this.failCount = 0;
};
diff --git a/web/react/utils/constants.jsx b/web/react/utils/constants.jsx
index 2cff4dbed..3de562b7b 100644
--- a/web/react/utils/constants.jsx
+++ b/web/react/utils/constants.jsx
@@ -270,7 +270,7 @@ export default {
buttonColor: '#FFFFFF',
mentionHighlightBg: '#984063',
mentionHighlightLink: '#A4FFEB',
- codeTheme: 'solarized_dark'
+ codeTheme: 'solarized-dark'
},
windows10: {
type: 'Windows Dark',
@@ -374,21 +374,6 @@ export default {
uiName: 'New Message Separator'
},
{
- group: 'linkAndButtonElements',
- id: 'linkColor',
- uiName: 'Link Color'
- },
- {
- group: 'linkAndButtonElements',
- id: 'buttonBg',
- uiName: 'Button BG'
- },
- {
- group: 'linkAndButtonElements',
- id: 'buttonColor',
- uiName: 'Button Text'
- },
- {
group: 'centerChannelElements',
id: 'mentionHighlightBg',
uiName: 'Mention Highlight BG'
@@ -404,11 +389,11 @@ export default {
uiName: 'Code Theme',
themes: [
{
- id: 'solarized_dark',
+ id: 'solarized-dark',
uiName: 'Solarized Dark'
},
{
- id: 'solarized_light',
+ id: 'solarized-light',
uiName: 'Solarized Light'
},
{
@@ -420,6 +405,21 @@ export default {
uiName: 'Monokai'
}
]
+ },
+ {
+ group: 'linkAndButtonElements',
+ id: 'linkColor',
+ uiName: 'Link Color'
+ },
+ {
+ group: 'linkAndButtonElements',
+ id: 'buttonBg',
+ uiName: 'Button BG'
+ },
+ {
+ group: 'linkAndButtonElements',
+ id: 'buttonColor',
+ uiName: 'Button Text'
}
],
DEFAULT_CODE_THEME: 'github',