diff --git a/client/src/Features/UI/uiSlice.js b/client/src/Features/UI/uiSlice.js
index 00d94d735..bd6e92804 100644
--- a/client/src/Features/UI/uiSlice.js
+++ b/client/src/Features/UI/uiSlice.js
@@ -20,7 +20,7 @@ const initialState = {
collapsed: false,
},
mode: initialMode,
- statusURL: "disabled",
+ showURL: false,
greeting: { index: 0, lastUpdate: null },
timezone: "America/Toronto",
distributedUptimeEnabled: false,
@@ -47,8 +47,8 @@ const uiSlice = createSlice({
setMode: (state, action) => {
state.mode = action.payload;
},
- setStatusURL: (state, action) => {
- state.statusURL = action.payload;
+ setShowURL: (state, action) => {
+ state.showURL = action.payload;
},
setGreeting(state, action) {
state.greeting.index = action.payload.index;
@@ -71,7 +71,7 @@ export const {
setRowsPerPage,
toggleSidebar,
setMode,
- setStatusURL,
+ setShowURL,
setGreeting,
setTimezone,
setDistributedUptimeEnabled,
diff --git a/client/src/Pages/Settings/SettingsURL.jsx b/client/src/Pages/Settings/SettingsURL.jsx
index ddcc271b4..64804c903 100644
--- a/client/src/Pages/Settings/SettingsURL.jsx
+++ b/client/src/Pages/Settings/SettingsURL.jsx
@@ -9,7 +9,7 @@ import { useTheme } from "@emotion/react";
import { PropTypes } from "prop-types";
import { useTranslation } from "react-i18next";
-const SettingsURL = ({ HEADING_SX, handleChange, statusURL }) => {
+const SettingsURL = ({ HEADING_SX, handleChange, showURL }) => {
const { t } = useTranslation();
const theme = useTheme();
return (
@@ -20,13 +20,13 @@ const SettingsURL = ({ HEADING_SX, handleChange, statusURL }) => {
@@ -37,7 +37,7 @@ const SettingsURL = ({ HEADING_SX, handleChange, statusURL }) => {
SettingsURL.propTypes = {
HEADING_SX: PropTypes.object,
handleChange: PropTypes.func,
- statusURL: PropTypes.string,
+ showURL: PropTypes.bool,
};
export default SettingsURL;
diff --git a/client/src/Pages/Settings/index.jsx b/client/src/Pages/Settings/index.jsx
index b4d890984..b61fa0294 100644
--- a/client/src/Pages/Settings/index.jsx
+++ b/client/src/Pages/Settings/index.jsx
@@ -16,7 +16,7 @@ import { useState } from "react";
import { useTheme } from "@emotion/react";
import { useTranslation } from "react-i18next";
import { useSelector, useDispatch } from "react-redux";
-import { setTimezone, setMode, setLanguage, setStatusURL } from "../../Features/UI/uiSlice";
+import { setTimezone, setMode, setLanguage, setShowURL } from "../../Features/UI/uiSlice";
import SettingsStats from "./SettingsStats";
import {
deleteMonitorChecksByTeamId,
@@ -32,7 +32,7 @@ const BREADCRUMBS = [{ name: `Settings`, path: "/settings" }];
const Settings = () => {
// Redux state
- const { mode, language, timezone, statusURL } = useSelector((state) => state.ui);
+ const { mode, language, timezone, showURL } = useSelector((state) => state.ui);
const { user } = useSelector((state) => state.auth);
// Local state
@@ -68,7 +68,6 @@ const Settings = () => {
const { error } = settingsValidation.validate(newSettingsData.settings, {
abortEarly: false,
});
- console.log(error)
if (!error || error.details.length === 0) {
setErrors({});
} else {
@@ -87,8 +86,8 @@ const Settings = () => {
dispatch(setMode(value));
}
- if (name === "statusURL") {
- dispatch(setStatusURL(value));
+ if (name === "showURL") {
+ dispatch(setShowURL(value));
}
if (name === "language") {
@@ -173,7 +172,7 @@ const Settings = () => {
state.ui);
- const showURL = statusURL === "enabled";
+ const { showURL } = useSelector((state) => state.ui);
return (
<>
diff --git a/client/src/Validation/validation.js b/client/src/Validation/validation.js
index bbf1227ec..76d904865 100644
--- a/client/src/Validation/validation.js
+++ b/client/src/Validation/validation.js
@@ -277,7 +277,7 @@ const settingsValidation = joi.object({
}),
pagespeedApiKey: joi.string().allow("").optional(),
language: joi.string().required(),
- statusURL: joi.string().required(),
+ showURL: joi.bool().required(),
systemEmailHost: joi.string().allow(""),
systemEmailPort: joi.number().allow(null, ""),
systemEmailAddress: joi.string().allow(""),
diff --git a/client/src/locales/gb.json b/client/src/locales/gb.json
index 716f45ca3..c430371e2 100644
--- a/client/src/locales/gb.json
+++ b/client/src/locales/gb.json
@@ -78,6 +78,8 @@
"settingsURLTitle": "Monitor IP/URL on Status Page",
"settingsURLDescription": "Display the IP address or URL of monitor on the public Status page. If it's disabled, only the monitor name will be shown to protect sensitive information.",
"settingsURLSelectTitle": "Display IP/URL on status page",
+ "settingsURLEnabled": "Enabled",
+ "settingURLDisabled": "Disabled",
"settingsDistributedUptime": "Distributed uptime",
"settingsDistributedUptimeDescription": "Enable/disable distributed uptime monitoring.",
"settingsEnabled": "Enabled",
diff --git a/client/src/locales/ru.json b/client/src/locales/ru.json
index 2240cf314..9bdf32495 100644
--- a/client/src/locales/ru.json
+++ b/client/src/locales/ru.json
@@ -92,6 +92,8 @@
"settingsURLTitle": "Отображать IP/URL на странице статуса",
"settingsURLDescription": "Отображать IP-адрес или URL-адрес монитора на общедоступной странице статуса. Если отключено, будет отображаться только имя монитора для защиты конфиденциальной информации.",
"settingsURLSelectTitle": "Показать IP/URL на странице статуса",
+ "settingsURLEnabled": "Включено",
+ "settingURLDisabled": "Отключено",
"settingsDistributedUptime": "Distributed uptime",
"settingsDistributedUptimeDescription": "Включить/выключить distributed uptime monitoring.",
"settingsEnabled": "Включено",
diff --git a/client/src/locales/tr.json b/client/src/locales/tr.json
index 69db239dd..214e7703c 100644
--- a/client/src/locales/tr.json
+++ b/client/src/locales/tr.json
@@ -76,6 +76,8 @@
"settingsURLTitle": "Durum Sayfasında IP/URL'yi Göster",
"settingsURLDescription": "Monitörün IP adresini veya URL'sini genel Durum sayfasında göster. Devre dışı bırakıldığında, hassas bilgileri korumak için yalnızca monitör adı gösterilecektir.",
"settingsURLSelectTitle": "Durum sayfasında IP/URL'yi göster",
+ "settingsURLEnabled": "Etkin",
+ "settingURLDisabled": "Devre Dışı",
"settingsDistributedUptime": "Dağıtılmış çalışma süresi",
"settingsDistributedUptimeDescription": "Dağıtılmış çalışma süresi izlemeyi etkinleştirin/devre dışı bırakın.",
"settingsEnabled": "Etkin",
diff --git a/server/validation/joi.js b/server/validation/joi.js
index 8db68b6d6..596da3fd4 100755
--- a/server/validation/joi.js
+++ b/server/validation/joi.js
@@ -427,7 +427,7 @@ const updateAppSettingsBodyValidation = joi.object({
checkTTL: joi.number().allow(""),
pagespeedApiKey: joi.string().allow(""),
language: joi.string().allow(""),
- statusURL: joi.string().required(),
+ showURL: joi.bool().required(),
systemEmailHost: joi.string().allow(""),
systemEmailPort: joi.number().allow(""),
systemEmailAddress: joi.string().allow(""),