- Aurral's metadata and search backends currently run on personal infrastructure and may
- experience occasional downtime. Sponsorship goes directly toward maintaining Aurral, keeping
- those services online, and funding cloud capacity when needed.
-
- This will apply Davo's Community Lidarr Guide settings to your Lidarr instance:
+ Apply Davo's Community Lidarr Guide settings to your Lidarr instance:
Update quality definitions for FLAC and FLAC 24bit
@@ -41,15 +41,14 @@ export function CommunityGuideModal({ show, onClose, onApply }) {
className="settings-page__link"
>
Read the full guide
- {" "}
- for more details on these settings.
+
diff --git a/frontend/src/pages/Settings/components/LidarrSettingsModalContent.jsx b/frontend/src/pages/Settings/components/LidarrSettingsModalContent.jsx
index 1ad0aaefe..f74e6545f 100644
--- a/frontend/src/pages/Settings/components/LidarrSettingsModalContent.jsx
+++ b/frontend/src/pages/Settings/components/LidarrSettingsModalContent.jsx
@@ -41,6 +41,7 @@ export function LidarrSettingsSection({
showInfo,
}) {
const [lidarrTestLatencyMs, setLidarrTestLatencyMs] = useState(null);
+ const [lidarrTestStatus, setLidarrTestStatus] = useState(null);
const safeLidarrRootFolders = Array.isArray(lidarrRootFolders) ? lidarrRootFolders : [];
const safeLidarrProfiles = Array.isArray(lidarrProfiles) ? lidarrProfiles : [];
@@ -65,16 +66,19 @@ export function LidarrSettingsSection({
const url = settings.integrations?.lidarr?.url;
const apiKey = settings.integrations?.lidarr?.apiKey;
if (!url || !apiKey) {
+ setLidarrTestStatus({ tone: "error", message: "Enter the URL and API key." });
showError("Please enter both URL and API key");
return;
}
setTestingLidarr(true);
setLidarrTestLatencyMs(null);
+ setLidarrTestStatus(null);
const startTime = performance.now();
try {
const result = await testLidarrConnection(url, apiKey);
setLidarrTestLatencyMs(Math.round(performance.now() - startTime));
if (result.success) {
+ setLidarrTestStatus({ tone: "success", message: "Connected." });
showSuccess(`Lidarr connection successful! (${result.instanceName || "Lidarr"})`);
setLoadingLidarrRootFolders(true);
setLoadingLidarrProfiles(true);
@@ -115,12 +119,14 @@ export function LidarrSettingsSection({
setLoadingLidarrTags(false);
}
} else {
+ setLidarrTestStatus({ tone: "error", message: "Connection failed. Check the URL and API key, then retry." });
showError(
`Connection failed: ${result.message || result.error}${result.details ? `\n${result.details}` : ""}`,
);
}
} catch (err) {
setLidarrTestLatencyMs(Math.round(performance.now() - startTime));
+ setLidarrTestStatus({ tone: "error", message: "Connection failed. Check the URL and API key, then retry." });
const errorMsg = err.response?.data?.message || err.response?.data?.error || err.message;
showError(`Connection failed: ${errorMsg}`);
} finally {
@@ -192,9 +198,6 @@ export function LidarrSettingsSection({
Lidarr
-
- Connect Aurral to your Lidarr instance and configure library defaults.
-
- Link your own Plex.tv account (e.g. if an admin invited you as a friend to their Plex
- server) so your flow and shared playlists are created under your own Plex login.
+ Link your Plex account so flows and shared playlists use your login.
diff --git a/frontend/src/pages/Settings/components/QualityProfileModal.jsx b/frontend/src/pages/Settings/components/QualityProfileModal.jsx
index 399f57a97..b0c2ab82d 100644
--- a/frontend/src/pages/Settings/components/QualityProfileModal.jsx
+++ b/frontend/src/pages/Settings/components/QualityProfileModal.jsx
@@ -110,7 +110,7 @@ export function QualityProfileModal({ profile, onChange, onClose }) {
};
return (
-
+
Rank qualities from best to worst. Aurral accepts allowed qualities and upgrades tracks until they reach the cutoff.
diff --git a/frontend/src/pages/Settings/components/SettingsAccountTab.jsx b/frontend/src/pages/Settings/components/SettingsAccountTab.jsx
index 967b918ce..7de4cb8df 100644
--- a/frontend/src/pages/Settings/components/SettingsAccountTab.jsx
+++ b/frontend/src/pages/Settings/components/SettingsAccountTab.jsx
@@ -90,9 +90,6 @@ export function SettingsAccountTab({