MCPcopy Create free account
hub / github.com/UseBetterCanvas/bettercanvas / createCardAssignment

Function createCardAssignment

js/content.js:1359–1378  ·  view source on GitHub ↗
(assignment)

Source from the content-addressed store, hash-verified

1357*/
1358
1359function createCardAssignment(assignment) {
1360 let assignmentContainer = document.createElement("div");
1361 assignmentContainer.className = "bettercanvas-assignment-container";
1362 let assignmentName = makeElement("a", assignmentContainer, { "className": "bettercanvas-assignment-link", "textContent": assignment.plannable.title, "href": assignment.html_url });
1363 let assignmentDueAt = makeElement("span", assignmentContainer, { "className": "bettercanvas-assignment-dueat", "textContent": formatCardDue(new Date(assignment.plannable_date)) });
1364 if (assignment.overdue === true) assignmentDueAt.classList.add("bettercanvas-assignment-overdue");
1365 if (assignment?.submissions?.submitted === true) {
1366 assignmentContainer.classList.add("bettercanvas-completed");
1367 } else {
1368 if (options.assignment_states[assignment.plannable_id]?.["crs"] === true) {
1369 assignmentContainer.classList.add("bettercanvas-completed");
1370 }
1371 }
1372 assignmentDueAt.addEventListener('mouseup', function () {
1373 assignmentContainer.classList.toggle("bettercanvas-completed");
1374 const status = assignmentContainer.classList.contains("bettercanvas-completed");
1375 setAssignmentState(assignment.plannable_id, { "crs": status, "expire": assignment.plannable_date });
1376 });
1377 return assignmentContainer;
1378}
1379
1380let cardAssignments;
1381

Callers 1

preloadAssignmentElsFunction · 0.85

Calls 3

formatCardDueFunction · 0.85
setAssignmentStateFunction · 0.85
makeElementFunction · 0.70

Tested by

no test coverage detected