FEATURE: Allow the user to select a custom home page (#5268)

* Add user_home configuration option

* Use the new user_home preference to actually show the right home page

* Fix trailing whitespace

* Update user_option_serializer.rb

* Fix JavaScript default homepage tests

* Use an object instead of a giant switch

* Remove trailing whitespace

* Make the default `user_home` set to `null` instead of `0`

* Rename user_home to homepage_id
This commit is contained in:
Michael Howell
2017-11-09 12:45:19 -07:00
committed by Sam
parent 162932114e
commit 38b8d68c68
14 changed files with 90 additions and 4 deletions

View File

@ -10,6 +10,7 @@ import {
getRawSize,
avatarImg,
defaultHomepage,
setDefaultHomepage,
validateUploadedFiles,
getUploadMarkdown,
caretRowCol,
@ -204,6 +205,22 @@ QUnit.test("allowsAttachments", assert => {
QUnit.test("defaultHomepage", assert => {
Discourse.SiteSettings.top_menu = "latest|top|hot";
assert.equal(defaultHomepage(), "latest", "default homepage is the first item in the top_menu site setting");
var meta = document.createElement("meta");
meta.name = "discourse_current_homepage";
meta.content = "hot";
document.body.appendChild(meta);
assert.equal(defaultHomepage(), "hot", "default homepage is pulled from <meta name=discourse_current_homepage>");
document.body.removeChild(meta);
});
QUnit.test("setDefaultHomepage", assert => {
var meta = document.createElement("meta");
meta.name = "discourse_current_homepage";
meta.content = "hot";
document.body.appendChild(meta);
setDefaultHomepage("top");
assert.equal(meta.content, "top", "default homepage set by setDefaultHomepage");
document.body.removeChild(meta);
});
QUnit.test("caretRowCol", assert => {