Merge pull request #971 from mattermost/PLT-567

PLT-567 auto join open channels
Этот коммит содержится в:
Corey Hulen
2015-10-08 09:49:29 -07:00
родитель d30a694d11 e640bf7b6c
Коммит 26252ccebf
3 изменённых файлов: 30 добавлений и 6 удалений

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

@@ -2,6 +2,7 @@
// See License.txt for license information.
const TextFormatting = require('./text_formatting.jsx');
const Utils = require('./utils.jsx');
const marked = require('marked');
@@ -39,7 +40,14 @@ export class MattermostMarkdownRenderer extends marked.Renderer {
if (title) {
output += ' title="' + title + '"';
}
output += ' target="_blank">' + text + '</a>';
if (outHref.lastIndexOf(Utils.getTeamURLFromAddressBar(), 0) === 0) {
output += '>';
} else {
output += ' target="_blank">';
}
output += text + '</a>';
return output;
}

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

@@ -96,8 +96,13 @@ function autolinkUrls(text, tokens) {
const index = tokens.size;
const alias = `MM_LINK${index}`;
var target = 'target="_blank"';
if (url.lastIndexOf(Utils.getTeamURLFromAddressBar(), 0) === 0) {
target = '';
}
tokens.set(alias, {
value: `<a class='theme' target='_blank' href='${url}'>${linkText}</a>`,
value: '<a class="theme"' + target + ' href="${url}">${linkText}</a>',
originalText: linkText
});

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

@@ -372,11 +372,22 @@ func getChannel(c *api.Context, w http.ResponseWriter, r *http.Request) {
return
}
//api.Handle404(w, r)
//Bad channel urls just redirect to the town-square for now
// We will attempt to auto-join open channels
if cr := <-api.Srv.Store.Channel().GetByName(c.Session.TeamId, name); cr.Err != nil {
http.Redirect(w, r, c.GetTeamURL()+"/channels/town-square", http.StatusFound)
} else {
channel := cr.Data.(*model.Channel)
if channel.Type == model.CHANNEL_OPEN {
api.JoinChannel(c, channel.Id, "")
if c.Err != nil {
return
}
http.Redirect(w, r, c.GetTeamURL()+"/channels/town-square", http.StatusFound)
return
channelId = channel.Id
} else {
http.Redirect(w, r, c.GetTeamURL()+"/channels/town-square", http.StatusFound)
}
}
}
}