🔧 Fixing the AirDCPP socket issue on AcquisitionPanel on ComicDetails page
This commit is contained in:
@@ -10,12 +10,14 @@ export const AirDCPPHubsForm = (airDCPPClientUserSettings): ReactElement => {
|
|||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const [hubList, setHubList] = useState([]);
|
const [hubList, setHubList] = useState([]);
|
||||||
const airDCPPConfiguration = useContext(AirDCPPSocketContext);
|
const airDCPPConfiguration = useContext(AirDCPPSocketContext);
|
||||||
const { AirDCPPSocket, settings } = airDCPPConfiguration;
|
const {
|
||||||
|
airDCPPState: { settings, socket },
|
||||||
|
} = airDCPPConfiguration;
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
(async () => {
|
(async () => {
|
||||||
if (!isEmpty(settings)) {
|
if (!isEmpty(settings)) {
|
||||||
const hubs = await AirDCPPSocket.get(`hubs`);
|
const hubs = await socket.get(`hubs`);
|
||||||
const hubSelectionOptions = hubs.map(({ hub_url, identity }) => ({
|
const hubSelectionOptions = hubs.map(({ hub_url, identity }) => ({
|
||||||
value: hub_url,
|
value: hub_url,
|
||||||
label: identity.name,
|
label: identity.name,
|
||||||
|
|||||||
@@ -27,7 +27,9 @@ export const AirDCPPSettingsForm = (): ReactElement => {
|
|||||||
}, []);
|
}, []);
|
||||||
const validate = async () => {};
|
const validate = async () => {};
|
||||||
console.log(airDCPPSettings.airDCPPState);
|
console.log(airDCPPSettings.airDCPPState);
|
||||||
const initFormData = !isUndefined(airDCPPSettings.airDCPPState.settings.directConnect)
|
const initFormData = !isUndefined(
|
||||||
|
airDCPPSettings.airDCPPState.settings.directConnect,
|
||||||
|
)
|
||||||
? airDCPPSettings.airDCPPState.settings.directConnect.client.host
|
? airDCPPSettings.airDCPPState.settings.directConnect.client.host
|
||||||
: {};
|
: {};
|
||||||
|
|
||||||
|
|||||||
@@ -46,24 +46,27 @@ export const AcquisitionPanel = (
|
|||||||
|
|
||||||
// const settings = useSelector((state: RootState) => state.settings.data);
|
// const settings = useSelector((state: RootState) => state.settings.data);
|
||||||
const airDCPPConfiguration = useContext(AirDCPPSocketContext);
|
const airDCPPConfiguration = useContext(AirDCPPSocketContext);
|
||||||
const { AirDCPPSocket, settings } = airDCPPConfiguration;
|
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const [dcppQuery, setDcppQuery] = useState({});
|
const [dcppQuery, setDcppQuery] = useState({});
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!isNil(settings)) {
|
if (!isEmpty(airDCPPConfiguration.airDCPPState.settings)) {
|
||||||
// AirDC++ search query
|
// AirDC++ search query
|
||||||
const dcppSearchQuery = {
|
const dcppSearchQuery = {
|
||||||
query: {
|
query: {
|
||||||
pattern: `${sanitizedIssueName.replace(/#/g, "")}`,
|
pattern: `${sanitizedIssueName.replace(/#/g, "")}`,
|
||||||
extensions: ["cbz", "cbr", "cb7"],
|
extensions: ["cbz", "cbr", "cb7"],
|
||||||
},
|
},
|
||||||
hub_urls: map(settings.directConnect.client.hubs, (item) => item.value),
|
hub_urls: map(
|
||||||
|
airDCPPConfiguration.airDCPPState.settings.directConnect.client.hubs,
|
||||||
|
(item) => item.value,
|
||||||
|
),
|
||||||
priority: 5,
|
priority: 5,
|
||||||
};
|
};
|
||||||
setDcppQuery(dcppSearchQuery);
|
setDcppQuery(dcppSearchQuery);
|
||||||
}
|
}
|
||||||
}, []);
|
}, [airDCPPConfiguration]);
|
||||||
|
|
||||||
const getDCPPSearchResults = useCallback(
|
const getDCPPSearchResults = useCallback(
|
||||||
async (searchQuery) => {
|
async (searchQuery) => {
|
||||||
@@ -72,17 +75,20 @@ export const AcquisitionPanel = (
|
|||||||
pattern: `${searchQuery.issueName}`,
|
pattern: `${searchQuery.issueName}`,
|
||||||
extensions: ["cbz", "cbr", "cb7"],
|
extensions: ["cbz", "cbr", "cb7"],
|
||||||
},
|
},
|
||||||
hub_urls: map(settings.directConnect.client.hubs, (item) => item.value),
|
hub_urls: map(
|
||||||
|
airDCPPConfiguration.airDCPPState.settings.directConnect.client.hubs,
|
||||||
|
(item) => item.value,
|
||||||
|
),
|
||||||
priority: 5,
|
priority: 5,
|
||||||
};
|
};
|
||||||
dispatch(
|
dispatch(
|
||||||
search(manualQuery, AirDCPPSocket, {
|
search(manualQuery, airDCPPConfiguration.airDCPPState.socket, {
|
||||||
username: `${settings.directConnect.client.host.username}`,
|
username: `${airDCPPConfiguration.airDCPPState.settings.directConnect.client.host.username}`,
|
||||||
password: `${settings.directConnect.client.host.password}`,
|
password: `${airDCPPConfiguration.airDCPPState.settings.directConnect.client.host.password}`,
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
[dispatch, AirDCPPSocket],
|
[dispatch, airDCPPConfiguration],
|
||||||
);
|
);
|
||||||
|
|
||||||
// download via AirDC++
|
// download via AirDC++
|
||||||
@@ -94,19 +100,23 @@ export const AcquisitionPanel = (
|
|||||||
resultId,
|
resultId,
|
||||||
comicBookObjectId,
|
comicBookObjectId,
|
||||||
comicObject,
|
comicObject,
|
||||||
AirDCPPSocket,
|
airDCPPConfiguration.airDCPPState.socket,
|
||||||
{
|
{
|
||||||
username: `${settings.directConnect.client.host.username}`,
|
username: `${airDCPPConfiguration.airDCPPState.settings.directConnect.client.host.username}`,
|
||||||
password: `${settings.directConnect.client.host.password}`,
|
password: `${airDCPPConfiguration.airDCPPState.settings.directConnect.client.host.password}`,
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
// this is to update the download count badge on the downloads tab
|
// this is to update the download count badge on the downloads tab
|
||||||
dispatch(
|
dispatch(
|
||||||
getBundlesForComic(comicBookObjectId, AirDCPPSocket, {
|
getBundlesForComic(
|
||||||
username: `${settings.directConnect.client.host.username}`,
|
comicBookObjectId,
|
||||||
password: `${settings.directConnect.client.host.password}`,
|
airDCPPConfiguration.airDCPPState.socket,
|
||||||
}),
|
{
|
||||||
|
username: `${airDCPPConfiguration.airDCPPState.settings.directConnect.client.host.username}`,
|
||||||
|
password: `${airDCPPConfiguration.airDCPPState.settings.directConnect.client.host.password}`,
|
||||||
|
},
|
||||||
|
),
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
[],
|
[],
|
||||||
@@ -114,7 +124,7 @@ export const AcquisitionPanel = (
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div className="comic-detail columns">
|
<div className="comic-detail columns">
|
||||||
{!isEmpty(AirDCPPSocket) ? (
|
{!isEmpty(airDCPPConfiguration.airDCPPState.socket) ? (
|
||||||
<Form
|
<Form
|
||||||
onSubmit={getDCPPSearchResults}
|
onSubmit={getDCPPSearchResults}
|
||||||
initialValues={{
|
initialValues={{
|
||||||
@@ -185,11 +195,13 @@ export const AcquisitionPanel = (
|
|||||||
<dl>
|
<dl>
|
||||||
<dt>
|
<dt>
|
||||||
<div className="tags mb-1">
|
<div className="tags mb-1">
|
||||||
{settings.directConnect.client.hubs.map(({ value }) => (
|
{airDCPPConfiguration.airDCPPState.settings.directConnect.client.hubs.map(
|
||||||
<span className="tag is-warning" key={value}>
|
({ value }) => (
|
||||||
{value}
|
<span className="tag is-warning" key={value}>
|
||||||
</span>
|
{value}
|
||||||
))}
|
</span>
|
||||||
|
),
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</dt>
|
</dt>
|
||||||
<dt>
|
<dt>
|
||||||
|
|||||||
Reference in New Issue
Block a user