Merge remote-tracking branch 'origin/main' into production

This commit is contained in:
Dobromir Popov
2024-03-13 13:34:31 +02:00
4 changed files with 31 additions and 8 deletions

View File

@ -560,7 +560,7 @@ async function DeleteSchedule(axios: Axios, date: Date, forDay: Boolean | undefi
async function CreateCalendarForUser(eventId: string | string[] | undefined) {
try {
CAL.authorizeNew();
//CAL.authorizeNew();
CAL.createEvent(eventId);
} catch (error) {
console.log(error);

View File

@ -87,8 +87,10 @@ export default function MySchedulePage({ assignments }) {
<dt className="text-sm font-medium text-gray-500">Действия</dt>
<dd className="mt-1 text-sm text-gray-900 sm:mt-0 sm:col-span-2">
<button
className="mr-2 mb-2 inline-flex items-center px-3 py-2 border border-transparent text-sm leading-4 font-medium rounded-md shadow-sm text-white bg-green-600 hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-500"
onClick={() => AddToGoogleCalendar(assignment.id)}
className="mr-2 mb-2 inline-flex items-center px-3 py-2 border border-transparent text-sm leading-4 font-medium rounded-md shadow-sm text-white bg-green-600 hover:bg-green-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-green-500 disabled"
disabled={true}
// disabled={assignment.isInGoogleCalendar}
onClick={() => SaveEventsInGoogleCalendar(assignment)}
>
Добави в календар
</button>
@ -128,7 +130,6 @@ export default function MySchedulePage({ assignments }) {
onChange={(publisher) => {
setIsConfirmModalOpen(true);
setNewPublisher(publisher);
}}
showAllAuto={true}
showSearch={true}
@ -164,14 +165,18 @@ export const getServerSideProps = async (context) => {
}
const prisma = common.getPrismaClient();
const publisher = await prisma.publisher.findMany({
const monthInfo = common.getMonthInfo(new Date());
//minus 1 day from the firstMonday to get the last Sunday
const lastSunday = new Date(monthInfo.firstMonday);
lastSunday.setDate(lastSunday.getDate() - 1);
const publisher = await prisma.publisher.findUnique({
where: {
id: session.user.id,
assignments: {
some: {
shift: {
startTime: {
gte: new Date(),
gte: lastSunday,
},
},
},
@ -200,7 +205,7 @@ export const getServerSideProps = async (context) => {
},
});
const assignments = publisher[0]?.assignments || [];
const assignments = publisher?.assignments || [];
const transformedAssignments = assignments?.map(assignment => {
if (assignment.shift && assignment.shift.startTime) {

View File

@ -474,7 +474,24 @@ createEvent = async (event) => {
}
};
SaveEventsInGoogleCalendar = async function SaveEventsInGoogleCalendar(events) {
// Load client secrets from a local file.
try {
const content = await fs.readFile(CREDENTIALS_PATH);
// Authorize a client with credentials, then call the Google Calendar API.
authorize(JSON.parse(content), createEvent);
} catch (err) {
console.log("Error loading client secret file:", err);
}
};
exports.GenerateICS = GenerateICS;
exports.createEvent = createEvent;
exports.SaveEventsInGoogleCalendar = SaveEventsInGoogleCalendar;
createEvent();
//createEvent();

View File

@ -288,6 +288,7 @@ exports.getMonthDatesInfo = function (date) {
nrOfWeeks: Math.ceil((lastMonday.getDate() - firstMonday.getDate()) / 7)
};
};
exports.getMonthInfo = exports.getMonthDatesInfo;
exports.getMonthlyScheduleRange = function (date) {
let info = exports.getMonthDatesInfo(date);