mirror of
https://github.com/discourse/discourse.git
synced 2024-11-22 13:09:18 +08:00
FEATURE: Add 'Community title' field to about config page (#29500)
This commit adds a new "Community title" field to the about config page. This field controls the `short_site_description` setting, which is shown in the browser tab for key pages such categories pages and topic lists. Internal topic: t/140812.
This commit is contained in:
parent
ec480e99ef
commit
0ad1c02932
|
@ -23,6 +23,7 @@ export default class AdminConfigAreasAboutGeneralSettings extends Component {
|
||||||
summary: this.args.generalSettings.siteDescription.value,
|
summary: this.args.generalSettings.siteDescription.value,
|
||||||
extendedDescription:
|
extendedDescription:
|
||||||
this.args.generalSettings.extendedSiteDescription.value,
|
this.args.generalSettings.extendedSiteDescription.value,
|
||||||
|
communityTitle: this.args.generalSettings.communityTitle.value,
|
||||||
aboutBannerImage: this.args.generalSettings.aboutBannerImage.value,
|
aboutBannerImage: this.args.generalSettings.aboutBannerImage.value,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -38,6 +39,7 @@ export default class AdminConfigAreasAboutGeneralSettings extends Component {
|
||||||
name: data.name,
|
name: data.name,
|
||||||
summary: data.summary,
|
summary: data.summary,
|
||||||
extended_description: data.extendedDescription,
|
extended_description: data.extendedDescription,
|
||||||
|
community_title: data.communityTitle,
|
||||||
about_banner_image: data.aboutBannerImage,
|
about_banner_image: data.aboutBannerImage,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -95,6 +97,16 @@ export default class AdminConfigAreasAboutGeneralSettings extends Component {
|
||||||
<field.Composer />
|
<field.Composer />
|
||||||
</form.Field>
|
</form.Field>
|
||||||
|
|
||||||
|
<form.Field
|
||||||
|
@name="communityTitle"
|
||||||
|
@title={{i18n "admin.config_areas.about.community_title"}}
|
||||||
|
@description={{i18n "admin.config_areas.about.community_title_help"}}
|
||||||
|
@format="large"
|
||||||
|
as |field|
|
||||||
|
>
|
||||||
|
<field.Input />
|
||||||
|
</form.Field>
|
||||||
|
|
||||||
<form.Field
|
<form.Field
|
||||||
@name="aboutBannerImage"
|
@name="aboutBannerImage"
|
||||||
@title={{i18n "admin.config_areas.about.banner_image"}}
|
@title={{i18n "admin.config_areas.about.banner_image"}}
|
||||||
|
|
|
@ -16,6 +16,7 @@ export default class AdminConfigAreasAbout extends Component {
|
||||||
extendedSiteDescription: this.#lookupSettingFromData(
|
extendedSiteDescription: this.#lookupSettingFromData(
|
||||||
"extended_site_description"
|
"extended_site_description"
|
||||||
),
|
),
|
||||||
|
communityTitle: this.#lookupSettingFromData("short_site_description"),
|
||||||
aboutBannerImage: this.#lookupSettingFromData("about_banner_image"),
|
aboutBannerImage: this.#lookupSettingFromData("about_banner_image"),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,7 @@ export default class AdminConfigAboutRoute extends Route {
|
||||||
"title",
|
"title",
|
||||||
"site_description",
|
"site_description",
|
||||||
"extended_site_description",
|
"extended_site_description",
|
||||||
|
"short_site_description",
|
||||||
"about_banner_image",
|
"about_banner_image",
|
||||||
"community_owner",
|
"community_owner",
|
||||||
"contact_email",
|
"contact_email",
|
||||||
|
|
|
@ -12,6 +12,7 @@ class Admin::Config::AboutController < Admin::AdminController
|
||||||
settings_map[:about_banner_image] = general_settings[:about_banner_image]
|
settings_map[:about_banner_image] = general_settings[:about_banner_image]
|
||||||
|
|
||||||
settings_map[:extended_site_description] = general_settings[:extended_description]
|
settings_map[:extended_site_description] = general_settings[:extended_description]
|
||||||
|
settings_map[:short_site_description] = general_settings[:community_title]
|
||||||
if settings_map[:extended_site_description].present?
|
if settings_map[:extended_site_description].present?
|
||||||
settings_map[:extended_site_description_cooked] = PrettyText.markdown(
|
settings_map[:extended_site_description_cooked] = PrettyText.markdown(
|
||||||
settings_map[:extended_site_description],
|
settings_map[:extended_site_description],
|
||||||
|
|
|
@ -5619,6 +5619,8 @@ en:
|
||||||
community_name_placeholder: "Example Community"
|
community_name_placeholder: "Example Community"
|
||||||
community_summary: "Community summary"
|
community_summary: "Community summary"
|
||||||
community_description: "Community description"
|
community_description: "Community description"
|
||||||
|
community_title: "Community title"
|
||||||
|
community_title_help: "Short description, shown in the browser tab, for key pages such as categories and topic lists."
|
||||||
banner_image: "Banner image"
|
banner_image: "Banner image"
|
||||||
banner_image_help: |
|
banner_image_help: |
|
||||||
This will be used on your About page. Recommended size: 1100x300px. Accepted types: JPG, PNG, and SVG up to 10MB.
|
This will be used on your About page. Recommended size: 1100x300px. Accepted types: JPG, PNG, and SVG up to 10MB.
|
||||||
|
|
|
@ -14,6 +14,7 @@ describe "Admin About Config Area Page", type: :system do
|
||||||
SiteSetting.site_description = "this is a description for my forums"
|
SiteSetting.site_description = "this is a description for my forums"
|
||||||
SiteSetting.about_banner_image = image_upload
|
SiteSetting.about_banner_image = image_upload
|
||||||
SiteSetting.extended_site_description = "this is an extended description for my forums"
|
SiteSetting.extended_site_description = "this is an extended description for my forums"
|
||||||
|
SiteSetting.short_site_description = "short description for browser tab"
|
||||||
|
|
||||||
SiteSetting.community_owner = "kitty"
|
SiteSetting.community_owner = "kitty"
|
||||||
SiteSetting.contact_email = "kitty@litterbox.com"
|
SiteSetting.contact_email = "kitty@litterbox.com"
|
||||||
|
@ -38,6 +39,9 @@ describe "Admin About Config Area Page", type: :system do
|
||||||
expect(config_area.general_settings_section.community_description_editor.value).to eq(
|
expect(config_area.general_settings_section.community_description_editor.value).to eq(
|
||||||
"this is an extended description for my forums",
|
"this is an extended description for my forums",
|
||||||
)
|
)
|
||||||
|
expect(config_area.general_settings_section.community_title_input.value).to eq(
|
||||||
|
"short description for browser tab",
|
||||||
|
)
|
||||||
expect(config_area.general_settings_section.banner_image_uploader).to have_uploaded_image
|
expect(config_area.general_settings_section.banner_image_uploader).to have_uploaded_image
|
||||||
|
|
||||||
expect(config_area.contact_information_section.community_owner_input.value).to eq("kitty")
|
expect(config_area.contact_information_section.community_owner_input.value).to eq("kitty")
|
||||||
|
@ -78,6 +82,9 @@ describe "Admin About Config Area Page", type: :system do
|
||||||
config_area.general_settings_section.community_description_editor.fill_in(
|
config_area.general_settings_section.community_description_editor.fill_in(
|
||||||
"here's an extended description for the **community**",
|
"here's an extended description for the **community**",
|
||||||
)
|
)
|
||||||
|
config_area.general_settings_section.community_title_input.fill_in(
|
||||||
|
"here's a title for my site",
|
||||||
|
)
|
||||||
config_area.general_settings_section.banner_image_uploader.select_image(image_file.path)
|
config_area.general_settings_section.banner_image_uploader.select_image(image_file.path)
|
||||||
expect(config_area.general_settings_section.banner_image_uploader).to have_uploaded_image
|
expect(config_area.general_settings_section.banner_image_uploader).to have_uploaded_image
|
||||||
|
|
||||||
|
@ -93,6 +100,7 @@ describe "Admin About Config Area Page", type: :system do
|
||||||
expect(SiteSetting.extended_site_description_cooked).to eq(
|
expect(SiteSetting.extended_site_description_cooked).to eq(
|
||||||
"<p>here’s an extended description for the <strong>community</strong></p>",
|
"<p>here’s an extended description for the <strong>community</strong></p>",
|
||||||
)
|
)
|
||||||
|
expect(SiteSetting.short_site_description).to eq("here's a title for my site")
|
||||||
expect(SiteSetting.about_banner_image.sha1).to eq(Upload.generate_digest(image_file))
|
expect(SiteSetting.about_banner_image.sha1).to eq(Upload.generate_digest(image_file))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,10 @@ module PageObjects
|
||||||
form.field("extendedDescription")
|
form.field("extendedDescription")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def community_title_input
|
||||||
|
form.field("communityTitle")
|
||||||
|
end
|
||||||
|
|
||||||
def banner_image_uploader
|
def banner_image_uploader
|
||||||
PageObjects::Components::UppyImageUploader.new(card.find(".image-uploader"))
|
PageObjects::Components::UppyImageUploader.new(card.find(".image-uploader"))
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue
Block a user