adding default lock offset

This commit is contained in:
2024-10-01 14:05:33 -06:00
parent 44d1823028
commit b14c12d462
2 changed files with 25 additions and 1 deletions

View File

@@ -13,6 +13,7 @@ import { LocalAssignmentGroup } from "@/models/local/assignment/localAssignmentG
import {
dateToMarkdownString,
getDateFromString,
getDateFromStringOrThrow,
} from "@/models/local/timeUtils";
import React, { useState } from "react";
@@ -66,6 +67,18 @@ export default function NewItemForm({
dueDate === ""
? dueDate
: dateToMarkdownString(defaultDate ?? new Date());
const lockAt =
settings.defaultLockHoursOffset === undefined
? undefined
: dateToMarkdownString(
addHoursToDate(
getDateFromStringOrThrow(
dueDate,
"getting default lock time"
),
settings.defaultLockHoursOffset
)
);
console.log("submitting");
if (!moduleName) {
@@ -77,6 +90,7 @@ export default function NewItemForm({
name,
description: "",
dueAt,
lockAt,
submissionTypes: settings.defaultAssignmentSubmissionTypes,
allowedFileUploadExtensions: settings.defaultFileUploadTypes,
rubric: [],
@@ -90,6 +104,7 @@ export default function NewItemForm({
name,
description: "",
dueAt,
lockAt,
shuffleAnswers: true,
showCorrectAnswers: true,
oneQuestionAtATime: true,
@@ -160,3 +175,9 @@ export default function NewItemForm({
</form>
);
}
function addHoursToDate(date: Date, hours: number): Date {
const newDate = new Date(date.getTime());
newDate.setHours(newDate.getHours() + hours);
return newDate;
}

View File

@@ -18,7 +18,10 @@ export default function DefaultLockOffset() {
const id = setTimeout(() => {
try {
const hoursNumber = parseInt(hoursOffset);
if (hoursNumber && hoursNumber !== settings.defaultLockHoursOffset) {
if (
!Number.isNaN(hoursNumber) &&
hoursNumber !== settings.defaultLockHoursOffset
) {
updateSettings.mutate({
...settings,
defaultLockHoursOffset: hoursNumber,