Этот коммит содержится в:
Asaad Mahmood
2015-07-31 15:59:11 +05:00
родитель b6018c390f 8265e5ed82
Коммит ad0231f275
3 изменённых файлов: 35 добавлений и 9 удалений

Просмотреть файл

@@ -19,8 +19,8 @@ Learn More
<li/>Make a pull request: http://www.mattermost.org/contribute-to-mattermost/</li>
</ul>
Installing the Mattermost
=========================
Installing Mattermost
=====================
You're installing "Mattermost Alpha", a pre-released version intended for an early look at what we're building. While SpinPunch runs this version internally, it's not recommended for production deployments since we can't guarantee API stability or backwards compatibility until our production release.

Просмотреть файл

@@ -275,11 +275,24 @@ func emailTeams(c *Context, w http.ResponseWriter, r *http.Request) {
subjectPage := NewServerTemplatePage("find_teams_subject", c.GetSiteURL())
bodyPage := NewServerTemplatePage("find_teams_body", c.GetSiteURL())
if err := utils.SendMail(email, subjectPage.Render(), bodyPage.Render()); err != nil {
l4g.Error("An error occured while sending an email in emailTeams err=%v", err)
}
if result := <-Srv.Store.Team().GetTeamsForEmail(email); result.Err != nil {
c.Err = result.Err
} else {
teams := result.Data.([]*model.Team)
w.Write([]byte(model.MapToJson(m)))
// the template expects Props to be a map with team names as the keys
props := make(map[string]string)
for _, team := range teams {
props[team.Name] = team.Name
}
bodyPage.Props = props
if err := utils.SendMail(email, subjectPage.Render(), bodyPage.Render()); err != nil {
l4g.Error("An error occured while sending an email in emailTeams err=%v", err)
}
w.Write([]byte(model.MapToJson(m)))
}
}
func inviteMembers(c *Context, w http.ResponseWriter, r *http.Request) {

Просмотреть файл

@@ -17,11 +17,20 @@ var NavbarDropdown = React.createClass({
e.preventDefault();
client.logout();
},
blockToggle: false,
componentDidMount: function() {
UserStore.addTeamsChangeListener(this._onChange);
var self = this;
$(this.refs.dropdown.getDOMNode()).on('hide.bs.dropdown', function(e) {
self.blockToggle = true;
setTimeout(function(){self.blockToggle = false;}, 100);
});
},
componentWillUnmount: function() {
UserStore.removeTeamsChangeListener(this._onChange);
$(this.refs.dropdown.getDOMNode()).off('hide.bs.dropdown');
},
_onChange: function() {
if (this.isMounted()) {
@@ -75,7 +84,7 @@ var NavbarDropdown = React.createClass({
return (
<ul className="nav navbar-nav navbar-right">
<li className="dropdown">
<li ref="dropdown" className="dropdown">
<a href="#" className="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
<span className="dropdown__icon" dangerouslySetInnerHTML={{__html: Constants.MENU_ICON }} />
</a>
@@ -108,7 +117,11 @@ module.exports = React.createClass({
},
toggleDropdown: function(e) {
$('.team__header').find('.dropdown-toggle').trigger('click');
if (this.refs.dropdown.blockToggle) {
this.refs.dropdown.blockToggle = false;
return;
}
$('.team__header').find('.dropdown-toggle').dropdown('toggle');
},
render: function() {
@@ -131,7 +144,7 @@ module.exports = React.createClass({
<div className="team__name">{ this.props.teamDisplayName }</div>
</div>
</a>
<NavbarDropdown teamType={this.props.teamType} />
<NavbarDropdown ref="dropdown" teamType={this.props.teamType} />
</div>
);
}