PLT-4202 fix javascript error manage OAuth2 apps (#4039)

* PLT-4202 fix javascript error manage OAuth2 apps

* Fix unit tests
This commit is contained in:
enahum
2016-09-20 12:02:08 -04:00
committed by Christopher Speller
parent 4e3d465210
commit 33e20b874e
4 changed files with 16 additions and 9 deletions
+1
View File
@@ -102,6 +102,7 @@ func getOAuthApps(c *Context, w http.ResponseWriter, r *http.Request) {
if HasPermissionToContext(c, model.PERMISSION_MANAGE_SYSTEM_WIDE_OAUTH) {
ochan = Srv.Store.OAuth().GetApps()
} else {
c.Err = nil
ochan = Srv.Store.OAuth().GetAppByUser(c.Session.UserId)
}
+2 -2
View File
@@ -156,8 +156,8 @@ func TestGetOAuthAppsByUser(t *testing.T) {
utils.Cfg.ServiceSettings.EnableOAuthServiceProvider = true
if _, err := Client.GetOAuthAppsByUser(); err == nil {
t.Fatal("Should have failed. only admin is permitted")
if _, err := Client.GetOAuthAppsByUser(); err != nil {
t.Fatal("Should have passed.")
}
*utils.Cfg.ServiceSettings.EnableOnlyAdminIntegrations = false
+1
View File
@@ -311,6 +311,7 @@ func InitalizeRoles() {
[]string{
PERMISSION_CREATE_DIRECT_CHANNEL.Id,
PERMISSION_PERMANENT_DELETE_USER.Id,
PERMISSION_MANAGE_OAUTH.Id,
},
}
BuiltInRoles[ROLE_SYSTEM_USER.Id] = ROLE_SYSTEM_USER
@@ -71,6 +71,17 @@ export default class InstalledOAuthApps extends React.Component {
);
});
const isSystemAdmin = UserStore.isSystemAdminForCurrentUser();
const config = global.mm_config;
const integrationsEnabled = (config.EnableOAuthServiceProvider === 'true' && (isSystemAdmin || config.EnableOnlyAdminIntegrations !== 'true'));
let props;
if (integrationsEnabled) {
props = {
addLink: '/' + this.props.team.name + '/integrations/oauth2-apps/add',
addText: localizeMessage('installed_oauth_apps.add', 'Add OAuth 2.0 Application')
};
}
return (
<BackstageList
header={
@@ -99,13 +110,6 @@ export default class InstalledOAuthApps extends React.Component {
}}
/>
}
addText={
<FormattedMessage
id='installed_oauth_apps.add'
defaultMessage='Add OAuth 2.0 Application'
/>
}
addLink={'/' + this.props.team.name + '/integrations/oauth2-apps/add'}
emptyText={
<FormattedMessage
id='installed_oauth_apps.empty'
@@ -114,6 +118,7 @@ export default class InstalledOAuthApps extends React.Component {
}
searchPlaceholder={localizeMessage('installed_oauth_apps.search', 'Search OAuth 2.0 Applications')}
loading={this.state.loading}
{...props}
>
{oauthApps}
</BackstageList>