MCPcopy Create free account
hub / github.com/RealDevSquad/website-backend / updateStatusOnTaskCompletion

Function updateStatusOnTaskCompletion

models/userStatus.js:458–500  ·  view source on GitHub ↗
(userId)

Source from the content-addressed store, hash-verified

456 case userState.OOO:
457 return updateFutureStatusToState(userStatusModel, latestStatusData, userState.IDLE);
458 case userState.IDLE:
459 return generateAlreadyExistingStatusResponse(userState.IDLE);
460 default:
461 await addGroupIdleRoleToDiscordUser(userId);
462 return updateCurrentStatusToState(userStatusModel, latestStatusData, userState.IDLE);
463 }
464 }
465 } catch (error) {
466 return generateErrorResponse(error.message);
467 }
468};
469
470const batchUpdateUsersStatus = async (users) => {
471 const currentTimeStamp = new Date().getTime();
472 const batch = firestore.batch();
473 const summary = {
474 usersCount: users.length,
475 unprocessedUsers: 0,
476 onboardingUsersAltered: 0,
477 onboardingUsersUnaltered: 0,
478 activeUsersAltered: 0,
479 activeUsersUnaltered: 0,
480 idleUsersAltered: 0,
481 idleUsersUnaltered: 0,
482 };
483
484 for (const { userId, state } of users) {
485 let latestStatusData;
486 try {
487 latestStatusData = await getUserStatus(userId);
488 } catch (error) {
489 summary.unprocessedUsers++;
490 continue;
491 }
492 const { id, userStatusExists, data } = latestStatusData;
493 const statusToUpdate = {
494 state,
495 message: "",
496 from: new Date().setUTCHours(0, 0, 0, 0),
497 until: "",
498 updatedAt: currentTimeStamp,
499 };
500
501 if (!userStatusExists || !data?.currentStatus) {
502 const newUserStatusRef = userStatusModel.doc();
503 const newUserStatusData = {

Callers 3

updateTaskFunction · 0.85
updateTaskStatusFunction · 0.85

Tested by

no test coverage detected