mirror of
https://github.com/discourse/discourse.git
synced 2025-02-07 20:08:26 +00:00
FIX: Group pages should work when group name contains periods.
https://meta.discourse.org/t/group-name-cant-have-dot-inside/48658
This commit is contained in:
parent
deab0486fa
commit
a389baeb07
7
app/assets/javascripts/discourse/adapters/group.js.es6
Normal file
7
app/assets/javascripts/discourse/adapters/group.js.es6
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
import RestAdapter from 'discourse/adapters/rest';
|
||||||
|
|
||||||
|
export default RestAdapter.extend({
|
||||||
|
appendQueryParams(path, findArgs) {
|
||||||
|
return this._super(path, findArgs, '.json');
|
||||||
|
},
|
||||||
|
});
|
@ -40,7 +40,7 @@ export default Ember.Object.extend({
|
|||||||
return "/";
|
return "/";
|
||||||
},
|
},
|
||||||
|
|
||||||
appendQueryParams(path, findArgs) {
|
appendQueryParams(path, findArgs, extension) {
|
||||||
if (findArgs) {
|
if (findArgs) {
|
||||||
if (typeof findArgs === "object") {
|
if (typeof findArgs === "object") {
|
||||||
const queryString = Object.keys(findArgs)
|
const queryString = Object.keys(findArgs)
|
||||||
@ -48,11 +48,11 @@ export default Ember.Object.extend({
|
|||||||
.map(k => k + "=" + encodeURIComponent(findArgs[k]));
|
.map(k => k + "=" + encodeURIComponent(findArgs[k]));
|
||||||
|
|
||||||
if (queryString.length) {
|
if (queryString.length) {
|
||||||
return path + "?" + queryString.join('&');
|
return `${path}${extension ? extension : ''}?${queryString.join('&')}`;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// It's serializable as a string if not an object
|
// It's serializable as a string if not an object
|
||||||
return path + "/" + findArgs;
|
return `${path}/${findArgs}${extension ? extension : ''}`;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return path;
|
return path;
|
||||||
|
@ -626,7 +626,7 @@ Discourse::Application.routes.draw do
|
|||||||
get "private-messages-archive/:username" => "list#private_messages_archive", as: "topics_private_messages_archive"
|
get "private-messages-archive/:username" => "list#private_messages_archive", as: "topics_private_messages_archive"
|
||||||
get "private-messages-unread/:username" => "list#private_messages_unread", as: "topics_private_messages_unread"
|
get "private-messages-unread/:username" => "list#private_messages_unread", as: "topics_private_messages_unread"
|
||||||
get "private-messages-tags/:username/:tag_id.json" => "list#private_messages_tag", as: "topics_private_messages_tag", constraints: StaffConstraint.new
|
get "private-messages-tags/:username/:tag_id.json" => "list#private_messages_tag", as: "topics_private_messages_tag", constraints: StaffConstraint.new
|
||||||
get "groups/:group_name.json" => "list#group_topics", as: "group_topics"
|
get "groups/:group_name" => "list#group_topics", as: "group_topics", group_name: RouteFormat.username
|
||||||
|
|
||||||
scope "/private-messages-group/:username", group_name: RouteFormat.username do
|
scope "/private-messages-group/:username", group_name: RouteFormat.username do
|
||||||
get ":group_name.json" => "list#private_messages_group", as: "topics_private_messages_group"
|
get ":group_name.json" => "list#private_messages_group", as: "topics_private_messages_group"
|
||||||
|
@ -11,7 +11,7 @@ acceptance("Group logs", {
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
server.get('/groups/snorlax', () => { // eslint-disable-line no-undef
|
server.get('/groups/snorlax.json', () => { // eslint-disable-line no-undef
|
||||||
return response({"group":{"id":41,"automatic":false,"name":"snorlax","user_count":1,"alias_level":0,"visible":true,"automatic_membership_email_domains":"","automatic_membership_retroactive":false,"primary_group":true,"title":"Team Snorlax","grant_trust_level":null,"incoming_email":null,"has_messages":false,"flair_url":"","flair_bg_color":"","flair_color":"","bio_raw":"","bio_cooked":null,"public":true,"is_group_user":true,"is_group_owner":true}});
|
return response({"group":{"id":41,"automatic":false,"name":"snorlax","user_count":1,"alias_level":0,"visible":true,"automatic_membership_email_domains":"","automatic_membership_retroactive":false,"primary_group":true,"title":"Team Snorlax","grant_trust_level":null,"incoming_email":null,"has_messages":false,"flair_url":"","flair_bg_color":"","flair_color":"","bio_raw":"","bio_cooked":null,"public":true,"is_group_user":true,"is_group_owner":true}});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
export default {
|
export default {
|
||||||
"/groups/moderators":{
|
"/groups/moderators.json":{
|
||||||
"group": {
|
"group": {
|
||||||
"id": 50,
|
"id": 50,
|
||||||
"automatic": true,
|
"automatic": true,
|
||||||
@ -32,7 +32,7 @@ export default {
|
|||||||
"messageable": true
|
"messageable": true
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"/groups/discourse":{
|
"/groups/discourse.json":{
|
||||||
"group":{
|
"group":{
|
||||||
"id":47,
|
"id":47,
|
||||||
"automatic":false,
|
"automatic":false,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user