Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion application/backend/batches/sendMailsForRules.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";
import MailRule from "jc-shared/mail/mailRule.js";
import mailstore from "../lib/mailsender/mailstore.js";
import mailtransport from "../lib/mailsender/mailtransport.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";
import Vermietung from "jc-shared/vermietung/vermietung.js";
import { byDateRangeInAscendingOrder } from "./gigAndRentService.js";
import VeranstaltungFormatter from "jc-shared/veranstaltung/VeranstaltungFormatter.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/batches/sendMailsKasseFehlt.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { loggers } from "winston";
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";
import Konzert from "jc-shared/konzert/konzert.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";

import store from "../lib/konzerte/konzertestore.js";
import userstore from "../lib/users/userstore.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/batches/sendMailsMasterFehlt.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { loggers } from "winston";
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";
import Konzert from "jc-shared/konzert/konzert.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";

import store from "../lib/konzerte/konzertestore.js";
import userstore from "../lib/users/userstore.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/batches/sendMailsNightlyBar.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { loggers } from "winston";
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";
import mailtransport from "../lib/mailsender/mailtransport.js";
import usersService from "../lib/users/usersService.js";
import { byDateRangeInAscendingOrder } from "./gigAndRentService.js";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { loggers } from "winston";
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";
import mailtransport from "../lib/mailsender/mailtransport.js";
import usersService from "../lib/users/usersService.js";
import Vermietung from "jc-shared/vermietung/vermietung.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/batches/sendMailsPressetextFehlt.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { loggers } from "winston";
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";
import MailRule from "jc-shared/mail/mailRule.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";
import mailstore from "../lib/mailsender/mailstore.js";
import mailtransport from "../lib/mailsender/mailtransport.js";
import usersService from "../lib/users/usersService.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/batches/sendMailsStaffReminder.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../simpleConfigure.js";
import userstore from "../lib/users/userstore.js";
import mailtransport from "../lib/mailsender/mailtransport.js";
import mixVeranstaltungenMitUsers, { VerMitUser } from "jc-shared/commons/mixVeranstaltungenMitUsers.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/configure.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import conf, { SimpleConfigure } from "jc-shared/commons/simpleConfigure.js";
import conf, { SimpleConfigure } from "./simpleConfigure.js";
import path, { dirname } from "path";
import fs from "fs";
import { fileURLToPath } from "url";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/configureApp.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import ridersrest from "./lib/rider/ridersrest.js";
import passportInitializer from "./lib/middleware/passportInitializer.js";
import passportApiKeyInitializer from "./lib/middleware/passportApiKeyInitializer.js";
import { fileURLToPath } from "url";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "./simpleConfigure.js";

const __dirname = dirname(fileURLToPath(import.meta.url));

Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/commons/hashPassword.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import crypto from "crypto";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";

