+
{
const [dataLoggerEnabled, setDataLoggerEnabled] = useState(false);
const [maxMemBufferSize, setMaxMemBufferSize] = useState(0);
const [maxDiskBufferSize, setMaxDiskBufferSize] = useState(0);
+ const [dtcEnabled, setDTCEnabled] = useState(false);
useEffect(() => {
setTitle("Add Vehicle");
@@ -65,6 +66,10 @@ const MainForm = () => {
setDataLoggerEnabled(event.target.checked);
}
+ const onDtcEnabledChange = (event) => {
+ setDTCEnabled(event.target.checked);
+ }
+
const onMaxMemBufferSizeChange = (event) => {
setMaxMemBufferSize(event.target.value);
}
@@ -84,7 +89,8 @@ const MainForm = () => {
enabled: canbusEnabled,
data_logger_enabled: canbusEnabled ? dataLoggerEnabled : false,
max_mem_buffer_size: canbusEnabled ? parseInt(maxMemBufferSize) : 0,
- max_disk_buffer_size: canbusEnabled && dataLoggerEnabled ? parseInt(maxDiskBufferSize) : 0
+ max_disk_buffer_size: canbusEnabled && dataLoggerEnabled ? parseInt(maxDiskBufferSize) : 0,
+ dtc_enabled: dtcEnabled
}
};
@@ -166,6 +172,12 @@ const MainForm = () => {
disabled={!canbusEnabled}
/>
} label="Data Logger Enabled" />
+
+ } label="DTC Enabled" />
- Data Logger Enabled
+ DTC Enabled
diff --git a/src/components/Cars/Update/index.jsx b/src/components/Cars/Update/index.jsx
index b1d47dd..494c448 100644
--- a/src/components/Cars/Update/index.jsx
+++ b/src/components/Cars/Update/index.jsx
@@ -150,7 +150,7 @@ const MainForm = () => {
data_logger_enabled: canbusEnabled ? dataLoggerEnabled : false,
max_mem_buffer_size: canbusEnabled ? parseInt(maxMemBufferSize) : 0,
max_disk_buffer_size: canbusEnabled && dataLoggerEnabled ? parseInt(maxDiskBufferSize) : 0,
- dtc_enabled: canbusEnabled ? dtcEnabled : false
+ dtc_enabled: dtcEnabled
},
debug_mask: debugMaskEl.current?.value
};
@@ -382,9 +382,8 @@ const MainForm = () => {
- } label="Data Logger Enabled" />
+ } label="DTC Enabled" />
{
}
};
- const addFleetVehicle = async (name, vehicle, token) => {
+ const addFleetVehicles = async (name, vehicles, token) => {
try {
setBusy(true);
validateFleetName(name);
- validateVIN(vehicle.vin);
- const result = await api.addFleetVehicle(name, vehicle, token);
+ for (const vin of vehicles.vins) {
+ validateVIN(vin);
+ }
+
+ const result = await api.addFleetVehicles(name, vehicles, token);
if (result.error) {
throw new Error(`Add fleet vehicle error. ${result.message}`);
}
@@ -250,7 +253,7 @@ export const FleetProvider = ({ children }) => {
fleetVehicles,
totalFleetVehicles,
getFleetVehicles,
- addFleetVehicle,
+ addFleetVehicles,
deleteFleetVehicle,
fleetCANFilters,
diff --git a/src/components/Contexts/FleetContext.test.jsx b/src/components/Contexts/FleetContext.test.jsx
index f595e2a..93b88a1 100644
--- a/src/components/Contexts/FleetContext.test.jsx
+++ b/src/components/Contexts/FleetContext.test.jsx
@@ -391,14 +391,14 @@ describe("FleetContext", () => {
});
});
- describe("addFleetVehicle", () => {
+ describe("addFleetVehicles", () => {
beforeEach(async () => {
const TestComp = () => {
- const { busy, addFleetVehicle } = useFleetContext();
+ const { busy, addFleetVehicles } = useFleetContext();
const { message, setMessage } = useStatusContext();
const add = async (name, vehicle) => {
try {
- await addFleetVehicle(name, vehicle);
+ await addFleetVehicles(name, vehicle);
} catch (e) {
setMessage(e.message);
}
@@ -417,8 +417,8 @@ describe("FleetContext", () => {
onClick={() => add({})}
/>