diff --git a/command/command.go b/command/command.go
index 22f3158..b1b0697 100644
--- a/command/command.go
+++ b/command/command.go
@@ -36,7 +36,7 @@ const (
MaxRoleAdditionalContentLength = 1000 * 1000 // 1M of chars
MinMemberUserNameLength = 3
- MaxMemberUserNameLength = 30
+ MaxMemberUserNameLength = 40
MinMemberFullNameLength = 3
MaxMemberFullNameLength = 100
MaxMemberEmailLength = 100
@@ -52,7 +52,7 @@ const (
MaxRoleAssignmentFocusLength = 30
)
-var UserNameRegexp = regexp.MustCompile(`^[a-zA-Z][a-zA-Z0-9]*([-]?[a-zA-Z0-9]+)+$`)
+var UserNameRegexp = regexp.MustCompile(`^[a-zA-Z][a-zA-Z0-9]*([-||.||_]?[a-zA-Z0-9]+)+$`)
var (
ErrValidation = errors.New("validation error")
diff --git a/command/command_test.go b/command/command_test.go
index 252b679..23dffee 100644
--- a/command/command_test.go
+++ b/command/command_test.go
@@ -10,6 +10,10 @@ var (
"foo1",
"foo-1",
"foo-1-bar",
+ "foo.bar",
+ "foo_bar",
+ "foo.bar_hey",
+ "foo_bar.hello",
"f12oo-bar33",
}
badUserNames = []string{
@@ -18,10 +22,11 @@ var (
"-foo-bar",
"foo-bar-",
"foo--bar",
- "foo.bar",
- "foo_bar",
"foo#bar",
"1foobar",
+ "1foobar",
+ "_foobar",
+ ".foobar",
}
)
diff --git a/saga/memberrequestsaga.go b/saga/memberrequestsaga.go
index 4e2cef1..ea49bf4 100644
--- a/saga/memberrequestsaga.go
+++ b/saga/memberrequestsaga.go
@@ -275,7 +275,7 @@ func (s *MemberRequestSaga) HandleEvent(event *eventstore.StoredEvent) ([]ep.Eve
}
- if err := s.completeMemberChange(correlationID, causationID, memberChangeID, fmt.Sprintf("error updating member: %v, err")); err != nil {
+ if err := s.completeMemberChange(correlationID, causationID, memberChangeID, fmt.Sprintf("error updating member: %v", err)); err != nil {
return nil, err
}
return nil, err
diff --git a/vendor/github.com/blevesearch/bleve/search.go b/vendor/github.com/blevesearch/bleve/search.go
index c2ebafb..5f48f93 100644
--- a/vendor/github.com/blevesearch/bleve/search.go
+++ b/vendor/github.com/blevesearch/bleve/search.go
@@ -354,7 +354,7 @@ func (r *SearchRequest) UnmarshalJSON(input []byte) error {
// for the Query, using default values for all
// other search parameters.
func NewSearchRequest(q query.Query) *SearchRequest {
- return NewSearchRequestOptions(q, 10, 0, false)
+ return NewSearchRequestOptions(q, 100, 0, false)
}
// NewSearchRequestOptions creates a new SearchRequest
diff --git a/web/src/app/containers/Base.js b/web/src/app/containers/Base.js
index 9b24dcf..ae6217f 100644
--- a/web/src/app/containers/Base.js
+++ b/web/src/app/containers/Base.js
@@ -1,7 +1,7 @@
import React, { PropTypes } from 'react'
import { graphql, compose } from 'react-apollo'
import { Route, Link, Switch } from 'react-router-dom'
-import { Container, Menu, Dropdown, Message, Form, Input, Button } from 'semantic-ui-react'
+import { Container, Menu, Dropdown, Message, Form, Input, Button, Image } from 'semantic-ui-react'
import config from 'config'
import Auth from '../modules/Auth'
@@ -23,6 +23,8 @@ import EditTension from './EditTension'
import SearchPage from './SearchPage'
import Settings from './Settings'
+import sirclesLogo from '../../www/img/sircles.png'
+
class Base extends React.Component {
getChildContext () {
return {appError: this.props.appError}
@@ -120,8 +122,11 @@ class Base extends React.Component {
return (
-