diff --git a/reader/src/App.jsx b/reader/src/App.jsx
index 93e5a64..226c07a 100644
--- a/reader/src/App.jsx
+++ b/reader/src/App.jsx
@@ -21,91 +21,91 @@ import {
import ResourcePage from "./ResourcePage.jsx";
import io from "socket.io-client";
-const socket = io("http://localhost:3000");
+//const socket = io("http://localhost:3000");
const DIVIDER_AT = 16;
-function SocketTest() {
- const [booleanArray, setBooleanArray] = useState(new Array(10).fill(false));
- const [isConnected, setIsConnected] = useState(false);
-
- useEffect(() => {
- // Connection status
- socket.on("connect", () => {
- setIsConnected(true);
- console.log("Connected to server");
- });
-
- socket.on("disconnect", () => {
- setIsConnected(false);
- console.log("Disconnected from server");
- });
-
- // Listen for array updates
- socket.on("arrayChanged", (newArray) => {
- setBooleanArray(newArray);
- });
-
- // Cleanup on unmount
- return () => {
- socket.off("connect");
- socket.off("disconnect");
- socket.off("arrayChanged");
- };
- }, []);
-
- const toggleValue = (index) => {
- const newValue = !booleanArray[index];
-
- // Emit update to server
- socket.emit("setArrayValue", { index, value: newValue });
- };
-
- const refreshArray = () => {
- socket.emit("getArray");
- };
-
- return (
-
-
Socket.IO Boolean Array
-
-
- Status:{" "}
-
- {isConnected ? "Connected" : "Disconnected"}
-
-
-
-
-
-
- {booleanArray.map((value, index) => (
-
- ))}
-
-
-
-
Current Array:
-
{JSON.stringify(booleanArray)}
-
-
- );
-}
+//function SocketTest() {
+// const [booleanArray, setBooleanArray] = useState(new Array(10).fill(false));
+// const [isConnected, setIsConnected] = useState(false);
+//
+// useEffect(() => {
+// // Connection status
+// socket.on("connect", () => {
+// setIsConnected(true);
+// console.log("Connected to server");
+// });
+//
+// socket.on("disconnect", () => {
+// setIsConnected(false);
+// console.log("Disconnected from server");
+// });
+//
+// // Listen for array updates
+// socket.on("arrayChanged", (newArray) => {
+// setBooleanArray(newArray);
+// });
+//
+// // Cleanup on unmount
+// return () => {
+// socket.off("connect");
+// socket.off("disconnect");
+// socket.off("arrayChanged");
+// };
+// }, []);
+//
+// const toggleValue = (index) => {
+// const newValue = !booleanArray[index];
+//
+// // Emit update to server
+// socket.emit("setArrayValue", { index, value: newValue });
+// };
+//
+// const refreshArray = () => {
+// socket.emit("getArray");
+// };
+//
+// return (
+//
+//
Socket.IO Boolean Array
+//
+//
+// Status:{" "}
+//
+// {isConnected ? "Connected" : "Disconnected"}
+//
+//
+//
+//
+//
+//
+// {booleanArray.map((value, index) => (
+//
+// ))}
+//
+//
+//
+//
Current Array:
+//
{JSON.stringify(booleanArray)}
+//
+//
+// );
+//}
export function App() {
return (
@@ -123,7 +123,6 @@ export function App() {
} />
} />
- } />
);
diff --git a/reader/src/ResourcePage.jsx b/reader/src/ResourcePage.jsx
index 93e1f2e..cf3c263 100644
--- a/reader/src/ResourcePage.jsx
+++ b/reader/src/ResourcePage.jsx
@@ -12,7 +12,7 @@ function LoadingWrapper() {
return ;
}
-function SelectResource({ onChange }) {
+function SelectResource({ onChange, refresh }) {
const subjects = useStore((state) => state.subjects);
const [selectedSubject, setSelectedSubject] = useState(-1);
@@ -38,6 +38,10 @@ function SelectResource({ onChange }) {
});
}
+ if (refresh) {
+ return null;
+ }
+
return (
{/* File Selector */}
@@ -130,6 +134,7 @@ function useFileContent(file) {
}
const Content = () => {
+ const [refresh, setRefresh] = useState(false);
const authToken = useStore((state) => state.config.token);
const changeConfig = useStore((state) => state.changeConfig);
const setAuthToken = (token) => changeConfig({ token });
@@ -157,6 +162,8 @@ const Content = () => {
const handleSave = async () => {
setIsSavingLoading(true);
+ setRefresh(true);
+
try {
const res = await apiInstance.post(
`/resources`,
@@ -179,8 +186,13 @@ const Content = () => {
}
} finally {
setTimeout(() => {
- setMessage(null);
- }, 8000);
+ //setMessage(null);
+ if (window) {
+ window.location.reload();
+ } else {
+ console.warn("No window");
+ }
+ }, 3000);
setIsSavingLoading(false);
setContent("");
@@ -251,7 +263,7 @@ const Content = () => {
// Main content screen
return (
-
setSelected(values)} />
+ setSelected(values)} refresh={refresh} />
{message && {message}
}
{selected && !isLoading && (
@@ -303,12 +315,12 @@ const Content = () => {
-
+
diff --git a/resource-provider/server.js b/resource-provider/server.js
index 59c1e54..58bc98a 100644
--- a/resource-provider/server.js
+++ b/resource-provider/server.js
@@ -57,34 +57,34 @@ app.use(express.urlencoded({ extended: true }));
app.use(morgan("tiny"));
// Socket connection handling
-io.on("connection", (socket) => {
- console.log("Client connected:", socket.id);
-
- // Send current array state to newly connected client
- socket.emit("arrayChanged", booleanArray);
-
- // Handle array updates from client
- socket.on("setArrayValue", (data) => {
- const { index, value } = data;
-
- if (index >= 0 && index < booleanArray.length) {
- booleanArray[index] = value;
- console.log(`Updated index ${index} to ${value}`);
-
- // Broadcast updated array to all clients
- io.emit("arrayChanged", booleanArray);
- }
- });
-
- // Handle getting current array state
- socket.on("getArray", () => {
- socket.emit("arrayChanged", booleanArray);
- });
-
- socket.on("disconnect", () => {
- console.log("Client disconnected:", socket.id);
- });
-});
+//io.on("connection", (socket) => {
+// console.log("Client connected:", socket.id);
+//
+// // Send current array state to newly connected client
+// socket.emit("arrayChanged", booleanArray);
+//
+// // Handle array updates from client
+// socket.on("setArrayValue", (data) => {
+// const { index, value } = data;
+//
+// if (index >= 0 && index < booleanArray.length) {
+// booleanArray[index] = value;
+// console.log(`Updated index ${index} to ${value}`);
+//
+// // Broadcast updated array to all clients
+// io.emit("arrayChanged", booleanArray);
+// }
+// });
+//
+// // Handle getting current array state
+// socket.on("getArray", () => {
+// socket.emit("arrayChanged", booleanArray);
+// });
+//
+// socket.on("disconnect", () => {
+// console.log("Client disconnected:", socket.id);
+// });
+//});
app.get("/_health", (req, res) => {
res.json({ healthy: true });