diff options
author | =Corey Hulen <corey@hulen.com> | 2015-09-24 12:12:27 -0700 |
---|---|---|
committer | =Corey Hulen <corey@hulen.com> | 2015-09-24 12:12:27 -0700 |
commit | 8ad9a88bda0b6dc3f24945efdbe8b3aa4dcc4360 (patch) | |
tree | b961f87c1bd9a2428eaee8b5ebd8c9fd1baf0fcc | |
parent | a374419ad5c5f35174ee6285b4eaa57ef82235bd (diff) | |
parent | caa157a3774ee86f0e7003ef4debc49bd88cb9f0 (diff) | |
download | chat-8ad9a88bda0b6dc3f24945efdbe8b3aa4dcc4360.tar.gz chat-8ad9a88bda0b6dc3f24945efdbe8b3aa4dcc4360.tar.bz2 chat-8ad9a88bda0b6dc3f24945efdbe8b3aa4dcc4360.zip |
Fixing merge
-rw-r--r-- | api/import.go | 4 | ||||
-rw-r--r-- | config/config.json | 1 | ||||
-rw-r--r-- | docker/dev/config_docker.json | 1 | ||||
-rw-r--r-- | docker/local/config_docker.json | 1 | ||||
-rw-r--r-- | model/config.go | 1 | ||||
-rw-r--r-- | web/react/components/admin_console/service_settings.jsx | 70 | ||||
-rw-r--r-- | web/react/components/admin_console/team_settings.jsx | 22 | ||||
-rw-r--r-- | web/react/components/team_settings_modal.jsx | 4 | ||||
-rw-r--r-- | web/react/components/user_settings/manage_incoming_hooks.jsx | 65 | ||||
-rw-r--r-- | web/react/components/view_image.jsx | 8 | ||||
-rw-r--r-- | web/react/utils/emoticons.jsx | 7 | ||||
-rw-r--r-- | web/sass-files/sass/partials/_base.scss | 4 | ||||
-rw-r--r-- | web/sass-files/sass/partials/_modal.scss | 16 | ||||
-rw-r--r-- | web/sass-files/sass/partials/_settings.scss | 15 | ||||
-rw-r--r-- | web/web.go | 13 |
15 files changed, 111 insertions, 121 deletions
diff --git a/api/import.go b/api/import.go index e3f314d20..c465825b4 100644 --- a/api/import.go +++ b/api/import.go @@ -6,7 +6,6 @@ package api import ( l4g "code.google.com/p/log4go" "github.com/mattermost/platform/model" - "github.com/mattermost/platform/utils" ) // @@ -24,9 +23,6 @@ func ImportPost(post *model.Post) { func ImportUser(user *model.User) *model.User { user.MakeNonNil() - if len(user.Props["theme"]) == 0 { - user.AddProp("theme", utils.Cfg.TeamSettings.DefaultThemeColor) - } if result := <-Srv.Store.User().Save(user); result.Err != nil { l4g.Error("Error saving user. err=%v", result.Err) diff --git a/config/config.json b/config/config.json index aa92ccf4e..60e197154 100644 --- a/config/config.json +++ b/config/config.json @@ -11,7 +11,6 @@ "TeamSettings": { "SiteName": "Mattermost", "MaxUsersPerTeam": 50, - "DefaultThemeColor": "#2389D7", "EnableTeamCreation": true, "EnableUserCreation": true, "RestrictCreationToDomains": "" diff --git a/docker/dev/config_docker.json b/docker/dev/config_docker.json index 16a4007fa..06fee9bd5 100644 --- a/docker/dev/config_docker.json +++ b/docker/dev/config_docker.json @@ -11,7 +11,6 @@ "TeamSettings": { "SiteName": "Mattermost", "MaxUsersPerTeam": 50, - "DefaultThemeColor": "#2389D7", "EnableTeamCreation": true, "EnableUserCreation": true, "RestrictCreationToDomains": "" diff --git a/docker/local/config_docker.json b/docker/local/config_docker.json index 16a4007fa..06fee9bd5 100644 --- a/docker/local/config_docker.json +++ b/docker/local/config_docker.json @@ -11,7 +11,6 @@ "TeamSettings": { "SiteName": "Mattermost", "MaxUsersPerTeam": 50, - "DefaultThemeColor": "#2389D7", "EnableTeamCreation": true, "EnableUserCreation": true, "RestrictCreationToDomains": "" diff --git a/model/config.go b/model/config.go index 69f2127b2..31c2b16dc 100644 --- a/model/config.go +++ b/model/config.go @@ -112,7 +112,6 @@ type PrivacySettings struct { type TeamSettings struct { SiteName string MaxUsersPerTeam int - DefaultThemeColor string EnableTeamCreation bool EnableUserCreation bool RestrictCreationToDomains string diff --git a/web/react/components/admin_console/service_settings.jsx b/web/react/components/admin_console/service_settings.jsx index 1bb1f053b..4b09fefc2 100644 --- a/web/react/components/admin_console/service_settings.jsx +++ b/web/react/components/admin_console/service_settings.jsx @@ -35,7 +35,7 @@ export default class ServiceSettings extends React.Component { config.ServiceSettings.SegmentDeveloperKey = React.findDOMNode(this.refs.SegmentDeveloperKey).value.trim(); config.ServiceSettings.GoogleDeveloperKey = React.findDOMNode(this.refs.GoogleDeveloperKey).value.trim(); - config.ServiceSettings.EnableOAuthServiceProvider = React.findDOMNode(this.refs.EnableOAuthServiceProvider).checked; + //config.ServiceSettings.EnableOAuthServiceProvider = React.findDOMNode(this.refs.EnableOAuthServiceProvider).checked; config.ServiceSettings.EnableIncomingWebhooks = React.findDOMNode(this.refs.EnableIncomingWebhooks).checked; config.ServiceSettings.EnableTesting = React.findDOMNode(this.refs.EnableTesting).checked; @@ -173,42 +173,9 @@ export default class ServiceSettings extends React.Component { <div className='form-group'> <label className='control-label col-sm-4' - htmlFor='EnableOAuthServiceProvider' - > - {'Enable OAuth Service Provider: '} - </label> - <div className='col-sm-8'> - <label className='radio-inline'> - <input - type='radio' - name='EnableOAuthServiceProvider' - value='true' - ref='EnableOAuthServiceProvider' - defaultChecked={this.props.config.ServiceSettings.EnableOAuthServiceProvider} - onChange={this.handleChange} - /> - {'true'} - </label> - <label className='radio-inline'> - <input - type='radio' - name='EnableOAuthServiceProvider' - value='false' - defaultChecked={!this.props.config.ServiceSettings.EnableOAuthServiceProvider} - onChange={this.handleChange} - /> - {'false'} - </label> - <p className='help-text'>{'When enabled Mattermost will act as an Oauth2 Provider. Changing this will require a server restart before taking effect.'}</p> - </div> - </div> - - <div className='form-group'> - <label - className='control-label col-sm-4' htmlFor='EnableIncomingWebhooks' > - {'EnableIncomingWebhooks: '} + {'Enable Incoming Webhooks: '} </label> <div className='col-sm-8'> <label className='radio-inline'> @@ -291,6 +258,39 @@ export default class ServiceSettings extends React.Component { } } +// <div className='form-group'> +// <label +// className='control-label col-sm-4' +// htmlFor='EnableOAuthServiceProvider' +// > +// {'Enable OAuth Service Provider: '} +// </label> +// <div className='col-sm-8'> +// <label className='radio-inline'> +// <input +// type='radio' +// name='EnableOAuthServiceProvider' +// value='true' +// ref='EnableOAuthServiceProvider' +// defaultChecked={this.props.config.ServiceSettings.EnableOAuthServiceProvider} +// onChange={this.handleChange} +// /> +// {'true'} +// </label> +// <label className='radio-inline'> +// <input +// type='radio' +// name='EnableOAuthServiceProvider' +// value='false' +// defaultChecked={!this.props.config.ServiceSettings.EnableOAuthServiceProvider} +// onChange={this.handleChange} +// /> +// {'false'} +// </label> +// <p className='help-text'>{'When enabled Mattermost will act as an Oauth2 Provider. Changing this will require a server restart before taking effect.'}</p> +// </div> +// </div> + ServiceSettings.propTypes = { config: React.PropTypes.object }; diff --git a/web/react/components/admin_console/team_settings.jsx b/web/react/components/admin_console/team_settings.jsx index fefc0e936..3e0890f98 100644 --- a/web/react/components/admin_console/team_settings.jsx +++ b/web/react/components/admin_console/team_settings.jsx @@ -28,7 +28,6 @@ export default class TeamSettings extends React.Component { var config = this.props.config; config.TeamSettings.SiteName = React.findDOMNode(this.refs.SiteName).value.trim(); - config.TeamSettings.DefaultThemeColor = React.findDOMNode(this.refs.DefaultThemeColor).value.trim(); config.TeamSettings.RestrictCreationToDomains = React.findDOMNode(this.refs.RestrictCreationToDomains).value.trim(); config.TeamSettings.EnableTeamCreation = React.findDOMNode(this.refs.EnableTeamCreation).checked; config.TeamSettings.EnableUserCreation = React.findDOMNode(this.refs.EnableUserCreation).checked; @@ -125,27 +124,6 @@ export default class TeamSettings extends React.Component { <div className='form-group'> <label className='control-label col-sm-4' - htmlFor='DefaultThemeColor' - > - {'Default Theme Color:'} - </label> - <div className='col-sm-8'> - <input - type='text' - className='form-control' - id='DefaultThemeColor' - ref='DefaultThemeColor' - placeholder='Ex "#2389D7"' - defaultValue={this.props.config.TeamSettings.DefaultThemeColor} - onChange={this.handleChange} - /> - <p className='help-text'>{'Default theme color for team sites.'}</p> - </div> - </div> - - <div className='form-group'> - <label - className='control-label col-sm-4' htmlFor='EnableTeamCreation' > {'Enable Team Creation: '} diff --git a/web/react/components/team_settings_modal.jsx b/web/react/components/team_settings_modal.jsx index a5a2b711c..a96aadccf 100644 --- a/web/react/components/team_settings_modal.jsx +++ b/web/react/components/team_settings_modal.jsx @@ -36,7 +36,9 @@ export default class TeamSettingsModal extends React.Component { const tabs = []; tabs.push({name: 'general', uiName: 'General', icon: 'glyphicon glyphicon-cog'}); tabs.push({name: 'import', uiName: 'Import', icon: 'glyphicon glyphicon-upload'}); - tabs.push({name: 'export', uiName: 'Export', icon: 'glyphicon glyphicon-download'}); + + // To enable export uncomment this line + //tabs.push({name: 'export', uiName: 'Export', icon: 'glyphicon glyphicon-download'}); return ( <div diff --git a/web/react/components/user_settings/manage_incoming_hooks.jsx b/web/react/components/user_settings/manage_incoming_hooks.jsx index df089a403..12c041c7f 100644 --- a/web/react/components/user_settings/manage_incoming_hooks.jsx +++ b/web/react/components/user_settings/manage_incoming_hooks.jsx @@ -107,23 +107,23 @@ export default class ManageIncomingHooks extends React.Component { this.state.hooks.forEach((hook) => { const c = ChannelStore.get(hook.channel_id); hooks.push( - <div> - <div className='divider-light'></div> - <span> - <strong>{'URL: '}</strong>{Utils.getWindowLocationOrigin() + '/hooks/' + hook.id} - </span> - <br/> - <span> + <div className='font--small'> + <div className='padding-top x2 divider-light'></div> + <div className='padding-top x2'> + <strong>{'URL: '}</strong><span className='word-break--all'>{Utils.getWindowLocationOrigin() + '/hooks/' + hook.id}</span> + </div> + <div className='padding-top'> <strong>{'Channel: '}</strong>{c.name} - </span> - <br/> - <a - className={'btn btn-sm btn-primary'} - href='#' - onClick={this.removeHook.bind(this, hook.id)} - > - {'Remove'} - </a> + </div> + <div className='padding-top'> + <a + className={'text-danger'} + href='#' + onClick={this.removeHook.bind(this, hook.id)} + > + {'Remove'} + </a> + </div> </div> ); }); @@ -134,41 +134,38 @@ export default class ManageIncomingHooks extends React.Component { } else if (hooks.length > 0) { displayHooks = hooks; } else { - displayHooks = <label>{'None'}</label>; + displayHooks = <label>{' None'}</label>; } const existingHooks = ( - <div> - <label className='control-label'>{'Existing incoming webhooks'}</label> - <br/> + <div className='padding-top x2'> + <label className='control-label padding-top x2'>{'Existing incoming webhooks'}</label> {displayHooks} </div> ); return ( - <div - key='addIncomingHook' - className='form-group' - > + <div key='addIncomingHook'> <label className='control-label'>{'Add a new incoming webhook'}</label> - <br/> - <div> + <div className='padding-top'> <select ref='channelName' + className='form-control' value={this.state.channelId} onChange={this.updateChannelId} > {options} </select> - <br/> {serverError} - <a - className={'btn btn-sm btn-primary' + disableButton} - href='#' - onClick={this.addNewHook} - > - {'Add'} - </a> + <div className='padding-top'> + <a + className={'btn btn-sm btn-primary' + disableButton} + href='#' + onClick={this.addNewHook} + > + {'Add'} + </a> + </div> </div> {existingHooks} </div> diff --git a/web/react/components/view_image.jsx b/web/react/components/view_image.jsx index 8db63e196..e645878c1 100644 --- a/web/react/components/view_image.jsx +++ b/web/react/components/view_image.jsx @@ -40,7 +40,9 @@ export default class ViewImageModal extends React.Component { }; } handleNext(e) { - e.stopPropagation(); + if (e) { + e.stopPropagation(); + } var id = this.state.imgId + 1; if (id > this.props.filenames.length - 1) { id = 0; @@ -49,7 +51,9 @@ export default class ViewImageModal extends React.Component { this.loadImage(id); } handlePrev(e) { - e.stopPropagation(); + if (e) { + e.stopPropagation(); + } var id = this.state.imgId - 1; if (id < 0) { id = this.props.filenames.length - 1; diff --git a/web/react/utils/emoticons.jsx b/web/react/utils/emoticons.jsx index 7210201ff..a7c837199 100644 --- a/web/react/utils/emoticons.jsx +++ b/web/react/utils/emoticons.jsx @@ -5,15 +5,14 @@ const emoticonPatterns = { smile: /:-?\)/g, // :) open_mouth: /:o/gi, // :o scream: /:-o/gi, // :-o - smirk: /[:;]-?]/g, // :] - grinning: /[:;]-?d/gi, // :D + smirk: /:-?]/g, // :] + grinning: /:-?d/gi, // :D stuck_out_tongue_closed_eyes: /x-d/gi, // x-d - stuck_out_tongue_winking_eye: /[:;]-?p/gi, // ;p + stuck_out_tongue_winking_eye: /:-?p/gi, // :p rage: /:-?[\[@]/g, // :@ frowning: /:-?\(/g, // :( sob: /:['’]-?\(|:'\(/g, // :`( kissing_heart: /:-?\*/g, // :* - wink: /;-?\)/g, // ;) pensive: /:-?\//g, // :/ confounded: /:-?s/gi, // :s flushed: /:-?\|/g, // :| diff --git a/web/sass-files/sass/partials/_base.scss b/web/sass-files/sass/partials/_base.scss index 50946ed83..87d9b8200 100644 --- a/web/sass-files/sass/partials/_base.scss +++ b/web/sass-files/sass/partials/_base.scss @@ -44,6 +44,10 @@ body { } } +.word-break--all { + word-break: break-all; +} + a { word-break: break-word; color: $primary-color; diff --git a/web/sass-files/sass/partials/_modal.scss b/web/sass-files/sass/partials/_modal.scss index b0d5a0f7d..e4e8b20b6 100644 --- a/web/sass-files/sass/partials/_modal.scss +++ b/web/sass-files/sass/partials/_modal.scss @@ -11,6 +11,9 @@ } a, a:focus, a:hover { color: #2389D7; + &.text-danger { + color: #a94442; + } } .custom-textarea { color: inherit; @@ -20,11 +23,14 @@ box-shadow: none; } } - .btn.btn-primary { - background: #4285f4; - &:hover, &:focus, &:active { - background: $primary-color--hover; - color: #fff; + .btn { + font-size: 13px; + &.btn-primary { + background: #4285f4; + &:hover, &:focus, &:active { + background: $primary-color--hover; + color: #fff; + } } } .info__label { diff --git a/web/sass-files/sass/partials/_settings.scss b/web/sass-files/sass/partials/_settings.scss index 8dcd8f35c..3aab05d70 100644 --- a/web/sass-files/sass/partials/_settings.scss +++ b/web/sass-files/sass/partials/_settings.scss @@ -32,6 +32,7 @@ } .settings-table { display: table; + table-layout: fixed; width: 100%; > div { display: table-cell; @@ -125,6 +126,10 @@ } } + .font--small { + font-size: 13px; + } + .section-describe { color:grey; } @@ -155,8 +160,18 @@ .has-error { color: #a94442; } + .padding-top { + padding-top: 7px; + &.x2 { + padding-top: 14px; + } + } .control-label { color: #555; + font-weight: 600; + &.text-left { + text-align: left; + } } hr { border-color: #ccc; diff --git a/web/web.go b/web/web.go index 3b36f3d56..1e435d47f 100644 --- a/web/web.go +++ b/web/web.go @@ -145,14 +145,8 @@ func root(c *api.Context, w http.ResponseWriter, r *http.Request) { return } - if len(c.Session.UserId) == 0 { - page := NewHtmlTemplatePage("signup_team", "Signup") - page.Render(c, w) - } else { - page := NewHtmlTemplatePage("home", "Home") - page.Props["TeamURL"] = c.GetTeamURL() - page.Render(c, w) - } + page := NewHtmlTemplatePage("signup_team", "Signup") + page.Render(c, w) } func signup(c *api.Context, w http.ResponseWriter, r *http.Request) { @@ -175,8 +169,7 @@ func login(c *api.Context, w http.ResponseWriter, r *http.Request) { var team *model.Team if tResult := <-api.Srv.Store.Team().GetByName(teamName); tResult.Err != nil { l4g.Error("Couldn't find team name=%v, teamURL=%v, err=%v", teamName, c.GetTeamURL(), tResult.Err.Message) - // This should probably do somthing nicer - http.Redirect(w, r, "http://"+r.Host, http.StatusTemporaryRedirect) + http.Redirect(w, r, api.GetProtocol(r)+"://"+r.Host, http.StatusTemporaryRedirect) return } else { team = tResult.Data.(*model.Team) |