export function genSalt(): string {
const length = 64;
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/konzerte/imageService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import User from "jc-shared/user/user.js";
import fs from "fs/promises";
import { ImageOverviewRow } from "jc-shared/konzert/konzert.js";
import store from "./konzertestore.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import map from "lodash/map.js";
import sortBy from "lodash/sortBy.js";

Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/konzerte/konzerteService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import User from "jc-shared/user/user.js";

import store from "./konzertestore.js";
import groupBy from "lodash/groupBy.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import map from "lodash/map.js";
import flatMap from "lodash/flatMap.js";
import forEach from "lodash/forEach.js";
Expand Down
19 changes: 8 additions & 11 deletions application/backend/lib/konzerte/konzertestore.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import User from "jc-shared/user/user.js";

const persistence = pers("veranstaltungenstore", ["startDate", "endDate", "url"]);
const logger = winston.loggers.get("transactions");
import conf from "../../simpleConfigure.js";

function byDateRange(rangeFrom: DatumUhrzeit, rangeTo: DatumUhrzeit, sortOrder: "ASC" | "DESC") {
const result = persistence.listByField(
Expand All @@ -26,25 +27,21 @@ function byDateRangeInDescendingOrder(rangeFrom: DatumUhrzeit, rangeTo: DatumUhr
return byDateRange(rangeFrom, rangeTo, "DESC");
}

function now() {
return DatumUhrzeit.forISOString(conf.nowForDevelopment);
}

export default {
zukuenftigeMitGestern: function zukuenftigeMitGestern() {
const now = new DatumUhrzeit();
return byDateRangeInAscendingOrder(now.minus({ tage: 1 }), now.plus({ jahre: 10 }));
},

zukuenftige: function zukuenftige() {
const now = new DatumUhrzeit();
return byDateRangeInAscendingOrder(now, now.plus({ jahre: 10 }));
return byDateRangeInAscendingOrder(now().minus({ tage: 1 }), now().plus({ jahre: 10 }));
},

vergangene: function vergangene() {
const now = new DatumUhrzeit();
return byDateRangeInDescendingOrder(now.minus({ monate: 24 }), now);
return byDateRangeInDescendingOrder(now().minus({ monate: 24 }), now());
},

alle: function alle() {
const now = new DatumUhrzeit();
return byDateRangeInDescendingOrder(now.minus({ jahre: 20 }), now.plus({ jahre: 10 }));
return byDateRangeInDescendingOrder(now().minus({ jahre: 20 }), now().plus({ jahre: 10 }));
},

byDateRangeInAscendingOrder,
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/mailsender/mailtransport.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import * as nodemailer from "nodemailer";
import * as Mail from "nodemailer/lib/mailer";
import * as winston from "winston";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import MailBodyRenderer from "./mailbodyRenderer.js";
import MailMessage from "jc-shared/mail/mailMessage.js";

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import passport from "passport";
import { Strategy } from "passport-http-bearer";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import { loggers } from "winston";

const appLogger = loggers.get("application");
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/middleware/passportInitializer.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import passport from "passport";
import { ExtractJwt, Strategy, VerifiedCallback } from "passport-jwt";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import { loggers } from "winston";
import store from "../users/userstore.js";

Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/pdf/pdfGeneration.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { NextFunction, Response } from "express";
import DatumUhrzeit from "jc-shared/commons/DatumUhrzeit.js";
import Konzert from "jc-shared/konzert/konzert.js";

import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import store from "../konzerte/konzertestore.js";
import vermietungenstore from "../vermietungen/vermietungenstore.js";
import konzerteService from "../konzerte/konzerteService.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/persistence/sqlitePersistence.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import Database, { SqliteError } from "better-sqlite3";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import { loggers } from "winston";
import User from "jc-shared/user/user.js";
import { areDifferentForHistoryEntries } from "jc-shared/commons/comparingAndTransforming.js";
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/site/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import store from "../konzerte/konzertestore.js";
import { resToJson } from "../commons/replies.js";
import userstore from "../users/userstore.js";
import { hashPassword } from "../commons/hashPassword.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import refreshstore from "./refreshstore.js";
import usersService from "../users/usersService.js";
import User, { SUPERUSERS } from "jc-shared/user/user.js";
Expand Down
16 changes: 7 additions & 9 deletions application/backend/lib/vermietungen/vermietungenstore.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import pers from "../persistence/sqlitePersistence.js";
import misc from "jc-shared/commons/misc.js";
import Vermietung from "jc-shared/vermietung/vermietung.js";
import User from "jc-shared/user/user.js";
import conf from "../../simpleConfigure.js";

const persistence = pers("vermietungenstore", ["startDate", "endDate", "url"]);
const logger = winston.loggers.get("transactions");
Expand All @@ -26,20 +27,17 @@ function byDateRangeInDescendingOrder(rangeFrom: DatumUhrzeit, rangeTo: DatumUhr
return byDateRange(rangeFrom, rangeTo, "DESC");
}

function now() {
return DatumUhrzeit.forISOString(conf.nowForDevelopment);
}

export default {
zukuenftigeMitGestern: function zukuenftigeMitGestern() {
const now = new DatumUhrzeit();
return byDateRangeInAscendingOrder(now.minus({ tage: 1 }), now.plus({ jahre: 10 }));
},

zukuenftige: function zukuenftige() {
const now = new DatumUhrzeit();
return byDateRangeInAscendingOrder(now, now.plus({ jahre: 10 }));
return byDateRangeInAscendingOrder(now().minus({ tage: 1 }), now().plus({ jahre: 10 }));
},

vergangene: function vergangene() {
const now = new DatumUhrzeit();
return byDateRangeInDescendingOrder(now.minus({ monate: 12 }), now);
return byDateRangeInDescendingOrder(now().minus({ monate: 12 }), now());
},

alle: function alle() {
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/wiki/gitExec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import fs from "fs/promises";
import Fs from "fs/promises";
import childProcess from "child_process";
import util from "util";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";

const exec = util.promisify(childProcess.exec);

Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/wiki/gitmech.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import gitExec from "./gitExec.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import filter from "lodash/filter.js";

const workTree = conf.wikipath;
Expand Down
2 changes: 1 addition & 1 deletion application/backend/lib/wiki/wikiService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import map from "lodash/map.js";
import { UploadedFile } from "jc-shared/konzert/konzert.js";
import fs from "fs";
import path from "path";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";

const wikiUploadDir = conf.wikiUploadDir;

Expand Down
2 changes: 2 additions & 0 deletions application/backend/rest/mail.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import MailMessage from "jc-shared/mail/mailMessage.js";
import map from "lodash/map.js";
import forEach from "lodash/forEach.js";
import filter from "lodash/filter.js";
import conf from "../simpleConfigure.js";

const app = express();

Expand All @@ -40,6 +41,7 @@ app.post("/rundmail", [checkSuperuser], async (req: Request, res: Response) => {
const user = req.user as User;

const message = MailMessage.forJsonAndUser(JSON.parse((fields.message ?? [])[0]), user);
message.from = MailMessage.formatEMailAddress(`${user.name} via backoffice.jazzclub.de`, conf.senderAddress);
if (files.dateien) {
message.attachments = await Promise.all(
// eslint-disable-next-line @typescript-eslint/no-explicit-any
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import path from "node:path";
import { MailAddress } from "../mail/mailMessage.js";
import { MailAddress } from "jc-shared/mail/mailMessage.js";
import assign from "lodash/assign.js";

export class SimpleConfigure {
Expand Down
2 changes: 1 addition & 1 deletion application/backend/start.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import loggers from "./initWinston.js";
import express from "express";
import { createServer } from "http";
import configureApp from "./configureApp.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "./simpleConfigure.js";

const app = express();
configureApp(app);
Expand Down
10 changes: 4 additions & 6 deletions application/backend/test/mailsender/mailRendering.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { describe, expect, it } from "vitest";

import "jc-backend/configure.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import conf from "../../simpleConfigure.js";
import { toTransportObject } from "jc-backend/lib/mailsender/mailtransport.js";
import MailMessage from "jc-shared/mail/mailMessage.js";
import User from "jc-shared/user/user.js";
Expand Down Expand Up @@ -41,14 +41,12 @@ Error: "keiner"`);
});

it("uses the given sender in Name, but not in Address", () => {
const message = MailMessage.forJsonAndUser(
{ subject: "", body: "", bcc: [] },
new User({ name: "Andreas von Jazzclub", email: "andreas@jazz.club" }),
);
const user = new User({ name: "Andreas von Jazzclub", email: "andreas@jazz.club" });
const message = MailMessage.forJsonAndUser({ subject: "", body: "", bcc: [] }, user);
const res = toTransportObject(message, false);
expect(res.from).to.eql({
address: "sender@jazz.club",
name: "Andreas von Jazzclub via backoffice.jazzclub.de",
name: "Der Sender",
});
expect(res.replyTo).to.eql({
address: "andreas@jazz.club",
Expand Down
3 changes: 1 addition & 2 deletions application/shared/commons/DatumUhrzeit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import weekOfYear from "dayjs/plugin/weekOfYear.js";
import "dayjs/locale/de.js";
import utc from "dayjs/plugin/utc.js";
import timezone from "dayjs/plugin/timezone.js";
import conf from "./simpleConfigure.js";

dayjs.extend(customParseFormat);
dayjs.extend(duration);
Expand All @@ -37,7 +36,7 @@ export default class DatumUhrzeit {
private readonly val: Dayjs;

constructor(dateTime?: Dayjs) {
this.val = dateTime && dateTime.isValid() ? dateTime : dayjs(conf.nowForDevelopment);
this.val = dateTime && dateTime.isValid() ? dateTime : dayjs();
}

// Konstruktoren
Expand Down
2 changes: 0 additions & 2 deletions application/shared/mail/mailMessage.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import User from "../user/user.js";
import conf from "jc-shared/commons/simpleConfigure.js";
import map from "lodash/map.js";

export type MailAddress = { name: string; address: string };
Expand All @@ -23,7 +22,6 @@ export default class MailMessage {
const message = new MailMessage({ subject });
message.body = body;
message.bcc = bcc;
message.from = MailMessage.formatEMailAddress(`${user.name} via backoffice.jazzclub.de`, conf.senderAddress);
message.replyTo = MailMessage.formatEMailAddress(user.name, user.email);
return message;
}
Expand Down
5 changes: 5 additions & 0 deletions application/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"compilerOptions": {
"types": ["vitest/globals"]
}
}
14 changes: 14 additions & 0 deletions application/vitest.setup.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import { server } from "./vue/test/mockserver/node.js";

beforeAll(() => {
console.log("setup server");
server.listen();
});

afterEach(() => {
server.resetHandlers();
});

afterAll(() => {
server.close();
});
2 changes: 2 additions & 0 deletions application/vue/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
"@testing-library/dom": "10.4.0",
"@testing-library/jest-dom": "6.6.3",
"@testing-library/react": "16.2.0",
"@testing-library/user-event": "14.6.1",
"@types/color": "4.2.0",
"@types/numeral": "2.0.5",
"@types/react": "19.0.10",
Expand All @@ -37,6 +38,7 @@
"jest-matchmedia-mock": "1.1.0",
"jose": "6.0.3",
"jsdom": "26.0.0",
"msw": "2.7.3",
"numeral": "2.0.6",
"react": "19.0.0",
"react-bootstrap-icons": "1.11.5",
Expand Down
2 changes: 1 addition & 1 deletion application/vue/src/components/content/InnerContent.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ export default function InnerContent() {
const ref = useRef<HTMLDivElement>(null);

useEffect(() => {
ref.current?.scroll({ top: 0 });
ref.current?.scroll?.({ top: 0 });
});

if (loginState === LoginState.UNKNOWN) {
Expand Down
Loading