Skip to main content

Verträge - Releases

← App details

Nextcloud 34

Verträge 1.2.5
Release Details
UpdatedJuly 17, 2026, 12:27 p.m.
Changelog

Added

  • Befristete Verträge zeigen jetzt einen eigenen Frühwarn-Chip „endet", wenn ihr Enddatum ins Erinnerungsfenster fällt — bisher gab es diesen Hinweis nur bei Verträgen mit Kündigungsfrist (#238)
  • Status-Chips und Akzentbalken haben jetzt eigene Dark-Mode-Farben und bleiben im dunklen Nextcloud-Theme gut lesbar (#204)

Changed

  • Währungsbeträge werden jetzt in der Sprache/Region der Nextcloud-Oberfläche formatiert statt fest in deutschem Format (#204)
  • Datumsangaben folgen jetzt ebenfalls der Sprache/Region der Nextcloud-Oberfläche statt fest im deutschen Format (Nachgang zu #204)

Security

  • Abhängigkeiten aktualisiert und alle offenen Sicherheitswarnungen behoben (u.a. dompurify, form-data, vite, esbuild, js-yaml, fast-xml-parser); npm audit meldet keine Schwachstellen mehr
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureSetLU4KaxYBImcoTdDXSM484uXuOHcqsDiacdyxmrhP6h5gSWB8Di9sqw3uTh7HZqrx1ieZ/5AeyU9qYh5Ncbk6zeKQdxoc4KFpaKG5u3hVJxztknHohSnOG8vIJbJJESB0bgZhb2a5MrmDdAjuu4eu3D75fEIoKSxLhbcGepjOoK5NK0ldyZjEfGHNwIMzpAPv9jm8GMwXrprVc0hIsTX/0i72q9teEBw3jIwT6ox6Mza1z1N4LAjY4I2Gxrvr0o9LmNHlnJBhqRlKRmu+yQQoH/KPAdDtZEU7p30+ichX1/O2oqJe2kS6p7HUExl+hSClQd8YRmvo98kiiMMCfTA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.4
Release Details
UpdatedJuly 12, 2026, 10:02 p.m.
Changelog

Added

  • Befristete Verträge sind in der Vertragsliste und im Formular jetzt auf einen Blick erkennbar: Der Status-Chip „Laufend" und der farbige Akzentbalken erscheinen bei ihnen in einem dunkleren Grün, ein Tooltip erklärt die Befristung (#277)

Changed

  • Das Datums-Label „Kündigen bis" heißt jetzt „Kündbar bis" — es beschreibt neutral, bis wann gekündigt werden kann, statt wie eine Aufforderung zu klingen. Gilt für die Vertragsliste und das Formular (dort auch „Kündbar bis (berechnet)") (#275)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
Signatureg5+CIDwuaoKaZc09+sPadyC9hXDP4i7+3czflDyZnsdigv7bSgZ6/2StJ/LhDf1hD8jBiGExVVnh0fz9LOvFLf//oa4fe22IZKEYJoXH/Zm3Y6eBpf5yskCJfUzxwXL7Sopcv+3HtPzUzQp9FOlqZpgNqo5cSMkUccm2vUGJHqmUjsm6jP3qsLdCfE9fQ43ePYBD7dhfc15Cv/nBj7LCv0xi5DELk2vQRkvLSpziBc+OibwIu+R3xPO8zIPqBdADrcq+yNue+E9EFHugletKSEhV34Q3EkGrqldTXRYwiAScDXQY0WgKiTNq4l1EJdwLYLyjFOwhhWemRit1zzSfoQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.3
Release Details
UpdatedJuly 11, 2026, 12:50 p.m.
Changelog

Fixed

  • Tab-Taste funktionierte in der gesamten App nicht mehr (seit 1.2.0): Die dauerhaft gemounteten, unsichtbaren Formular-Modals aktivierten ihre Fokus-Fallen schon beim Seitenladen und verschluckten jeden Tab-Druck. Die Modals werden jetzt erst beim Öffnen erzeugt; Esc schließt das Formular außerdem auch dann, wenn der Fokus in einem Eingabefeld steht (#266)
  • Datumseingabe: Beim Ziffer-für-Ziffer-Eintippen wurde das Jahr auf 19XX umgeschrieben (z.B. 1906 statt 2026) und die laufende Eingabe zerstört. Das Jahr lässt sich jetzt normal eintippen (#258)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturedjKIMBNn5BASPxCnmwrImEjthNcUvx8wxMvIvYyKKlU4yhUFRhfIbiE8DwvKhYg7lc0IfxSKRdO0wU7dwl2brNvGv2ual1vJFzW6GlsWW4CoxC/VBCT9xwDAAUU1kxd5FQOtbQFDsxZBpjVA4464x7uCujvGwBl+Yc79SqpoKKmXARibK/gnRnwjkmLFSbmBUeuOZfYpomcjHFdjESQQtFLz4VwyLIFnn2fXrUgawKo2qQpVWflnFKDPY8v50tMCOEsf3KUyxbOyEOl2LYpeDeeWOX2SgWq2OK2ixtYYa8Z67zE5eqlggH7/cNxeEJp9tD2kD6qjU0ahVwSsB485tA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.2
Release Details
UpdatedJuly 10, 2026, 9:38 a.m.
Changelog

Fixed

  • Gekündigte Verträge zeigten ihr „gekündigt zum"-Datum unter dem irreführenden Spaltenkopf „Kündigen bis". Jede Zeile der Vertragsliste trägt jetzt ein kleines Label, das benennt, welches Datum gezeigt wird („Gekündigt zum" / „Kündigen bis" / „Läuft bis"); der Spaltenkopf heißt neutral „Frist / Ende" (#252)
  • Unbefristete Verträge ließen sich nicht anlegen, wenn (z.B. durch eine fehlerhafte Jahres-Eingabe) ein Enddatum im Feld stand: Bei Vertragstyp „Unbefristet" ist das Enddatum-Feld jetzt deaktiviert und wird nie gespeichert — ein versehentliches Enddatum kann das Anlegen nicht mehr blockieren. Bei befristeten Verträgen nennt die Fehlermeldung jetzt den Ausweg (Enddatum per ×-Symbol entfernen) (#257)

Changed

  • Release-Härtung: Die Composer-Runtime-Abhängigkeiten (vendor/, u.a. der PDF-Parser) werden jetzt wie das kompilierte CSS mit ausgeliefert und sind über einen Packaging-Guard gegen versehentliches Weglassen im Release-Paket abgesichert. Verhindert eine Wiederholung der 1.2.0-Regression (#249, Follow-up zu #245)
  • Intern: Der automatische PR-Review-Workflow wurde gehärtet (Diff-Beschaffung, Berechtigungen, Abbruch-Verhalten) — keine Auswirkung auf die App selbst
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJFHuGlWAqS6qcWy1oIivanlw2pvBaheNEDMZOTMx5PX398UUnFkvs936o5fhkvvB0LtqbrDRNjcOMD7+FhSzgajxkQyrUHeD99yccdmWoQ/o8bISXzunyD29N8J0BfkiNI7hrR5+T6IKLvBzzzvlMxFt4WlL5CpNeGJKfIBijA5tldhKd4d3y7dcD4Sw/SKwOiufgcTb+iP3t44jEjfGptLC1b542hanCHpnAPQ5R3ylYXUGBHbsAH+o4h7R8UbdkfVuRKh9LK4eG5fs+XTN80npQOA4w9KT3QXXlgwypFWWxAF6LANhiHlR51no/cJ7DYY7lUkw4ibaNZntPGK20Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.1
Release Details
UpdatedJuly 6, 2026, 8:49 p.m.
Changelog

Fixed

  • Oberfläche seit 1.2.0 komplett ohne Styling (kaputtes Layout, Nextcloud-Hintergrund scheint durch): das kompilierte CSS-Bundle fehlte im Release-Paket. Das CSS wird jetzt wie das JavaScript mit ausgeliefert (#245)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
Signatureh4QEgBwnjwrISLNm1xQNCSo536UQbvkgSDQSeuvSMsDhyh8Sgc5mppzWu4X4bq0mkGIFpbQxj5kpUPo+K5+1/edpV10ptXtf24WY90tC38nwCddgn97ZvmjRRjOOKzBAbDcIFdOoze93GnptwhHXiTm+JmgocA383KgpPx5ZoM72DhSQN9A5Xw4pngEKxf8awyXTpZcy+k8V6V13nnqWQ+aovTP99pUEbhpZMrH1RJcATKc/1cuZhVKDuue96EU5retjehFMn/J7naHJF60VyzlACyvokFVtsk4F2oGANz8WEXFcgXKPDi4q5bjoFNl3c9BFQPbAsA6Hl456JeT8ng==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.0
Release Details
UpdatedJuly 6, 2026, 3:29 a.m.
Changelog

Added

  • „Gekündigt zum" wird beim Eintragen von „Gekündigt am" automatisch mit dem Enddatum des Vertrags vorbelegt und bleibt änderbar – das Datum muss nicht doppelt eingegeben werden (#213)

Fixed

  • Sortierung nach „Kündigen bis" berücksichtigt jetzt auch befristete Verträge: sie landeten zuvor am Listenende, obwohl die Spalte ihr Enddatum anzeigte (#217)
  • Monatliche Kosten: Verträge mit automatischer Verlängerung, die mit ihrem ursprünglichen (abgelaufenen) Enddatum eingetragen sind, werden wieder eingerechnet (#215)

Changed

  • Status „Kündigung fällig" heißt jetzt einheitlich „Kündigungsfrist endet", passend zum gleichnamigen Filter (#216)
  • Die Kennzahl „Monatliche Kosten" ist als grobe Orientierung gekennzeichnet („ca.", Untertitel „Grobe Orientierung"), da sie Netto/Brutto und unterjährige Effekte nur näherungsweise abbilden kann (#215)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturegO8R8vrZxxOWSUMcKrDzzbo6rM4SRlZIFy7wDcI49HuPgzYAM5DMgAc69AWSYHrh+aa0Js5fLXLwSSRW8klKp2W9JnxNe2v4ZQbX/+j20CNQxRpFh7HS6/q3E4ePC50ikMqO8RNuojOMk8+rzmxl9Xk9E6Ogj5ovPULRESq7visZtWAGUFeWivzMEJNbgAxbe621qd8rv11788/6C/qiT1hdN8PowWJrnompSx/4L6SXPyhpYNUrE+TQOsdCkv4Fj/XUP4PguuV2EJUOv1zJB1+SIyoYOZ1iv5Ke1YBENcngClIKCJW2WdVdAwXX99sT7woecxvJoF0kl0ug0KzZxg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0

Nextcloud 33

Verträge 1.2.5
Release Details
UpdatedJuly 17, 2026, 12:27 p.m.
Changelog

Added

  • Befristete Verträge zeigen jetzt einen eigenen Frühwarn-Chip „endet", wenn ihr Enddatum ins Erinnerungsfenster fällt — bisher gab es diesen Hinweis nur bei Verträgen mit Kündigungsfrist (#238)
  • Status-Chips und Akzentbalken haben jetzt eigene Dark-Mode-Farben und bleiben im dunklen Nextcloud-Theme gut lesbar (#204)

Changed

  • Währungsbeträge werden jetzt in der Sprache/Region der Nextcloud-Oberfläche formatiert statt fest in deutschem Format (#204)
  • Datumsangaben folgen jetzt ebenfalls der Sprache/Region der Nextcloud-Oberfläche statt fest im deutschen Format (Nachgang zu #204)

Security

  • Abhängigkeiten aktualisiert und alle offenen Sicherheitswarnungen behoben (u.a. dompurify, form-data, vite, esbuild, js-yaml, fast-xml-parser); npm audit meldet keine Schwachstellen mehr
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureSetLU4KaxYBImcoTdDXSM484uXuOHcqsDiacdyxmrhP6h5gSWB8Di9sqw3uTh7HZqrx1ieZ/5AeyU9qYh5Ncbk6zeKQdxoc4KFpaKG5u3hVJxztknHohSnOG8vIJbJJESB0bgZhb2a5MrmDdAjuu4eu3D75fEIoKSxLhbcGepjOoK5NK0ldyZjEfGHNwIMzpAPv9jm8GMwXrprVc0hIsTX/0i72q9teEBw3jIwT6ox6Mza1z1N4LAjY4I2Gxrvr0o9LmNHlnJBhqRlKRmu+yQQoH/KPAdDtZEU7p30+ichX1/O2oqJe2kS6p7HUExl+hSClQd8YRmvo98kiiMMCfTA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.4
Release Details
UpdatedJuly 12, 2026, 10:02 p.m.
Changelog

Added

  • Befristete Verträge sind in der Vertragsliste und im Formular jetzt auf einen Blick erkennbar: Der Status-Chip „Laufend" und der farbige Akzentbalken erscheinen bei ihnen in einem dunkleren Grün, ein Tooltip erklärt die Befristung (#277)

Changed

  • Das Datums-Label „Kündigen bis" heißt jetzt „Kündbar bis" — es beschreibt neutral, bis wann gekündigt werden kann, statt wie eine Aufforderung zu klingen. Gilt für die Vertragsliste und das Formular (dort auch „Kündbar bis (berechnet)") (#275)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
Signatureg5+CIDwuaoKaZc09+sPadyC9hXDP4i7+3czflDyZnsdigv7bSgZ6/2StJ/LhDf1hD8jBiGExVVnh0fz9LOvFLf//oa4fe22IZKEYJoXH/Zm3Y6eBpf5yskCJfUzxwXL7Sopcv+3HtPzUzQp9FOlqZpgNqo5cSMkUccm2vUGJHqmUjsm6jP3qsLdCfE9fQ43ePYBD7dhfc15Cv/nBj7LCv0xi5DELk2vQRkvLSpziBc+OibwIu+R3xPO8zIPqBdADrcq+yNue+E9EFHugletKSEhV34Q3EkGrqldTXRYwiAScDXQY0WgKiTNq4l1EJdwLYLyjFOwhhWemRit1zzSfoQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.3
Release Details
UpdatedJuly 11, 2026, 12:50 p.m.
Changelog

Fixed

  • Tab-Taste funktionierte in der gesamten App nicht mehr (seit 1.2.0): Die dauerhaft gemounteten, unsichtbaren Formular-Modals aktivierten ihre Fokus-Fallen schon beim Seitenladen und verschluckten jeden Tab-Druck. Die Modals werden jetzt erst beim Öffnen erzeugt; Esc schließt das Formular außerdem auch dann, wenn der Fokus in einem Eingabefeld steht (#266)
  • Datumseingabe: Beim Ziffer-für-Ziffer-Eintippen wurde das Jahr auf 19XX umgeschrieben (z.B. 1906 statt 2026) und die laufende Eingabe zerstört. Das Jahr lässt sich jetzt normal eintippen (#258)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturedjKIMBNn5BASPxCnmwrImEjthNcUvx8wxMvIvYyKKlU4yhUFRhfIbiE8DwvKhYg7lc0IfxSKRdO0wU7dwl2brNvGv2ual1vJFzW6GlsWW4CoxC/VBCT9xwDAAUU1kxd5FQOtbQFDsxZBpjVA4464x7uCujvGwBl+Yc79SqpoKKmXARibK/gnRnwjkmLFSbmBUeuOZfYpomcjHFdjESQQtFLz4VwyLIFnn2fXrUgawKo2qQpVWflnFKDPY8v50tMCOEsf3KUyxbOyEOl2LYpeDeeWOX2SgWq2OK2ixtYYa8Z67zE5eqlggH7/cNxeEJp9tD2kD6qjU0ahVwSsB485tA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.2
Release Details
UpdatedJuly 10, 2026, 9:38 a.m.
Changelog

Fixed

  • Gekündigte Verträge zeigten ihr „gekündigt zum"-Datum unter dem irreführenden Spaltenkopf „Kündigen bis". Jede Zeile der Vertragsliste trägt jetzt ein kleines Label, das benennt, welches Datum gezeigt wird („Gekündigt zum" / „Kündigen bis" / „Läuft bis"); der Spaltenkopf heißt neutral „Frist / Ende" (#252)
  • Unbefristete Verträge ließen sich nicht anlegen, wenn (z.B. durch eine fehlerhafte Jahres-Eingabe) ein Enddatum im Feld stand: Bei Vertragstyp „Unbefristet" ist das Enddatum-Feld jetzt deaktiviert und wird nie gespeichert — ein versehentliches Enddatum kann das Anlegen nicht mehr blockieren. Bei befristeten Verträgen nennt die Fehlermeldung jetzt den Ausweg (Enddatum per ×-Symbol entfernen) (#257)

Changed

  • Release-Härtung: Die Composer-Runtime-Abhängigkeiten (vendor/, u.a. der PDF-Parser) werden jetzt wie das kompilierte CSS mit ausgeliefert und sind über einen Packaging-Guard gegen versehentliches Weglassen im Release-Paket abgesichert. Verhindert eine Wiederholung der 1.2.0-Regression (#249, Follow-up zu #245)
  • Intern: Der automatische PR-Review-Workflow wurde gehärtet (Diff-Beschaffung, Berechtigungen, Abbruch-Verhalten) — keine Auswirkung auf die App selbst
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJFHuGlWAqS6qcWy1oIivanlw2pvBaheNEDMZOTMx5PX398UUnFkvs936o5fhkvvB0LtqbrDRNjcOMD7+FhSzgajxkQyrUHeD99yccdmWoQ/o8bISXzunyD29N8J0BfkiNI7hrR5+T6IKLvBzzzvlMxFt4WlL5CpNeGJKfIBijA5tldhKd4d3y7dcD4Sw/SKwOiufgcTb+iP3t44jEjfGptLC1b542hanCHpnAPQ5R3ylYXUGBHbsAH+o4h7R8UbdkfVuRKh9LK4eG5fs+XTN80npQOA4w9KT3QXXlgwypFWWxAF6LANhiHlR51no/cJ7DYY7lUkw4ibaNZntPGK20Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.1
Release Details
UpdatedJuly 6, 2026, 8:49 p.m.
Changelog

Fixed

  • Oberfläche seit 1.2.0 komplett ohne Styling (kaputtes Layout, Nextcloud-Hintergrund scheint durch): das kompilierte CSS-Bundle fehlte im Release-Paket. Das CSS wird jetzt wie das JavaScript mit ausgeliefert (#245)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
Signatureh4QEgBwnjwrISLNm1xQNCSo536UQbvkgSDQSeuvSMsDhyh8Sgc5mppzWu4X4bq0mkGIFpbQxj5kpUPo+K5+1/edpV10ptXtf24WY90tC38nwCddgn97ZvmjRRjOOKzBAbDcIFdOoze93GnptwhHXiTm+JmgocA383KgpPx5ZoM72DhSQN9A5Xw4pngEKxf8awyXTpZcy+k8V6V13nnqWQ+aovTP99pUEbhpZMrH1RJcATKc/1cuZhVKDuue96EU5retjehFMn/J7naHJF60VyzlACyvokFVtsk4F2oGANz8WEXFcgXKPDi4q5bjoFNl3c9BFQPbAsA6Hl456JeT8ng==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.0
Release Details
UpdatedJuly 6, 2026, 3:29 a.m.
Changelog

Added

  • „Gekündigt zum" wird beim Eintragen von „Gekündigt am" automatisch mit dem Enddatum des Vertrags vorbelegt und bleibt änderbar – das Datum muss nicht doppelt eingegeben werden (#213)

Fixed

  • Sortierung nach „Kündigen bis" berücksichtigt jetzt auch befristete Verträge: sie landeten zuvor am Listenende, obwohl die Spalte ihr Enddatum anzeigte (#217)
  • Monatliche Kosten: Verträge mit automatischer Verlängerung, die mit ihrem ursprünglichen (abgelaufenen) Enddatum eingetragen sind, werden wieder eingerechnet (#215)

Changed

  • Status „Kündigung fällig" heißt jetzt einheitlich „Kündigungsfrist endet", passend zum gleichnamigen Filter (#216)
  • Die Kennzahl „Monatliche Kosten" ist als grobe Orientierung gekennzeichnet („ca.", Untertitel „Grobe Orientierung"), da sie Netto/Brutto und unterjährige Effekte nur näherungsweise abbilden kann (#215)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturegO8R8vrZxxOWSUMcKrDzzbo6rM4SRlZIFy7wDcI49HuPgzYAM5DMgAc69AWSYHrh+aa0Js5fLXLwSSRW8klKp2W9JnxNe2v4ZQbX/+j20CNQxRpFh7HS6/q3E4ePC50ikMqO8RNuojOMk8+rzmxl9Xk9E6Ogj5ovPULRESq7visZtWAGUFeWivzMEJNbgAxbe621qd8rv11788/6C/qiT1hdN8PowWJrnompSx/4L6SXPyhpYNUrE+TQOsdCkv4Fj/XUP4PguuV2EJUOv1zJB1+SIyoYOZ1iv5Ke1YBENcngClIKCJW2WdVdAwXX99sT7woecxvJoF0kl0ug0KzZxg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.1.0
Release Details
UpdatedJune 19, 2026, 10:27 a.m.
Changelog

Added

  • Übersichts-Kennzahlen über der Vertragsliste: Anzahl aktiver Verträge, monatliche Gesamtkosten und anstehende Kündigungen auf einen Blick. Die Kennzahlen beziehen sich auf die aktuell gewählte Ansicht und passen sich Kategorie-Auswahl, Filtern und Suche an. Monatliche Kosten werden je Zahlweise auf den Monat umgerechnet; bei Fremdwährungen und gemischten Netto/Brutto-Beträgen wird das transparent ausgewiesen (#112, #170)

Changed

  • Überarbeitetes Oberflächen-Design: Vertragsliste als übersichtliche Tabelle, Vertrags-Dialog mit einheitlichen Eingabefeldern und der Detail-Übersicht oben, Einstellungen mit klarer zweispaltiger Navigation (#170, #198)
  • Erinnerungs-Einstellungen im Vertrag verständlicher: ein globaler Schalter (gilt für alle Berechtigten) und ein persönlicher „nicht erinnern"-Schalter, jeweils mit kurzer Erklärung; die persönliche Vorlaufzeit zeigt den geltenden Standardwert (#198)
  • Benutzer-Auswahlfelder (Zuständig, Verträge übertragen) zeigen Vorschläge bereits beim Öffnen, ohne dass man erst tippen muss (#205)

Fixed

  • Genauere Erkennung der Server-Adresse für Erinnerungs-Links (Normalisierung), dadurch weniger falsche Hinweise zu overwrite.cli.url; zusätzlich robustere Berechnung des Kündigungsdatums (#201)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureGDxPEkr7p8dPUnH4mUI/aoAWFY/7P6ADxjnQVhJ26HZSRzMGV9QCLw680opPQt6ofv666gMLU69ZIXhyv8hjim2iM7qoxSXJkEDgLXIAIaGXCzfIL18eonvLOohfAwv+nsPyiI8dcAlfCxRXoFWM1XgRL7bfAcNMEqwDEylA0ndCU6dH2/Ys8a/9naB4L/q3OR1ml0Acgn4w2P0iOq8lG69gjpDumVKl0zynGqhedq1pUVkfzzJPAzoJN4JuMpwTGnYURIw05tEvZTYHPkNMXdMtT1P0wI2msLDGmBGTpzh1NicGE9urXKD0Nu26D7sIWgtCWVauphAmdBbp+jwuCw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.4
Release Details
UpdatedJune 17, 2026, 10:13 a.m.
Changelog

Added

  • Neues Feld „Kündigen zum" pro Vertrag (bei automatischer Verlängerung): „Tagesgenau" (wie bisher) oder „Zum Monatsende" – das Kündigungsdatum landet dann auf dem letzten Tag des Monats statt auf dem rückgerechneten Tag. Hilft bei Verträgen, die nur zum Monatsende kündbar sind (#159)
  • Hinweis in den Administrator-Einstellungen, wenn die für Erinnerungs-Links genutzte Server-Adresse (overwrite.cli.url) fehlt oder vom tatsächlichen Zugriff abweicht – andernfalls führen Links in Erinnerungs-E-Mails zur falschen Adresse (#194)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureLlBZDq0gQgSPjmcxCceYToQRjn26k7R8vUOvgyGlnLbHs6YBQwbKVK6GkCm45U+KcqeKy/HxqK3CwgTX6/8NiLXEEsgSssXYmupsOd3FHHeUdnsPDT0o6d/lqawprqA8/XhY3nrbdfYTH1cidhXwMkKAi2Q3x/O6GH0rD2KcCGoIUukKZV8VhSHIdGkrQlIc6jq/2e/35unyn4WFYe9fuPKzf56LqRz6v1mshh3crRZFo1HvL0oXMR1WNPpp+BqBqQCNWc4bS5ZEpwZjFqgCeFU8cBPbwim+/JxCubU2tVYZ7bhRL6xWmQufjH1Twdfr4p7Wn7QORIdhZsbUes1ioA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.3
Release Details
UpdatedJune 15, 2026, noon
Changelog

Added

  • Zuständigkeit pro Vertrag: neues Feld „Zuständig" – der effektive Eigentümer für Sichtbarkeit und „nur meine"-Erinnerungen ist die zuständige Person, der Ersteller bleibt als Nachweis erhalten (#173)
  • Administratoren können Verträge von einem Nutzer auf einen anderen übertragen (mit Vorschau-Zähler); „Zuständig" steht zudem in Liste, Filter und Suche zur Verfügung (#174)

Fixed

  • Der Button in der Erinnerungs-Mail führt jetzt zuverlässig in die App und direkt zum betroffenen Vertrag – zuvor landete man auf der Startseite/dem Dashboard, weil der Link im Hintergrund-Versand nicht korrekt aufgebaut wurde (#187)
  • Die Lese-Ansicht eines Vertrags war kaum lesbar (sehr blasse Felder); die Werte werden jetzt mit vollem Kontrast dargestellt (#187)

Changed

  • Aus der Erinnerungs-Mail öffnet sich der Vertrag direkt: bei Bearbeitungsrecht im Bearbeiten-Formular, sonst in der Lese-Ansicht (#187)
  • Mail-Texte und der Nextcloud-Talk-Absender heißen jetzt „Verträge" statt „ContractManager" (#187)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureOtdk401zx1hU/k+ngoLo3QGjiyzkS/ouAwab5vnaeSAke/zcG0EddS+QsCnXEcYLDnGYdAhPYHqJ0+uN7uQ/LUVuBnU7h+BqvsJR3SuVeAzlK/EIsZygU4kBU7S2kfrToRov9JJTFt3JPQbir+5DfOjUP+ZBv3/mZaYpQ0fTeCEs/AW0N9osIFUC8/aoIU8Yp3w+Y5EkTCUItZ/6rLsMhQTE56DSwm1ZEqrbIDtk5r39fnpRkOcQN2BS+y9+krAG88tY43888I2ygram01eOzTg6mBXk1GZmK8pIgh+GH9IBsdGZu70eRHBpPOjbHeSGnHyVu7PSfhloOY9H9c/pcg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.2
Release Details
UpdatedJune 14, 2026, 7:54 p.m.
Changelog

Fixed

  • Erinnerungen lassen sich pro Vertrag wieder dauerhaft deaktivieren; der Schalter „Erinnerung aktivieren" bleibt nach dem Speichern auch beim erneuten Öffnen aus (#180)
  • Regulär ausgelaufene befristete Verträge werden jetzt automatisch ins Archiv verschoben, wie es bei gekündigten Verträgen bereits geschah (#176)

Changed

  • Das Listen-Badge „Kündigung naht" heißt jetzt „Kündigungsfrist endet" – treffender, da ohne aktive Kündigung nichts passiert (#179)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureBaWNhZ5idX+9k7LIFE5FD9iiVDIdE2PCOTzhaunJoYkmG6h7ReXG+HNydxYGK5AddxEpBR8DwfxyD9GH8Ai0pEThLCMBE+b2k2yFvJH5lt3rKl1jhWa4h+jiX5pydCc/ZGuRc/aSlfNOVJK0JuZ436a4HEpX3FV+04vYGz5xO1pu66fLnBZC886V5hp3apEFoGVXtM0ur/250q2rcOZRQl/erKqvXBw36u6X0dfwxV7OBn/V62KUJBRje8A2272THv8QyVY5XLlrFrG+Rt0YUoHfyv/fGxzxu+ZassLmR5sQfJjnM+/FWbCPsRFzZ+OUpi4SFslAUwmLCn2e3vhB+Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.1
Release Details
UpdatedJune 14, 2026, 8:44 a.m.
Changelog

Added

  • Persönliches Erinnerungs-Modell: Jeder Nutzer legt in den Einstellungen selbst fest, für welche Verträge er Erinnerungen erhält – alle sichtbaren, nur eigene oder keine (#157)
  • Eigene Vorlaufzeit pro Nutzer; der vom Administrator eingestellte Wert dient nur noch als Standard für alle, die nichts Eigenes hinterlegen (#172)
  • Erinnerungen wahlweise zusätzlich über einen persönlichen Nextcloud-Talk-Chat (pro Nutzer konfigurierbar)
  • Opt-out pro Vertrag: einzelne Verträge gezielt von den eigenen Erinnerungen ausnehmen

Changed

  • Erinnerungen gehen nicht mehr nur an den Ersteller eines Vertrags, sondern an alle berechtigten Empfänger gemäß ihrem persönlichen Modus
  • Nextcloud-Talk-Benachrichtigungen sind jetzt pro Nutzer statt admin-global; private Verträge erscheinen dadurch nicht mehr in einem geteilten Chat

Fixed

  • Jahresbasierte Kündigungsfristen über den 29. Februar werden korrekt berechnet (z. B. 29.02. minus 1 Jahr → 28.02.)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureV7tWZo89ABWlAIeAHK/UHdfkLFEPitosAf1vlY/s6JCobWiLXxdPkKVu4+bIIrBvtFuxMUC8n7LHCwmaGMCiJz1iYMuN7Z8yzjafh65BlAMh9oO8YoLVftrAIUSI1mPyulWPyvln8dCyTyvIEbYilsd4nB5c/Vlnvxt8XTFZYN2g5/Nkva4tByFv04sFGYVALo68YNfKhPkcQImvs/AEl5Av8M/kxSLc84xs45ARywxrbh7FCajDKDWdI59lrY2cMTR+OQ4sX+oHapSXqm4KpafKBhANI1iRyoB//hrXNB7d90FIEfccS0JxnBG5jjo+dzxdhskJlzxIsHQCguxAxw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.0
Release Details
UpdatedMay 27, 2026, 5:42 p.m.
Changelog

Changed

  • Frontend komplett auf den aktuellen Nextcloud-Stack migriert: Vue 2 → Vue 3, webpack → Vite, Vuex → Pinia, @nextcloud/vue 8 → 9, Stores in TypeScript. Keine funktionalen Änderungen für Nutzer; die App ist damit technologisch auf aktuellem Stand und das Vue-2-EOL-Risiko entfällt (#150)

Fixed

  • Benutzer-/Gruppen-Suche in den Berechtigungs-Einstellungen lädt die Auswahl wieder (an @nextcloud/vue 9 angepasst)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturepPd5X5RTT7Fe1VJtaOrn1QmFW8ATb5cJ6VOwB2N9mWsKMf5Pj7sJaaMJ8hHq82DjHl3vnCyiqZBdTr6EcZFKgjuodpApVOpz9jrmqAmkhGa9T1/aXrtKd7S9HuoFOo3r7ASoSeE2T+4dc9L/gs3X6C5tiwG1C0pfs8yIt2bheoOIBlYgzFNcQVldWQRvNGKj5TrsSMkir2g46ydUhNLjCXGlkGjXnK80u8GU7vdNTXNVzE6SjDrwpEwFFR5TzD5rdVmkl/yMLnvHueuZOWKj8GaroinBBxkA5zJa742/1Ff+r9xaFvew/gq4TpyN8be4MVGc9ESSyL3+j4u/3w8vpw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.4
Release Details
UpdatedMay 26, 2026, 6 p.m.
Changelog

Fixed

  • Gekündigte Verträge mit automatischer Verlängerung wurden in der Liste falsch einsortiert und mit einem in die Zukunft gerollten Enddatum angezeigt. Gekündigte Verträge verlängern sich nicht mehr; ihr effektives Ende ist das „Gekündigt zum"- bzw. reguläre Enddatum (#145)
  • Die beiden Kündigungs-Datumsfelder „Gekündigt am" und „Gekündigt zum" werden jetzt gleich breit dargestellt (#144)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureabIE//S5nrfdLkvMqDK5jexsCh2o0zIOA+CN9wZ4KeyYU3yKbJPrbdLU38JBbFUmg2y2ysi/mBL3AGYYKnm7kOKqt3qchtiF34YAo1lDxvtlBuFb0KzA7ZfXjacFeZ+2ssmxJxKVPp77jzgzHDi8JfcCD6ikwAzRgmIXJo3QAjwPrmtr82pXhcMsOSIFYboFwG4sjgLPvuaVgb/cHxtWDLix/XTmL7cbohfQnZNiNoailHOCFyFgTc9pJifm8+5nEgOLqWRo9PEb7Z7+HUMQ5ZTiyxU1uTqOzJ4FpPMRfhzcUH7fV2vn/Ot+qaZWgZewYCcqfawAE/oNGjDbGlHU/Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.3
Release Details
UpdatedMay 21, 2026, 8:36 p.m.
Changelog

Added

  • Datumsfelder (Start, Ende) nutzen jetzt einen Kalender-Datepicker statt manueller TT.MM.JJJJ-Eingabe — einheitlich mit der Kontakte-App (#137)
  • Kündigungs-Automatik: Neue Felder „Gekündigt am" und „Gekündigt zum" (z. B. bei Sonderkündigung). Gekündigte Verträge werden am Laufzeitende bzw. zum „Gekündigt zum"-Datum automatisch beendet und archiviert (#136)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureKc/F73lI4B9xNoeBuc1BuEuqq7He1bCpN76n1QPN4j9BWx+DexEUo5jtcBW0eVw5EPkwUqiq9DoIoe6RMbu/MKy0046PTryjs36Lp6YoHaUvU4W5gmjxHX9xKW5juFs4C4XuxahiA0J3iaadc6nEnf/5AA/5p37mGDmxwXSnDsM3pFANcgeHZkDAA09VAp/zaTTdL+HADuJkRNxYSehB6W6huFFrdZnUF4bVcfpveKAkTWDl2wcbxiMfNST8MFlYGkjaJLSdL9JcQ51nTjrJb7YIZXOL1nrUPPbaQ7jtweV8Je3oCYWo0+aTl5JQFMCpTMRuYcWoKdg++cY3ChaC2g==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.2
Release Details
UpdatedMay 21, 2026, 1:41 p.m.
Changelog

Fixed

  • Vertragsdialog: Die Buttons „Abbrechen" und „Speichern" bleiben auf kleinen Fensterhöhen als fixierte Fußleiste sichtbar; der Dialog nutzt die verfügbare Höhe adaptiv statt eines festen Limits (#134)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureLgJztbw125YdscWFiR2zrsKhRubnejkpr/I79S1rLyXkao5ouB2JKdYVk8ACl9wU89ysdhIbERnoqmUXTedEvTR9Xwf38QitTuTFY+ouF6E04TowuQ3mYiYWQdGS3EHN9k8njHUqQ+rQoq9MAFiFcBG+5VT2baebfu8DVKUJHIN//E2B2+hy1jJKvl9Zll9tBLcek9pEN+P9IfsEisr1SSAbK8ipsdOzlny4Cp+xbEDpHNsJN8USkzjkyD6zdmeUxWo0O1Z7mLBbl/Y//guYcXyRlSb2do0UdlyKkV94G7J3E9mByOUtnzgLwMiQSWQ5xgJuFoxSXaC9A3j7nhqYZA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.1
Release Details
UpdatedMay 21, 2026, 10:27 a.m.
Changelog

Security

  • AI-API-URL wird beim Speichern gegen Schema und Host validiert: nur https oder http auf localhost/127.0.0.1/[::1]/.local/.localhost (#123)
  • Schutz gegen Prompt-Injection in der KI-Extraktion: PDF-Text wird in <document>-Tags gekapselt, eingebettete schliessende Tags werden neutralisiert (#124)
  • Weniger personenbezogene Daten in Logs: E-Mail-Adressen werden maskiert, Vertragsnamen aus Reminder-Logs entfernt, Erfolgs-Logs auf Debug-Level (#125)
  • API-Key-Maske als einheitliche Konstante (Single Source of Truth) statt hartkodierter Werte an mehreren Stellen (#126)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJkCx2S+gI4dQ6jiCwsYWqRNkaM7GGnjgcPEf43+xXHVDf5iwdm3i0w7K9naqDkABFNkFBTTVbau/++zkabkSNr0yt7sdipDe9N4i4trEpjpwogrr9/A3lE61zNFT2/t9eXkCoGO3UMDdFABbO5VMqABfpwk4vi3jns7RRrGry99YQBf5H7ieJfwZGU2wLxABs/hDkQPzP/NUFiIumSzGKHPRXjPa6RpSKfAjGCy32mwgM/eiJLkB9BGYgPSz1lyxUsXYNoWvqQn61X8H2//LTuap8Cxwl2+9kkpJ7jjRAObeExYgYOl4Iu9VJIz0IzJZHk3yjzWy52Kd/V6/NOon6w==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.0
Release Details
UpdatedMay 19, 2026, 3:23 p.m.
Changelog

Added

  • Vertragspartner-Feld jetzt als Autocomplete mit Vorschlaegen aus bestehenden Vertraegen (#107)
  • URLs in Notizen werden in der Leseansicht als anklickbare Hyperlinks gerendert (#108)

Fixed

  • Doppelte Erinnerungs-Mails: wenn beide Reminder-Fenster gleichzeitig aktiv sind, wird nur noch die finale Erinnerung verschickt (#111)
  • Per-Vertrag reminderDays-Override wirkt jetzt korrekt auf die finale Erinnerung — kein verfruehter "letzter Hinweis" mehr wenn ein eigener Wert gesetzt ist (#116)

Changed

  • Screenshots im App Store aktualisiert (saubere Demo-Daten, Autocomplete sichtbar)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureNb7Dwx1o9fbkIrkRWWpmxB4+npA3YrlIjy8b9l1PE9jRCnXzC0iDqTZSB2MYID6R5PJ5TNjb+160yy2/TKk677+h0L5PWdVJiJG0QrwlgvXHQakC1p2ojrfNVKey+jD5BKWFZCvH/M6wtiqjaK+LYj80vTBFkOlWIqwPc5UIoQu3dhTcg79tc5rSPAw4vsFwqxGYsbhvZmX3MAl2dnTa/80TJVLzlNYUZWUrO21AKTZlY0rF087EbNOAptue105x8cksaKyhVNIUyY7uZ+evx0V9y0irJKrR8RDvrX8AlJYl17XMmNlVZy63DB+HkRAueCgVlPatJRIzIWPO1v+tkA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.4
Release Details
UpdatedApril 29, 2026, 9:34 a.m.
Changelog

Added

  • Aktive Sortierung wird im Sort-Button angezeigt (Feldname + Richtungspfeil), nach Nextcloud Tasks Pattern (#82)

Fixed

  • Kuendigungsdatum bei auto_renewal-Vertraegen springt jetzt automatisch zur naechsten Periode, wenn die Frist bereits abgelaufen ist (#80)
  • Vertraege ohne Kuendigungsfrist (z.B. befristete Vertraege) werden bei Sortierung "Kuendigen bis" ans Ende sortiert statt an den Anfang (#93)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureNogaqjh7Wgym0VWtGsKfYk+cWpEd5B30T3k3VZSRMZuTnFbNhbj9sfFsIjhNppDdfAoGxUa/Ufijn2sSrW7yYR3oICOMl0SpsWZjg75j4LWi2hjZnJjNS53FqGy1NpbPDp+WPx6O2VFDbY2s2aLUdBA6M3+hmIj8Vq9Nt92NkxqmSnSSAbKLIpbLHaVabsDROCxE6chGmsNCn+JgePR3QmjeVQfC1qLlJ4nfb5+3rHVmaIiuc8DjVssRGY9I8hiedcT/11D1RTbhuw99SlqlWM01MEESBC8H1jOv3TDt4hkRL6FatCVJSW4ZY4yWGwxVcUiWUSRvJI510yUnAJbIOg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.3
Release Details
UpdatedApril 14, 2026, 12:18 p.m.
Changelog

Fixed

  • KRITISCH (#86): App-Update und occ app:enable crashten auf Nextcloud 33, weil der Repair-Step die seit NC 11 deprecated und in NC 33 entfernte OC_App::getAppPath() nutzte. Betroffene User mussten die App disablen und auf v0.4.0 ausweichen. Fix nutzt jetzt die OCP-API IAppManager::getAppPath().
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureiEPxRKZ/36V/MAFhrVNIQy+gjHVeg2HpNs4V5cPvJuTHogZmr6Q3YTnWVG+RSV1A6HPNDo3xYakD/60ZlulWxcPVsa/jOPnT4J0Pm9AGrqIWkwS1FlCnXHmcWrzs16qIte3xrZMeB7Gl80f5SaoliEq3+OWst6f82kbs5VNqdB7x5UMYLYspJqvotyo+DJK9IpGb9ZUSXHEyGFBqPzpLPD6J8grG6FiLgIPD/OPHjd5ouQ9HGkIRT54AfWqZO7BiRYs6lr+6lG0jy5r6fzyLkXsZFmEm1bP2919KHoCCy8WvZENpb8EUcRaWli0GBiXGt+U0aBa2zq9EPCKYQfKYbg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.2
Release Details
UpdatedApril 11, 2026, 10:02 p.m.
Changelog

Fixed

  • Automatische Bereinigung von Extra-Dateien aus frueheren Releases via RepairStep
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureNixveg25w9r9rK41NCf2CvJS4nMr2SFvihlE2xfzEOiqUuJOZzaw7z8ZUqxB+EyYOwrHF767bUF8r5HPpCCwaVRg9d9lKG9l/yUAR204X2KnDDWEgE1lyLLgtzgClAnANxXB6OpBSCwNEIRmKjvo8wX3tSpP3ZGkVvZwjGSySIMqQt0PfewdnF4CCKMdA6tat7hq3nLmKM/wzvzfvkSORwohEh0+eqdCpWRkmGz+NUsVNpXb8j2FmPuBpPe8eI2YW9psoDyjP7YKLSUw2SAa48kIM8aBHHR5A7t4plo/eHbvVuwEGXeX+YvXgfyqlUdEz6TpCNUvAt+33cpUm7dHYA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.1
Release Details
UpdatedApril 11, 2026, 9:03 p.m.
Changelog

Fixed

  • Integritaetspruefung: test-results/ aus Tarball entfernt
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureEfqS20ZDolIXGiGCLx2Aw/3O2DNYsWMTVOfYKYH3kvd/HxoJn6lPXSDNi+VZZy6avl7WWA894kWJAc71GRful8rOIRVFlZI/w9+AbH/uZ2Iw1tjUWh+XNBWEhYFEsWT06CY/NH5l1sVymL61a8vbP2fMNaz1cho7DgMrbb1kubhGh9FYDmwUhrgB4g/P0CB2KMZA/bMdfhIn06KzmpyyBJ+avCOqgXFhbmj9GLiXWhr6S48mdlcN52AaCYLAACRKixZqs0jbeQAcNEsD9gJafUudfk5MseT6EX5dqSO2LdBRIhGX2nGrJGl+wJTC35c7/7DOG3VxBO+gMf31WYMnFQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.0
Release Details
UpdatedApril 8, 2026, 7:59 p.m.
Changelog

Added

  • Suchfeld in der Sidebar: Client-seitige Volltextsuche ueber Name, Vertragspartner, Notizen und Zusatzfelder (#60)
  • Globale Nextcloud-Suche: Vertraege erscheinen in der einheitlichen NC-Suche (#60)
  • Vertragstyp "Unbefristet": Enddatum ist kein Pflichtfeld mehr (#49, #67)
  • Filter "Ohne Kategorie" in der Sidebar mit Counter (#71)
  • Sortieroption "Kuendigen bis" in der Vertragsliste (#70)
  • Archiv-Counter in der Sidebar
  • Editoren koennen Vertraege in den Papierkorb verschieben (Soft-Delete)

Fixed

  • Kuendigungsdatum-Berechnung bei Monatsende korrigiert (z.B. 31.03 minus 1 Monat = 28.02 statt 03.03) (#72)
  • Browser-Confirm-Dialoge durch Nextcloud NcDialog ersetzt (Archivieren, Wiederherstellen, Kategorie loeschen)
  • NcDialog-Buttons nutzen buttons-Prop statt actions-Slot (verhindert Re-Trigger beim Schliessen)
  • Papierkorb nutzt ContractListItem (konsistentes Layout mit Vertragsliste und Archiv)
  • Erinnerung wird automatisch deaktiviert wenn Enddatum entfernt wird
  • Datumsvalidierung: Ungueltige Eingaben werden geleert mit Fehlermeldung

Changed

  • Loeschen-Dialog zeigt Hinweis auf 30-Tage Auto-Cleanup
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureSieDpGuTZ56Y5UGTUJ9Svk2ihCo3g8UJ59F4unOb/KPBG1movGAamOxrugqvTK1LD/azfUJ2TTpQvMXU5QBFD2aOkPSqxmcIlQpVuljKV2p+jvWlzpYMjZsQLNm+iw/SXA/MH0EK50ONVkiNOtqbhdbBxB+tOEdTMRcZVzBAHtwANWmJ/Rd+ukqXTZfvNJyIZzJBFLE5UggFs+UTXhhYyU3RMMVFC6j1QjSv/wvTYYBrAxBnqRxgvaZxbM40eMAm/tsVHtNblyKQnT3VpVEqoYHK3w/hxCv/NgDGCGo6leTSTO0AaXq7DlkMKxJUq2OJ3g7n5HzKyNXcTuVUdxFIJw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.3.0
Release Details
UpdatedMarch 30, 2026, 2:05 p.m.
Changelog

Added

  • Benutzerdefinierte Zusatzfelder: Bis zu 3 admin-konfigurierbare Felder pro Vertrag (#58)
  • Zahlweise (Zahlungsintervall): Monatlich, Quartalsweise, Halbjaehrlich, Jaehrlich, Einmalig (#59)
  • Externer Link Button: Externe URLs als Vertragsdokument hinterlegen

Changed

  • Formular-Redesign: Zusatzfelder in Grunddaten integriert, Kuendigen-bis in Laufzeit-Zeile, Kosten/Dokumente/Erinnerung als 3-Spalten-Layout
  • Vertragsdokument oeffnet im Nextcloud Viewer Overlay statt in neuem Tab
  • File Picker statt Smart Picker fuer Dokumentauswahl (weniger irrelevante Optionen)

Fixed

  • Vertragsordner "Oeffnen" Button funktioniert wieder (fehlende Methode)
  • Rote Pflichtfeld-Markierung bei leerem Formular entfernt (HTML5 required Bug)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureXWu692AGYav7p6GKcaNR1ft6lcej/OKXlfZGlfzYddiNHtKbifsGjAeMlSdu1hH8pwjPu0a+cmXMCL4QoWkntJOSRXDweVgKE1nqbQUfvhADCxHM9DgQOWwmq1hYZIa+Aeyr7ip4Q9OJJR55phPjMJQzjPslVNu/gT6TW2+pWQlNz4i0So17bWMOUCoHtJIYuLjhs1gl1yAKysR2AOqXYmHUt0WyclOi8MHRnAENlEJPq9/BeuHsZH3X8etDHxnOkV3kWpxeNJSzJPBtFrZSS6Rm/Y1ezLWM3ByC/Paoas5m/kuAosWBNC1z4mMj7lbin2ch9XlXV6EOCYNWfhteCA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.6
Release Details
UpdatedMarch 25, 2026, 1:47 p.m.
Changelog

Added

  • Smart Picker fuer Vertragsdokument: Unterstuetzt jetzt externe URLs zusaetzlich zu Nextcloud-Dateien (#48)
  • Automatische Statusaenderung: Abgelaufene befristete Vertraege werden taeglich auf "Beendet" gesetzt (#53)

Fixed

  • Falsche Datumsberechnung bei monatlichen Vertraegen aelter als ~8 Jahre durch Iterations-Limit (#51)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureXBnMgjIAfGw91tRrbID795GM7wJT0TVgGO/GR/OP3cpjrTSWl7nd7Af1i+aJALmk0Xj8XJ98hCW2jX5MZbnSMeaW6DvrqWWjRucwAL1zskc5KlmWkaewTrvYwFvPqbg7RbhUJpEwluw98r2etZ7WT4bO+aaPDHYyCRtn9vV+WEDguj0px2fUC7SB7mt7eOjkdZdR3aXtYWw4aKydOy8e2B2q3ousMrRS0Z8/+XyZ1fHyDJ1KmujM1Yw8FdAxKK/KsH1CAHYRLgGl9ue1c8LnbgkYGn7/SV9ZvBCv9/WodGosndAjJv+Pc00UpCjaFRWagcWpxDdHf7zn5RhbWrD0CQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.5
Release Details
UpdatedMarch 16, 2026, 9:03 p.m.
Changelog

Fixed

  • Vertragsdokument öffnet jetzt im Nextcloud Viewer als Overlay statt nur den Ordner anzuzeigen (#43)
  • Fallback bei fehlendem Viewer nutzt File-ID (/f/{id}) statt Parent-Ordner
  • "In Nextcloud öffnen" im Formular nutzt ebenfalls File-ID für zuverlässiges Öffnen
  • AI-Extraktionshinweise werden jetzt auf Deutsch angezeigt statt Englisch
  • Validierungsfehler (Enddatum) nutzt NcNoteCard statt schwer lesbarem eigenen Styling

Changed

  • Nextcloud Viewer wird auf der Verträge-Seite geladen (LoadViewer Event)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureC7DaszHix+eyQDohShhjWWGVKdBpHwbC65fX7/ISICwUvH8gPNQM3fJCLeAFJLyVljqHVu810b8OiDJI9UJe9+z11qKU7fJfWd51nf1cspgqMUUpYgzau2XVHHQnafwoi2jnTmj2ZwSmxlVLjexlHIeeWrJL4hbbuJVmP4LkSW0TVjBY+fyrnKA4md1v0Q0ganfxYanuJw+/KD/xzCk1KSeWsEJp3HfWzU1oFNLoPul64fAezCwLpEOEF5M6z5fqt9Afv6OITMVubdl8zugT/1FJTkAf8q30KyUhk0fSBIKMEK8ZsNq4D26emXNof0mS78Rg+/ceWbSoWEfKpLP1rg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.4
Release Details
UpdatedMarch 12, 2026, 10:35 p.m.
Changelog

Fixed

  • Fix "Extracted app has more than 1 folder" installation error caused by macOS metadata in tarball (#41, #38)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureQu6/CWJCFqj+gSaRsmLWn8Ysyw5hCQiGJLURRPyfU+xrDiSeyaMOeWzLxasI3GUDbNYeTN+AWlsqTguLN0FS+kJRH7TbkSbiBR0Hmc9aLy/fN3M7JBp3mRUs1LKAtaRTZoteBFg7LjqJFMlYWpJ03nkYQeGSZ5Scm0064AG4cNf59TOvwRs8I1/U4D3AyMsGpMIVn8XRB7ytVRxMKUCC4znJnC82BhPGSIGRyjjeM/Xit4uKd+0zLY1Vz+dRwm5qsKLfMzFCzB1iCQC15zesdh3IM8lbCHesW66SwcSIKeMYkfmcFV46BxuJbm+2Jq5GZWWnqnCTJtAIvRtZspoYAw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.3
Release Details
UpdatedMarch 8, 2026, 10:31 a.m.
Changelog

Fixed

  • Fix app update error by repackaging with correct code signature (#38)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureRA2wGkJYFDex8dxBPX9Aa7dQqPeTZqVNzjkNqIxR3PLX/pgDolF0etmcJCwEfW2Z8pbB/4RpxljeQTBKFpTo282+CDW89sYvE5Ws2HNJNsghNlAwHFdM6YdpnlIq292ONatPWSqnl4BalxBWHGtlLnj6PafAobRlVgUFYnvT0t2WqK1CMpZw1SVazAUx0M+0Te/HRBXxWWkL7LdQwofQj9aSgwRY2TZXR6jbVC82em1DU2K3Engb/O2YQI7NQeImJfQNACXLXiT4+O9GFSyMA8/nweE5hG3elxvXz2JgTb81rUQQ4i+1+L9VaLc/+2tkiy6XhepO/t+qu8KOWfc+dQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.2
Release Details
UpdatedMarch 8, 2026, 9:57 a.m.
Changelog

Fixed

  • Repackaged release tarball to fix "Extracted app has more than 1 folder" update error (#38)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureO3O8BSYsBnU6UnfgULrtgWyKvN2Zua2hhUnKxy9OcPGoZIoKZFQHV3BeqKzui/o5RXgCvZ1G3HfCXum+6ntxknIjyM+MqErUezvf36asxav3M2dhF7P29DntLWHtt4uZJZO5ypfCxBKWcz1OLooPYkKrDSO4t7l2XDV/1ugibkEP45U66AWlhihCAWIU/7Up6rpXwk8baMXbLSlbpfq62UeMs3X3brvXLrl0bpH6BpzGRMP2x1US1qttjAgN7DmnILf0907h19UOrhwzn0cp5M6qHPwUtdFSSBQCQ1Zw8D7sYWELhLMQPYcqkf0/MenwTs5ARnR2oUR8un70rW3bUQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.1
Release Details
UpdatedMarch 6, 2026, 1:15 p.m.
Changelog

Added

  • Support for fixed-term contracts without cancellation period (#28)
  • Dynamic reminders: cancellation deadline for auto_renewal, expiry date for fixed contracts (#27)
  • Code review documentation (docs/20260303_code-review.md)

Changed

  • Settings link moved to navigation footer (#1)
  • Improved privacy toggle UX (#30)
  • Cancellation period field only shown for auto_renewal contracts
  • Email and Talk reminder messages now differentiate by contract type

Security

  • Added userId null-check in ContractController (H1)
  • Added try-catch for DateTime parsing in validation (H2)
  • Added noopener/noreferrer to all window.open() calls (M4)
  • Added htmlspecialchars for email URLs (N1)

Removed

  • Unused CSS class .form-row--thirds (N3)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureULNilsw2pCJqm9zCMtbzqe0aRKt5wEJkVQNQHuXKr18KLD3+LkhFdrLTSb2AsQnXzj2m2yUHnFXPmpJxIsNFLdJyO/480JqiGtb++48pQVvFXS7PYjSAifcFQclgyKfyI9vNz7F4+BekAJijiTbXQTaHNOMoUHKjpFB6iWkH1YuDlGttiAR57vOCZuVFHbPbdvGnRj6w+JuHwBsikY37FGGHZF8JUMKoH8im4Nku1ggy84qGeFSNb6SBELxMZLh6x5cQ2XqrWzEr9KoxcS8Medg969uzrooxYtFIySzIatNKDbZLUOy7ps/Js5b25ZG2A7TEBnRbK/5uk+DAP+FLwA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.0
Release Details
UpdatedFeb. 27, 2026, 1:44 p.m.
Changelog

Added

  • Filterable contract list with vendor, status, and contract type filters (#22)
  • Sortable contract list with persistent user preference (#21)
  • Duplicate contract action (#18)
  • Folder icon in contract list to open contract folder (#15)

Changed

  • Display name renamed to "Verträge" (#17)
  • Filter and sort preferences persist per user across page reloads
  • Updated screenshots for App Store listing

Fixed

  • Categories now sorted alphabetically (#8)
  • Invalid JSON in l10n translation files (#16)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureKIBmvrqKEGy2kGUnXUthC95r6BKGgWd6ip2Sz7fLHuDP9+9DA7Bw8ZS6k57y7ve/EOCxRk0jCHrDjCg1z6cBMvathmrS8EYskirFmOThHB4R842XOFZJdniItJcJjEDpdxRQUQ7pN+6zUVNGqnMMJFS3iFjsHJ09xjnyYIfNV92uEM3wwLPHsUpLf/EmDwMHWxqeyQecy4LofKgzl5nzqCLox8b4sJwYMLJh4AKRdP3MeEJmZ1sOIjoHvMFlv+8FfJ+bYndB7X4/mByi8YGBFsu7oE3nSZYFiWBPJyrE8iXvpyFOjbF3LDO7l6K9tvoZ/oVfRAW8gcxXjIy/5cGeEg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.1.5
Release Details
UpdatedFeb. 23, 2026, 8:26 p.m.
Changelog

Fixed

  • FilePicker not opening on certain hosting providers due to extremely long webpack chunk filenames
  • Selected folder/file name not visible after FilePicker selection (only in tooltip)

Changed

  • Nextcloud 33 compatibility added (max-version raised to 33)
  • Webpack chunk filenames shortened to hash-based naming
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJv66e/NQUYBs/GKvoVA5n79dFyMMgRggxXCa4C0RU0Hq5W4pc7tVl9KOe8hPaLtcu9Yfi8FeTttKUEZdrSVZvsiRyADH+hd5XXFvV/IRKq0X3HltOTre597GzCyXUuLKK3W2ORbgQlydnxudQqC8rvsUGUkl4AqhZf8mfmIzYd07nrRsPGIE7WxRJ8aDE1nfJiq9fFrMXBCr3UpEwC9o9BYroyc3cbyGwpWzF0hFZIwJ76Wm388oOskC0bCCRJT2MyoGaQ++kXaxY09csHtWfr+d/V9HAYnyDBRdeGYxaKqgjE57AJNKNCZjRqiYVuajIt91CYN7c62OjtaDtuIhjA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0

Nextcloud 32

Verträge 1.2.5
Release Details
UpdatedJuly 17, 2026, 12:27 p.m.
Changelog

Added

  • Befristete Verträge zeigen jetzt einen eigenen Frühwarn-Chip „endet", wenn ihr Enddatum ins Erinnerungsfenster fällt — bisher gab es diesen Hinweis nur bei Verträgen mit Kündigungsfrist (#238)
  • Status-Chips und Akzentbalken haben jetzt eigene Dark-Mode-Farben und bleiben im dunklen Nextcloud-Theme gut lesbar (#204)

Changed

  • Währungsbeträge werden jetzt in der Sprache/Region der Nextcloud-Oberfläche formatiert statt fest in deutschem Format (#204)
  • Datumsangaben folgen jetzt ebenfalls der Sprache/Region der Nextcloud-Oberfläche statt fest im deutschen Format (Nachgang zu #204)

Security

  • Abhängigkeiten aktualisiert und alle offenen Sicherheitswarnungen behoben (u.a. dompurify, form-data, vite, esbuild, js-yaml, fast-xml-parser); npm audit meldet keine Schwachstellen mehr
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureSetLU4KaxYBImcoTdDXSM484uXuOHcqsDiacdyxmrhP6h5gSWB8Di9sqw3uTh7HZqrx1ieZ/5AeyU9qYh5Ncbk6zeKQdxoc4KFpaKG5u3hVJxztknHohSnOG8vIJbJJESB0bgZhb2a5MrmDdAjuu4eu3D75fEIoKSxLhbcGepjOoK5NK0ldyZjEfGHNwIMzpAPv9jm8GMwXrprVc0hIsTX/0i72q9teEBw3jIwT6ox6Mza1z1N4LAjY4I2Gxrvr0o9LmNHlnJBhqRlKRmu+yQQoH/KPAdDtZEU7p30+ichX1/O2oqJe2kS6p7HUExl+hSClQd8YRmvo98kiiMMCfTA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.4
Release Details
UpdatedJuly 12, 2026, 10:02 p.m.
Changelog

Added

  • Befristete Verträge sind in der Vertragsliste und im Formular jetzt auf einen Blick erkennbar: Der Status-Chip „Laufend" und der farbige Akzentbalken erscheinen bei ihnen in einem dunkleren Grün, ein Tooltip erklärt die Befristung (#277)

Changed

  • Das Datums-Label „Kündigen bis" heißt jetzt „Kündbar bis" — es beschreibt neutral, bis wann gekündigt werden kann, statt wie eine Aufforderung zu klingen. Gilt für die Vertragsliste und das Formular (dort auch „Kündbar bis (berechnet)") (#275)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
Signatureg5+CIDwuaoKaZc09+sPadyC9hXDP4i7+3czflDyZnsdigv7bSgZ6/2StJ/LhDf1hD8jBiGExVVnh0fz9LOvFLf//oa4fe22IZKEYJoXH/Zm3Y6eBpf5yskCJfUzxwXL7Sopcv+3HtPzUzQp9FOlqZpgNqo5cSMkUccm2vUGJHqmUjsm6jP3qsLdCfE9fQ43ePYBD7dhfc15Cv/nBj7LCv0xi5DELk2vQRkvLSpziBc+OibwIu+R3xPO8zIPqBdADrcq+yNue+E9EFHugletKSEhV34Q3EkGrqldTXRYwiAScDXQY0WgKiTNq4l1EJdwLYLyjFOwhhWemRit1zzSfoQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.3
Release Details
UpdatedJuly 11, 2026, 12:50 p.m.
Changelog

Fixed

  • Tab-Taste funktionierte in der gesamten App nicht mehr (seit 1.2.0): Die dauerhaft gemounteten, unsichtbaren Formular-Modals aktivierten ihre Fokus-Fallen schon beim Seitenladen und verschluckten jeden Tab-Druck. Die Modals werden jetzt erst beim Öffnen erzeugt; Esc schließt das Formular außerdem auch dann, wenn der Fokus in einem Eingabefeld steht (#266)
  • Datumseingabe: Beim Ziffer-für-Ziffer-Eintippen wurde das Jahr auf 19XX umgeschrieben (z.B. 1906 statt 2026) und die laufende Eingabe zerstört. Das Jahr lässt sich jetzt normal eintippen (#258)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturedjKIMBNn5BASPxCnmwrImEjthNcUvx8wxMvIvYyKKlU4yhUFRhfIbiE8DwvKhYg7lc0IfxSKRdO0wU7dwl2brNvGv2ual1vJFzW6GlsWW4CoxC/VBCT9xwDAAUU1kxd5FQOtbQFDsxZBpjVA4464x7uCujvGwBl+Yc79SqpoKKmXARibK/gnRnwjkmLFSbmBUeuOZfYpomcjHFdjESQQtFLz4VwyLIFnn2fXrUgawKo2qQpVWflnFKDPY8v50tMCOEsf3KUyxbOyEOl2LYpeDeeWOX2SgWq2OK2ixtYYa8Z67zE5eqlggH7/cNxeEJp9tD2kD6qjU0ahVwSsB485tA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.2
Release Details
UpdatedJuly 10, 2026, 9:38 a.m.
Changelog

Fixed

  • Gekündigte Verträge zeigten ihr „gekündigt zum"-Datum unter dem irreführenden Spaltenkopf „Kündigen bis". Jede Zeile der Vertragsliste trägt jetzt ein kleines Label, das benennt, welches Datum gezeigt wird („Gekündigt zum" / „Kündigen bis" / „Läuft bis"); der Spaltenkopf heißt neutral „Frist / Ende" (#252)
  • Unbefristete Verträge ließen sich nicht anlegen, wenn (z.B. durch eine fehlerhafte Jahres-Eingabe) ein Enddatum im Feld stand: Bei Vertragstyp „Unbefristet" ist das Enddatum-Feld jetzt deaktiviert und wird nie gespeichert — ein versehentliches Enddatum kann das Anlegen nicht mehr blockieren. Bei befristeten Verträgen nennt die Fehlermeldung jetzt den Ausweg (Enddatum per ×-Symbol entfernen) (#257)

Changed

  • Release-Härtung: Die Composer-Runtime-Abhängigkeiten (vendor/, u.a. der PDF-Parser) werden jetzt wie das kompilierte CSS mit ausgeliefert und sind über einen Packaging-Guard gegen versehentliches Weglassen im Release-Paket abgesichert. Verhindert eine Wiederholung der 1.2.0-Regression (#249, Follow-up zu #245)
  • Intern: Der automatische PR-Review-Workflow wurde gehärtet (Diff-Beschaffung, Berechtigungen, Abbruch-Verhalten) — keine Auswirkung auf die App selbst
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJFHuGlWAqS6qcWy1oIivanlw2pvBaheNEDMZOTMx5PX398UUnFkvs936o5fhkvvB0LtqbrDRNjcOMD7+FhSzgajxkQyrUHeD99yccdmWoQ/o8bISXzunyD29N8J0BfkiNI7hrR5+T6IKLvBzzzvlMxFt4WlL5CpNeGJKfIBijA5tldhKd4d3y7dcD4Sw/SKwOiufgcTb+iP3t44jEjfGptLC1b542hanCHpnAPQ5R3ylYXUGBHbsAH+o4h7R8UbdkfVuRKh9LK4eG5fs+XTN80npQOA4w9KT3QXXlgwypFWWxAF6LANhiHlR51no/cJ7DYY7lUkw4ibaNZntPGK20Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.1
Release Details
UpdatedJuly 6, 2026, 8:49 p.m.
Changelog

Fixed

  • Oberfläche seit 1.2.0 komplett ohne Styling (kaputtes Layout, Nextcloud-Hintergrund scheint durch): das kompilierte CSS-Bundle fehlte im Release-Paket. Das CSS wird jetzt wie das JavaScript mit ausgeliefert (#245)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
Signatureh4QEgBwnjwrISLNm1xQNCSo536UQbvkgSDQSeuvSMsDhyh8Sgc5mppzWu4X4bq0mkGIFpbQxj5kpUPo+K5+1/edpV10ptXtf24WY90tC38nwCddgn97ZvmjRRjOOKzBAbDcIFdOoze93GnptwhHXiTm+JmgocA383KgpPx5ZoM72DhSQN9A5Xw4pngEKxf8awyXTpZcy+k8V6V13nnqWQ+aovTP99pUEbhpZMrH1RJcATKc/1cuZhVKDuue96EU5retjehFMn/J7naHJF60VyzlACyvokFVtsk4F2oGANz8WEXFcgXKPDi4q5bjoFNl3c9BFQPbAsA6Hl456JeT8ng==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.2.0
Release Details
UpdatedJuly 6, 2026, 3:29 a.m.
Changelog

Added

  • „Gekündigt zum" wird beim Eintragen von „Gekündigt am" automatisch mit dem Enddatum des Vertrags vorbelegt und bleibt änderbar – das Datum muss nicht doppelt eingegeben werden (#213)

Fixed

  • Sortierung nach „Kündigen bis" berücksichtigt jetzt auch befristete Verträge: sie landeten zuvor am Listenende, obwohl die Spalte ihr Enddatum anzeigte (#217)
  • Monatliche Kosten: Verträge mit automatischer Verlängerung, die mit ihrem ursprünglichen (abgelaufenen) Enddatum eingetragen sind, werden wieder eingerechnet (#215)

Changed

  • Status „Kündigung fällig" heißt jetzt einheitlich „Kündigungsfrist endet", passend zum gleichnamigen Filter (#216)
  • Die Kennzahl „Monatliche Kosten" ist als grobe Orientierung gekennzeichnet („ca.", Untertitel „Grobe Orientierung"), da sie Netto/Brutto und unterjährige Effekte nur näherungsweise abbilden kann (#215)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturegO8R8vrZxxOWSUMcKrDzzbo6rM4SRlZIFy7wDcI49HuPgzYAM5DMgAc69AWSYHrh+aa0Js5fLXLwSSRW8klKp2W9JnxNe2v4ZQbX/+j20CNQxRpFh7HS6/q3E4ePC50ikMqO8RNuojOMk8+rzmxl9Xk9E6Ogj5ovPULRESq7visZtWAGUFeWivzMEJNbgAxbe621qd8rv11788/6C/qiT1hdN8PowWJrnompSx/4L6SXPyhpYNUrE+TQOsdCkv4Fj/XUP4PguuV2EJUOv1zJB1+SIyoYOZ1iv5Ke1YBENcngClIKCJW2WdVdAwXX99sT7woecxvJoF0kl0ug0KzZxg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<35.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.1.0
Release Details
UpdatedJune 19, 2026, 10:27 a.m.
Changelog

Added

  • Übersichts-Kennzahlen über der Vertragsliste: Anzahl aktiver Verträge, monatliche Gesamtkosten und anstehende Kündigungen auf einen Blick. Die Kennzahlen beziehen sich auf die aktuell gewählte Ansicht und passen sich Kategorie-Auswahl, Filtern und Suche an. Monatliche Kosten werden je Zahlweise auf den Monat umgerechnet; bei Fremdwährungen und gemischten Netto/Brutto-Beträgen wird das transparent ausgewiesen (#112, #170)

Changed

  • Überarbeitetes Oberflächen-Design: Vertragsliste als übersichtliche Tabelle, Vertrags-Dialog mit einheitlichen Eingabefeldern und der Detail-Übersicht oben, Einstellungen mit klarer zweispaltiger Navigation (#170, #198)
  • Erinnerungs-Einstellungen im Vertrag verständlicher: ein globaler Schalter (gilt für alle Berechtigten) und ein persönlicher „nicht erinnern"-Schalter, jeweils mit kurzer Erklärung; die persönliche Vorlaufzeit zeigt den geltenden Standardwert (#198)
  • Benutzer-Auswahlfelder (Zuständig, Verträge übertragen) zeigen Vorschläge bereits beim Öffnen, ohne dass man erst tippen muss (#205)

Fixed

  • Genauere Erkennung der Server-Adresse für Erinnerungs-Links (Normalisierung), dadurch weniger falsche Hinweise zu overwrite.cli.url; zusätzlich robustere Berechnung des Kündigungsdatums (#201)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureGDxPEkr7p8dPUnH4mUI/aoAWFY/7P6ADxjnQVhJ26HZSRzMGV9QCLw680opPQt6ofv666gMLU69ZIXhyv8hjim2iM7qoxSXJkEDgLXIAIaGXCzfIL18eonvLOohfAwv+nsPyiI8dcAlfCxRXoFWM1XgRL7bfAcNMEqwDEylA0ndCU6dH2/Ys8a/9naB4L/q3OR1ml0Acgn4w2P0iOq8lG69gjpDumVKl0zynGqhedq1pUVkfzzJPAzoJN4JuMpwTGnYURIw05tEvZTYHPkNMXdMtT1P0wI2msLDGmBGTpzh1NicGE9urXKD0Nu26D7sIWgtCWVauphAmdBbp+jwuCw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.4
Release Details
UpdatedJune 17, 2026, 10:13 a.m.
Changelog

Added

  • Neues Feld „Kündigen zum" pro Vertrag (bei automatischer Verlängerung): „Tagesgenau" (wie bisher) oder „Zum Monatsende" – das Kündigungsdatum landet dann auf dem letzten Tag des Monats statt auf dem rückgerechneten Tag. Hilft bei Verträgen, die nur zum Monatsende kündbar sind (#159)
  • Hinweis in den Administrator-Einstellungen, wenn die für Erinnerungs-Links genutzte Server-Adresse (overwrite.cli.url) fehlt oder vom tatsächlichen Zugriff abweicht – andernfalls führen Links in Erinnerungs-E-Mails zur falschen Adresse (#194)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureLlBZDq0gQgSPjmcxCceYToQRjn26k7R8vUOvgyGlnLbHs6YBQwbKVK6GkCm45U+KcqeKy/HxqK3CwgTX6/8NiLXEEsgSssXYmupsOd3FHHeUdnsPDT0o6d/lqawprqA8/XhY3nrbdfYTH1cidhXwMkKAi2Q3x/O6GH0rD2KcCGoIUukKZV8VhSHIdGkrQlIc6jq/2e/35unyn4WFYe9fuPKzf56LqRz6v1mshh3crRZFo1HvL0oXMR1WNPpp+BqBqQCNWc4bS5ZEpwZjFqgCeFU8cBPbwim+/JxCubU2tVYZ7bhRL6xWmQufjH1Twdfr4p7Wn7QORIdhZsbUes1ioA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.3
Release Details
UpdatedJune 15, 2026, noon
Changelog

Added

  • Zuständigkeit pro Vertrag: neues Feld „Zuständig" – der effektive Eigentümer für Sichtbarkeit und „nur meine"-Erinnerungen ist die zuständige Person, der Ersteller bleibt als Nachweis erhalten (#173)
  • Administratoren können Verträge von einem Nutzer auf einen anderen übertragen (mit Vorschau-Zähler); „Zuständig" steht zudem in Liste, Filter und Suche zur Verfügung (#174)

Fixed

  • Der Button in der Erinnerungs-Mail führt jetzt zuverlässig in die App und direkt zum betroffenen Vertrag – zuvor landete man auf der Startseite/dem Dashboard, weil der Link im Hintergrund-Versand nicht korrekt aufgebaut wurde (#187)
  • Die Lese-Ansicht eines Vertrags war kaum lesbar (sehr blasse Felder); die Werte werden jetzt mit vollem Kontrast dargestellt (#187)

Changed

  • Aus der Erinnerungs-Mail öffnet sich der Vertrag direkt: bei Bearbeitungsrecht im Bearbeiten-Formular, sonst in der Lese-Ansicht (#187)
  • Mail-Texte und der Nextcloud-Talk-Absender heißen jetzt „Verträge" statt „ContractManager" (#187)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureOtdk401zx1hU/k+ngoLo3QGjiyzkS/ouAwab5vnaeSAke/zcG0EddS+QsCnXEcYLDnGYdAhPYHqJ0+uN7uQ/LUVuBnU7h+BqvsJR3SuVeAzlK/EIsZygU4kBU7S2kfrToRov9JJTFt3JPQbir+5DfOjUP+ZBv3/mZaYpQ0fTeCEs/AW0N9osIFUC8/aoIU8Yp3w+Y5EkTCUItZ/6rLsMhQTE56DSwm1ZEqrbIDtk5r39fnpRkOcQN2BS+y9+krAG88tY43888I2ygram01eOzTg6mBXk1GZmK8pIgh+GH9IBsdGZu70eRHBpPOjbHeSGnHyVu7PSfhloOY9H9c/pcg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.2
Release Details
UpdatedJune 14, 2026, 7:54 p.m.
Changelog

Fixed

  • Erinnerungen lassen sich pro Vertrag wieder dauerhaft deaktivieren; der Schalter „Erinnerung aktivieren" bleibt nach dem Speichern auch beim erneuten Öffnen aus (#180)
  • Regulär ausgelaufene befristete Verträge werden jetzt automatisch ins Archiv verschoben, wie es bei gekündigten Verträgen bereits geschah (#176)

Changed

  • Das Listen-Badge „Kündigung naht" heißt jetzt „Kündigungsfrist endet" – treffender, da ohne aktive Kündigung nichts passiert (#179)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureBaWNhZ5idX+9k7LIFE5FD9iiVDIdE2PCOTzhaunJoYkmG6h7ReXG+HNydxYGK5AddxEpBR8DwfxyD9GH8Ai0pEThLCMBE+b2k2yFvJH5lt3rKl1jhWa4h+jiX5pydCc/ZGuRc/aSlfNOVJK0JuZ436a4HEpX3FV+04vYGz5xO1pu66fLnBZC886V5hp3apEFoGVXtM0ur/250q2rcOZRQl/erKqvXBw36u6X0dfwxV7OBn/V62KUJBRje8A2272THv8QyVY5XLlrFrG+Rt0YUoHfyv/fGxzxu+ZassLmR5sQfJjnM+/FWbCPsRFzZ+OUpi4SFslAUwmLCn2e3vhB+Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.1
Release Details
UpdatedJune 14, 2026, 8:44 a.m.
Changelog

Added

  • Persönliches Erinnerungs-Modell: Jeder Nutzer legt in den Einstellungen selbst fest, für welche Verträge er Erinnerungen erhält – alle sichtbaren, nur eigene oder keine (#157)
  • Eigene Vorlaufzeit pro Nutzer; der vom Administrator eingestellte Wert dient nur noch als Standard für alle, die nichts Eigenes hinterlegen (#172)
  • Erinnerungen wahlweise zusätzlich über einen persönlichen Nextcloud-Talk-Chat (pro Nutzer konfigurierbar)
  • Opt-out pro Vertrag: einzelne Verträge gezielt von den eigenen Erinnerungen ausnehmen

Changed

  • Erinnerungen gehen nicht mehr nur an den Ersteller eines Vertrags, sondern an alle berechtigten Empfänger gemäß ihrem persönlichen Modus
  • Nextcloud-Talk-Benachrichtigungen sind jetzt pro Nutzer statt admin-global; private Verträge erscheinen dadurch nicht mehr in einem geteilten Chat

Fixed

  • Jahresbasierte Kündigungsfristen über den 29. Februar werden korrekt berechnet (z. B. 29.02. minus 1 Jahr → 28.02.)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureV7tWZo89ABWlAIeAHK/UHdfkLFEPitosAf1vlY/s6JCobWiLXxdPkKVu4+bIIrBvtFuxMUC8n7LHCwmaGMCiJz1iYMuN7Z8yzjafh65BlAMh9oO8YoLVftrAIUSI1mPyulWPyvln8dCyTyvIEbYilsd4nB5c/Vlnvxt8XTFZYN2g5/Nkva4tByFv04sFGYVALo68YNfKhPkcQImvs/AEl5Av8M/kxSLc84xs45ARywxrbh7FCajDKDWdI59lrY2cMTR+OQ4sX+oHapSXqm4KpafKBhANI1iRyoB//hrXNB7d90FIEfccS0JxnBG5jjo+dzxdhskJlzxIsHQCguxAxw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 1.0.0
Release Details
UpdatedMay 27, 2026, 5:42 p.m.
Changelog

Changed

  • Frontend komplett auf den aktuellen Nextcloud-Stack migriert: Vue 2 → Vue 3, webpack → Vite, Vuex → Pinia, @nextcloud/vue 8 → 9, Stores in TypeScript. Keine funktionalen Änderungen für Nutzer; die App ist damit technologisch auf aktuellem Stand und das Vue-2-EOL-Risiko entfällt (#150)

Fixed

  • Benutzer-/Gruppen-Suche in den Berechtigungs-Einstellungen lädt die Auswahl wieder (an @nextcloud/vue 9 angepasst)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignaturepPd5X5RTT7Fe1VJtaOrn1QmFW8ATb5cJ6VOwB2N9mWsKMf5Pj7sJaaMJ8hHq82DjHl3vnCyiqZBdTr6EcZFKgjuodpApVOpz9jrmqAmkhGa9T1/aXrtKd7S9HuoFOo3r7ASoSeE2T+4dc9L/gs3X6C5tiwG1C0pfs8yIt2bheoOIBlYgzFNcQVldWQRvNGKj5TrsSMkir2g46ydUhNLjCXGlkGjXnK80u8GU7vdNTXNVzE6SjDrwpEwFFR5TzD5rdVmkl/yMLnvHueuZOWKj8GaroinBBxkA5zJa742/1Ff+r9xaFvew/gq4TpyN8be4MVGc9ESSyL3+j4u/3w8vpw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.4
Release Details
UpdatedMay 26, 2026, 6 p.m.
Changelog

Fixed

  • Gekündigte Verträge mit automatischer Verlängerung wurden in der Liste falsch einsortiert und mit einem in die Zukunft gerollten Enddatum angezeigt. Gekündigte Verträge verlängern sich nicht mehr; ihr effektives Ende ist das „Gekündigt zum"- bzw. reguläre Enddatum (#145)
  • Die beiden Kündigungs-Datumsfelder „Gekündigt am" und „Gekündigt zum" werden jetzt gleich breit dargestellt (#144)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureabIE//S5nrfdLkvMqDK5jexsCh2o0zIOA+CN9wZ4KeyYU3yKbJPrbdLU38JBbFUmg2y2ysi/mBL3AGYYKnm7kOKqt3qchtiF34YAo1lDxvtlBuFb0KzA7ZfXjacFeZ+2ssmxJxKVPp77jzgzHDi8JfcCD6ikwAzRgmIXJo3QAjwPrmtr82pXhcMsOSIFYboFwG4sjgLPvuaVgb/cHxtWDLix/XTmL7cbohfQnZNiNoailHOCFyFgTc9pJifm8+5nEgOLqWRo9PEb7Z7+HUMQ5ZTiyxU1uTqOzJ4FpPMRfhzcUH7fV2vn/Ot+qaZWgZewYCcqfawAE/oNGjDbGlHU/Q==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.3
Release Details
UpdatedMay 21, 2026, 8:36 p.m.
Changelog

Added

  • Datumsfelder (Start, Ende) nutzen jetzt einen Kalender-Datepicker statt manueller TT.MM.JJJJ-Eingabe — einheitlich mit der Kontakte-App (#137)
  • Kündigungs-Automatik: Neue Felder „Gekündigt am" und „Gekündigt zum" (z. B. bei Sonderkündigung). Gekündigte Verträge werden am Laufzeitende bzw. zum „Gekündigt zum"-Datum automatisch beendet und archiviert (#136)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureKc/F73lI4B9xNoeBuc1BuEuqq7He1bCpN76n1QPN4j9BWx+DexEUo5jtcBW0eVw5EPkwUqiq9DoIoe6RMbu/MKy0046PTryjs36Lp6YoHaUvU4W5gmjxHX9xKW5juFs4C4XuxahiA0J3iaadc6nEnf/5AA/5p37mGDmxwXSnDsM3pFANcgeHZkDAA09VAp/zaTTdL+HADuJkRNxYSehB6W6huFFrdZnUF4bVcfpveKAkTWDl2wcbxiMfNST8MFlYGkjaJLSdL9JcQ51nTjrJb7YIZXOL1nrUPPbaQ7jtweV8Je3oCYWo0+aTl5JQFMCpTMRuYcWoKdg++cY3ChaC2g==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.2
Release Details
UpdatedMay 21, 2026, 1:41 p.m.
Changelog

Fixed

  • Vertragsdialog: Die Buttons „Abbrechen" und „Speichern" bleiben auf kleinen Fensterhöhen als fixierte Fußleiste sichtbar; der Dialog nutzt die verfügbare Höhe adaptiv statt eines festen Limits (#134)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureLgJztbw125YdscWFiR2zrsKhRubnejkpr/I79S1rLyXkao5ouB2JKdYVk8ACl9wU89ysdhIbERnoqmUXTedEvTR9Xwf38QitTuTFY+ouF6E04TowuQ3mYiYWQdGS3EHN9k8njHUqQ+rQoq9MAFiFcBG+5VT2baebfu8DVKUJHIN//E2B2+hy1jJKvl9Zll9tBLcek9pEN+P9IfsEisr1SSAbK8ipsdOzlny4Cp+xbEDpHNsJN8USkzjkyD6zdmeUxWo0O1Z7mLBbl/Y//guYcXyRlSb2do0UdlyKkV94G7J3E9mByOUtnzgLwMiQSWQ5xgJuFoxSXaC9A3j7nhqYZA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.1
Release Details
UpdatedMay 21, 2026, 10:27 a.m.
Changelog

Security

  • AI-API-URL wird beim Speichern gegen Schema und Host validiert: nur https oder http auf localhost/127.0.0.1/[::1]/.local/.localhost (#123)
  • Schutz gegen Prompt-Injection in der KI-Extraktion: PDF-Text wird in <document>-Tags gekapselt, eingebettete schliessende Tags werden neutralisiert (#124)
  • Weniger personenbezogene Daten in Logs: E-Mail-Adressen werden maskiert, Vertragsnamen aus Reminder-Logs entfernt, Erfolgs-Logs auf Debug-Level (#125)
  • API-Key-Maske als einheitliche Konstante (Single Source of Truth) statt hartkodierter Werte an mehreren Stellen (#126)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJkCx2S+gI4dQ6jiCwsYWqRNkaM7GGnjgcPEf43+xXHVDf5iwdm3i0w7K9naqDkABFNkFBTTVbau/++zkabkSNr0yt7sdipDe9N4i4trEpjpwogrr9/A3lE61zNFT2/t9eXkCoGO3UMDdFABbO5VMqABfpwk4vi3jns7RRrGry99YQBf5H7ieJfwZGU2wLxABs/hDkQPzP/NUFiIumSzGKHPRXjPa6RpSKfAjGCy32mwgM/eiJLkB9BGYgPSz1lyxUsXYNoWvqQn61X8H2//LTuap8Cxwl2+9kkpJ7jjRAObeExYgYOl4Iu9VJIz0IzJZHk3yjzWy52Kd/V6/NOon6w==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.5.0
Release Details
UpdatedMay 19, 2026, 3:23 p.m.
Changelog

Added

  • Vertragspartner-Feld jetzt als Autocomplete mit Vorschlaegen aus bestehenden Vertraegen (#107)
  • URLs in Notizen werden in der Leseansicht als anklickbare Hyperlinks gerendert (#108)

Fixed

  • Doppelte Erinnerungs-Mails: wenn beide Reminder-Fenster gleichzeitig aktiv sind, wird nur noch die finale Erinnerung verschickt (#111)
  • Per-Vertrag reminderDays-Override wirkt jetzt korrekt auf die finale Erinnerung — kein verfruehter "letzter Hinweis" mehr wenn ein eigener Wert gesetzt ist (#116)

Changed

  • Screenshots im App Store aktualisiert (saubere Demo-Daten, Autocomplete sichtbar)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureNb7Dwx1o9fbkIrkRWWpmxB4+npA3YrlIjy8b9l1PE9jRCnXzC0iDqTZSB2MYID6R5PJ5TNjb+160yy2/TKk677+h0L5PWdVJiJG0QrwlgvXHQakC1p2ojrfNVKey+jD5BKWFZCvH/M6wtiqjaK+LYj80vTBFkOlWIqwPc5UIoQu3dhTcg79tc5rSPAw4vsFwqxGYsbhvZmX3MAl2dnTa/80TJVLzlNYUZWUrO21AKTZlY0rF087EbNOAptue105x8cksaKyhVNIUyY7uZ+evx0V9y0irJKrR8RDvrX8AlJYl17XMmNlVZy63DB+HkRAueCgVlPatJRIzIWPO1v+tkA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.4
Release Details
UpdatedApril 29, 2026, 9:34 a.m.
Changelog

Added

  • Aktive Sortierung wird im Sort-Button angezeigt (Feldname + Richtungspfeil), nach Nextcloud Tasks Pattern (#82)

Fixed

  • Kuendigungsdatum bei auto_renewal-Vertraegen springt jetzt automatisch zur naechsten Periode, wenn die Frist bereits abgelaufen ist (#80)
  • Vertraege ohne Kuendigungsfrist (z.B. befristete Vertraege) werden bei Sortierung "Kuendigen bis" ans Ende sortiert statt an den Anfang (#93)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureNogaqjh7Wgym0VWtGsKfYk+cWpEd5B30T3k3VZSRMZuTnFbNhbj9sfFsIjhNppDdfAoGxUa/Ufijn2sSrW7yYR3oICOMl0SpsWZjg75j4LWi2hjZnJjNS53FqGy1NpbPDp+WPx6O2VFDbY2s2aLUdBA6M3+hmIj8Vq9Nt92NkxqmSnSSAbKLIpbLHaVabsDROCxE6chGmsNCn+JgePR3QmjeVQfC1qLlJ4nfb5+3rHVmaIiuc8DjVssRGY9I8hiedcT/11D1RTbhuw99SlqlWM01MEESBC8H1jOv3TDt4hkRL6FatCVJSW4ZY4yWGwxVcUiWUSRvJI510yUnAJbIOg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.3
Release Details
UpdatedApril 14, 2026, 12:18 p.m.
Changelog

Fixed

  • KRITISCH (#86): App-Update und occ app:enable crashten auf Nextcloud 33, weil der Repair-Step die seit NC 11 deprecated und in NC 33 entfernte OC_App::getAppPath() nutzte. Betroffene User mussten die App disablen und auf v0.4.0 ausweichen. Fix nutzt jetzt die OCP-API IAppManager::getAppPath().
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureiEPxRKZ/36V/MAFhrVNIQy+gjHVeg2HpNs4V5cPvJuTHogZmr6Q3YTnWVG+RSV1A6HPNDo3xYakD/60ZlulWxcPVsa/jOPnT4J0Pm9AGrqIWkwS1FlCnXHmcWrzs16qIte3xrZMeB7Gl80f5SaoliEq3+OWst6f82kbs5VNqdB7x5UMYLYspJqvotyo+DJK9IpGb9ZUSXHEyGFBqPzpLPD6J8grG6FiLgIPD/OPHjd5ouQ9HGkIRT54AfWqZO7BiRYs6lr+6lG0jy5r6fzyLkXsZFmEm1bP2919KHoCCy8WvZENpb8EUcRaWli0GBiXGt+U0aBa2zq9EPCKYQfKYbg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.2
Release Details
UpdatedApril 11, 2026, 10:02 p.m.
Changelog

Fixed

  • Automatische Bereinigung von Extra-Dateien aus frueheren Releases via RepairStep
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureNixveg25w9r9rK41NCf2CvJS4nMr2SFvihlE2xfzEOiqUuJOZzaw7z8ZUqxB+EyYOwrHF767bUF8r5HPpCCwaVRg9d9lKG9l/yUAR204X2KnDDWEgE1lyLLgtzgClAnANxXB6OpBSCwNEIRmKjvo8wX3tSpP3ZGkVvZwjGSySIMqQt0PfewdnF4CCKMdA6tat7hq3nLmKM/wzvzfvkSORwohEh0+eqdCpWRkmGz+NUsVNpXb8j2FmPuBpPe8eI2YW9psoDyjP7YKLSUw2SAa48kIM8aBHHR5A7t4plo/eHbvVuwEGXeX+YvXgfyqlUdEz6TpCNUvAt+33cpUm7dHYA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.1
Release Details
UpdatedApril 11, 2026, 9:03 p.m.
Changelog

Fixed

  • Integritaetspruefung: test-results/ aus Tarball entfernt
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureEfqS20ZDolIXGiGCLx2Aw/3O2DNYsWMTVOfYKYH3kvd/HxoJn6lPXSDNi+VZZy6avl7WWA894kWJAc71GRful8rOIRVFlZI/w9+AbH/uZ2Iw1tjUWh+XNBWEhYFEsWT06CY/NH5l1sVymL61a8vbP2fMNaz1cho7DgMrbb1kubhGh9FYDmwUhrgB4g/P0CB2KMZA/bMdfhIn06KzmpyyBJ+avCOqgXFhbmj9GLiXWhr6S48mdlcN52AaCYLAACRKixZqs0jbeQAcNEsD9gJafUudfk5MseT6EX5dqSO2LdBRIhGX2nGrJGl+wJTC35c7/7DOG3VxBO+gMf31WYMnFQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.4.0
Release Details
UpdatedApril 8, 2026, 7:59 p.m.
Changelog

Added

  • Suchfeld in der Sidebar: Client-seitige Volltextsuche ueber Name, Vertragspartner, Notizen und Zusatzfelder (#60)
  • Globale Nextcloud-Suche: Vertraege erscheinen in der einheitlichen NC-Suche (#60)
  • Vertragstyp "Unbefristet": Enddatum ist kein Pflichtfeld mehr (#49, #67)
  • Filter "Ohne Kategorie" in der Sidebar mit Counter (#71)
  • Sortieroption "Kuendigen bis" in der Vertragsliste (#70)
  • Archiv-Counter in der Sidebar
  • Editoren koennen Vertraege in den Papierkorb verschieben (Soft-Delete)

Fixed

  • Kuendigungsdatum-Berechnung bei Monatsende korrigiert (z.B. 31.03 minus 1 Monat = 28.02 statt 03.03) (#72)
  • Browser-Confirm-Dialoge durch Nextcloud NcDialog ersetzt (Archivieren, Wiederherstellen, Kategorie loeschen)
  • NcDialog-Buttons nutzen buttons-Prop statt actions-Slot (verhindert Re-Trigger beim Schliessen)
  • Papierkorb nutzt ContractListItem (konsistentes Layout mit Vertragsliste und Archiv)
  • Erinnerung wird automatisch deaktiviert wenn Enddatum entfernt wird
  • Datumsvalidierung: Ungueltige Eingaben werden geleert mit Fehlermeldung

Changed

  • Loeschen-Dialog zeigt Hinweis auf 30-Tage Auto-Cleanup
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureSieDpGuTZ56Y5UGTUJ9Svk2ihCo3g8UJ59F4unOb/KPBG1movGAamOxrugqvTK1LD/azfUJ2TTpQvMXU5QBFD2aOkPSqxmcIlQpVuljKV2p+jvWlzpYMjZsQLNm+iw/SXA/MH0EK50ONVkiNOtqbhdbBxB+tOEdTMRcZVzBAHtwANWmJ/Rd+ukqXTZfvNJyIZzJBFLE5UggFs+UTXhhYyU3RMMVFC6j1QjSv/wvTYYBrAxBnqRxgvaZxbM40eMAm/tsVHtNblyKQnT3VpVEqoYHK3w/hxCv/NgDGCGo6leTSTO0AaXq7DlkMKxJUq2OJ3g7n5HzKyNXcTuVUdxFIJw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.3.0
Release Details
UpdatedMarch 30, 2026, 2:05 p.m.
Changelog

Added

  • Benutzerdefinierte Zusatzfelder: Bis zu 3 admin-konfigurierbare Felder pro Vertrag (#58)
  • Zahlweise (Zahlungsintervall): Monatlich, Quartalsweise, Halbjaehrlich, Jaehrlich, Einmalig (#59)
  • Externer Link Button: Externe URLs als Vertragsdokument hinterlegen

Changed

  • Formular-Redesign: Zusatzfelder in Grunddaten integriert, Kuendigen-bis in Laufzeit-Zeile, Kosten/Dokumente/Erinnerung als 3-Spalten-Layout
  • Vertragsdokument oeffnet im Nextcloud Viewer Overlay statt in neuem Tab
  • File Picker statt Smart Picker fuer Dokumentauswahl (weniger irrelevante Optionen)

Fixed

  • Vertragsordner "Oeffnen" Button funktioniert wieder (fehlende Methode)
  • Rote Pflichtfeld-Markierung bei leerem Formular entfernt (HTML5 required Bug)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureXWu692AGYav7p6GKcaNR1ft6lcej/OKXlfZGlfzYddiNHtKbifsGjAeMlSdu1hH8pwjPu0a+cmXMCL4QoWkntJOSRXDweVgKE1nqbQUfvhADCxHM9DgQOWwmq1hYZIa+Aeyr7ip4Q9OJJR55phPjMJQzjPslVNu/gT6TW2+pWQlNz4i0So17bWMOUCoHtJIYuLjhs1gl1yAKysR2AOqXYmHUt0WyclOi8MHRnAENlEJPq9/BeuHsZH3X8etDHxnOkV3kWpxeNJSzJPBtFrZSS6Rm/Y1ezLWM3ByC/Paoas5m/kuAosWBNC1z4mMj7lbin2ch9XlXV6EOCYNWfhteCA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.6
Release Details
UpdatedMarch 25, 2026, 1:47 p.m.
Changelog

Added

  • Smart Picker fuer Vertragsdokument: Unterstuetzt jetzt externe URLs zusaetzlich zu Nextcloud-Dateien (#48)
  • Automatische Statusaenderung: Abgelaufene befristete Vertraege werden taeglich auf "Beendet" gesetzt (#53)

Fixed

  • Falsche Datumsberechnung bei monatlichen Vertraegen aelter als ~8 Jahre durch Iterations-Limit (#51)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureXBnMgjIAfGw91tRrbID795GM7wJT0TVgGO/GR/OP3cpjrTSWl7nd7Af1i+aJALmk0Xj8XJ98hCW2jX5MZbnSMeaW6DvrqWWjRucwAL1zskc5KlmWkaewTrvYwFvPqbg7RbhUJpEwluw98r2etZ7WT4bO+aaPDHYyCRtn9vV+WEDguj0px2fUC7SB7mt7eOjkdZdR3aXtYWw4aKydOy8e2B2q3ousMrRS0Z8/+XyZ1fHyDJ1KmujM1Yw8FdAxKK/KsH1CAHYRLgGl9ue1c8LnbgkYGn7/SV9ZvBCv9/WodGosndAjJv+Pc00UpCjaFRWagcWpxDdHf7zn5RhbWrD0CQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.5
Release Details
UpdatedMarch 16, 2026, 9:03 p.m.
Changelog

Fixed

  • Vertragsdokument öffnet jetzt im Nextcloud Viewer als Overlay statt nur den Ordner anzuzeigen (#43)
  • Fallback bei fehlendem Viewer nutzt File-ID (/f/{id}) statt Parent-Ordner
  • "In Nextcloud öffnen" im Formular nutzt ebenfalls File-ID für zuverlässiges Öffnen
  • AI-Extraktionshinweise werden jetzt auf Deutsch angezeigt statt Englisch
  • Validierungsfehler (Enddatum) nutzt NcNoteCard statt schwer lesbarem eigenen Styling

Changed

  • Nextcloud Viewer wird auf der Verträge-Seite geladen (LoadViewer Event)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureC7DaszHix+eyQDohShhjWWGVKdBpHwbC65fX7/ISICwUvH8gPNQM3fJCLeAFJLyVljqHVu810b8OiDJI9UJe9+z11qKU7fJfWd51nf1cspgqMUUpYgzau2XVHHQnafwoi2jnTmj2ZwSmxlVLjexlHIeeWrJL4hbbuJVmP4LkSW0TVjBY+fyrnKA4md1v0Q0ganfxYanuJw+/KD/xzCk1KSeWsEJp3HfWzU1oFNLoPul64fAezCwLpEOEF5M6z5fqt9Afv6OITMVubdl8zugT/1FJTkAf8q30KyUhk0fSBIKMEK8ZsNq4D26emXNof0mS78Rg+/ceWbSoWEfKpLP1rg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.4
Release Details
UpdatedMarch 12, 2026, 10:35 p.m.
Changelog

Fixed

  • Fix "Extracted app has more than 1 folder" installation error caused by macOS metadata in tarball (#41, #38)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureQu6/CWJCFqj+gSaRsmLWn8Ysyw5hCQiGJLURRPyfU+xrDiSeyaMOeWzLxasI3GUDbNYeTN+AWlsqTguLN0FS+kJRH7TbkSbiBR0Hmc9aLy/fN3M7JBp3mRUs1LKAtaRTZoteBFg7LjqJFMlYWpJ03nkYQeGSZ5Scm0064AG4cNf59TOvwRs8I1/U4D3AyMsGpMIVn8XRB7ytVRxMKUCC4znJnC82BhPGSIGRyjjeM/Xit4uKd+0zLY1Vz+dRwm5qsKLfMzFCzB1iCQC15zesdh3IM8lbCHesW66SwcSIKeMYkfmcFV46BxuJbm+2Jq5GZWWnqnCTJtAIvRtZspoYAw==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.3
Release Details
UpdatedMarch 8, 2026, 10:31 a.m.
Changelog

Fixed

  • Fix app update error by repackaging with correct code signature (#38)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureRA2wGkJYFDex8dxBPX9Aa7dQqPeTZqVNzjkNqIxR3PLX/pgDolF0etmcJCwEfW2Z8pbB/4RpxljeQTBKFpTo282+CDW89sYvE5Ws2HNJNsghNlAwHFdM6YdpnlIq292ONatPWSqnl4BalxBWHGtlLnj6PafAobRlVgUFYnvT0t2WqK1CMpZw1SVazAUx0M+0Te/HRBXxWWkL7LdQwofQj9aSgwRY2TZXR6jbVC82em1DU2K3Engb/O2YQI7NQeImJfQNACXLXiT4+O9GFSyMA8/nweE5hG3elxvXz2JgTb81rUQQ4i+1+L9VaLc/+2tkiy6XhepO/t+qu8KOWfc+dQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.2
Release Details
UpdatedMarch 8, 2026, 9:57 a.m.
Changelog

Fixed

  • Repackaged release tarball to fix "Extracted app has more than 1 folder" update error (#38)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureO3O8BSYsBnU6UnfgULrtgWyKvN2Zua2hhUnKxy9OcPGoZIoKZFQHV3BeqKzui/o5RXgCvZ1G3HfCXum+6ntxknIjyM+MqErUezvf36asxav3M2dhF7P29DntLWHtt4uZJZO5ypfCxBKWcz1OLooPYkKrDSO4t7l2XDV/1ugibkEP45U66AWlhihCAWIU/7Up6rpXwk8baMXbLSlbpfq62UeMs3X3brvXLrl0bpH6BpzGRMP2x1US1qttjAgN7DmnILf0907h19UOrhwzn0cp5M6qHPwUtdFSSBQCQ1Zw8D7sYWELhLMQPYcqkf0/MenwTs5ARnR2oUR8un70rW3bUQ==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.1
Release Details
UpdatedMarch 6, 2026, 1:15 p.m.
Changelog

Added

  • Support for fixed-term contracts without cancellation period (#28)
  • Dynamic reminders: cancellation deadline for auto_renewal, expiry date for fixed contracts (#27)
  • Code review documentation (docs/20260303_code-review.md)

Changed

  • Settings link moved to navigation footer (#1)
  • Improved privacy toggle UX (#30)
  • Cancellation period field only shown for auto_renewal contracts
  • Email and Talk reminder messages now differentiate by contract type

Security

  • Added userId null-check in ContractController (H1)
  • Added try-catch for DateTime parsing in validation (H2)
  • Added noopener/noreferrer to all window.open() calls (M4)
  • Added htmlspecialchars for email URLs (N1)

Removed

  • Unused CSS class .form-row--thirds (N3)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureULNilsw2pCJqm9zCMtbzqe0aRKt5wEJkVQNQHuXKr18KLD3+LkhFdrLTSb2AsQnXzj2m2yUHnFXPmpJxIsNFLdJyO/480JqiGtb++48pQVvFXS7PYjSAifcFQclgyKfyI9vNz7F4+BekAJijiTbXQTaHNOMoUHKjpFB6iWkH1YuDlGttiAR57vOCZuVFHbPbdvGnRj6w+JuHwBsikY37FGGHZF8JUMKoH8im4Nku1ggy84qGeFSNb6SBELxMZLh6x5cQ2XqrWzEr9KoxcS8Medg969uzrooxYtFIySzIatNKDbZLUOy7ps/Js5b25ZG2A7TEBnRbK/5uk+DAP+FLwA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.2.0
Release Details
UpdatedFeb. 27, 2026, 1:44 p.m.
Changelog

Added

  • Filterable contract list with vendor, status, and contract type filters (#22)
  • Sortable contract list with persistent user preference (#21)
  • Duplicate contract action (#18)
  • Folder icon in contract list to open contract folder (#15)

Changed

  • Display name renamed to "Verträge" (#17)
  • Filter and sort preferences persist per user across page reloads
  • Updated screenshots for App Store listing

Fixed

  • Categories now sorted alphabetically (#8)
  • Invalid JSON in l10n translation files (#16)
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureKIBmvrqKEGy2kGUnXUthC95r6BKGgWd6ip2Sz7fLHuDP9+9DA7Bw8ZS6k57y7ve/EOCxRk0jCHrDjCg1z6cBMvathmrS8EYskirFmOThHB4R842XOFZJdniItJcJjEDpdxRQUQ7pN+6zUVNGqnMMJFS3iFjsHJ09xjnyYIfNV92uEM3wwLPHsUpLf/EmDwMHWxqeyQecy4LofKgzl5nzqCLox8b4sJwYMLJh4AKRdP3MeEJmZ1sOIjoHvMFlv+8FfJ+bYndB7X4/mByi8YGBFsu7oE3nSZYFiWBPJyrE8iXvpyFOjbF3LDO7l6K9tvoZ/oVfRAW8gcxXjIy/5cGeEg==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.1.5
Release Details
UpdatedFeb. 23, 2026, 8:26 p.m.
Changelog

Fixed

  • FilePicker not opening on certain hosting providers due to extremely long webpack chunk filenames
  • Selected folder/file name not visible after FilePicker selection (only in tooltip)

Changed

  • Nextcloud 33 compatibility added (max-version raised to 33)
  • Webpack chunk filenames shortened to hash-based naming
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureJv66e/NQUYBs/GKvoVA5n79dFyMMgRggxXCa4C0RU0Hq5W4pc7tVl9KOe8hPaLtcu9Yfi8FeTttKUEZdrSVZvsiRyADH+hd5XXFvV/IRKq0X3HltOTre597GzCyXUuLKK3W2ORbgQlydnxudQqC8rvsUGUkl4AqhZf8mfmIzYd07nrRsPGIE7WxRJ8aDE1nfJiq9fFrMXBCr3UpEwC9o9BYroyc3cbyGwpWzF0hFZIwJ76Wm388oOskC0bCCRJT2MyoGaQ++kXaxY09csHtWfr+d/V9HAYnyDBRdeGYxaKqgjE57AJNKNCZjRqiYVuajIt91CYN7c62OjtaDtuIhjA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<34.0.0
Minimum Integer bits32
PHP>=8.2.0
Verträge 0.1.4
Release Details
UpdatedFeb. 4, 2026, 11:42 a.m.
Changelog

Added

  • Permission system with Editor/Viewer roles
  • Trash functionality with 30-day auto-cleanup
  • Private contracts (only visible to creator)
  • Read-only contract view for users with Viewer permission
  • Nextcloud Initial State API for admin detection

Changed

  • Improved E-Mail reminder texts with personal greeting
  • Viewer users can now view contract details (read-only)
  • "New Contract" button hidden for Viewer users

Fixed

  • Mount point conflict between header height and admin detection
  • Permission dropdown now loads all users/groups on open
Licenses GNU Affero General Public License v3.0 or later
Certificate-----BEGIN CERTIFICATE-----
MIIDCjCCAfICAhLsMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYwMjAyMTU0MTQ4WhcNMzYwNTEwMTU0MTQ4WjAaMRgwFgYD
VQQDDA9jb250cmFjdG1hbmFnZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQC5R5Qp4Wm5Q2dDNSyN33MAIianNamIQCzLP9TqKbvrHUvhIb5XojZizo6H
/3jZTpRau83rYewLsJiEDgyuKdLiFYiuas5bdU6lie/X2V21BeowwqlOGoVaiXwE
vDmarjfhHAMIbW/H8IyT1PEAvSLZLl8vofGDibsovGacRfBlj/WhTQSVoFyc1N32
ivUM/rta10BLN1JurgXjN6s33uqW19bTms+y9zO3C1Wpq/KhwgVNIcoRdio4uA0e
SAnQQHE1HUieBDydwP52fFnlqf4l1OjP/WLeNrwFNWdCBqZIEZsynASFHae/cyOs
qebHseLaDRkySMmHLv2hsH//dm6rAgMBAAEwDQYJKoZIhvcNAQELBQADggEBAD08
vS9I3TjEfSfcF45IdanGUsrSMm7rCdQpdVaY7xyB8w6BymWgv9q0I4rATyCYgNIU
N8TNGNNXHutvlOJ8ACdTxDs0bitSM0VY0lNqCVInRIT3W8UfoOmvpVG6Xc5eEi1Z
O1JLVd/lH6n86cHnkcMeSH265JwdGfKFF86g94YfDJ+uU4OLwaAnmeJaWTCHn3Nm
FXWrSzvpPU7y47yCAJok+1Na0pXx5Y6BxId95ZBSBKPXmFpANvU58v52Ed+6npl5
c6wfDUcb1088N4NBP8j76ci5BB358vTSwjAV5moyFUZO63vPRRcfP1Rq03LUfWyi
dg1AcSTaDHL7vhQm19M=
-----END CERTIFICATE-----
SignatureoTMCOa/9PgznRcYsCQ82z7ctSPo44bwbadTSiQNMNhdeALLbd+Faskd3/plUTLa2qkcgUxiCrDTyEnLU4zski1LdSxhw/yFtcE5AaS1ZofLBy8Z1Dx01YMZqsQ0nt1XbPdeesmZZriIvo+fA2z4QLhyRYifPPGneNzx2M+8lt5y6LmUAZVhJtnXfHWVBLQ5I4dZDccvgzc/FZ3nbmOoMRtKrARLWG03tR6zjp853TZh+lGZVOS2sQ9JyKbgRzPem4kkDSvm1czfhWgwVlGOunY5z3e1jUkkWXsBePmHaY2FeEPCsjKV8pWjYeG6gVPuG/YyVVWg+8w6Fo0gerVQbNA==
Signature digestsha512
Dependencies
Required Nextcloud versions >=32.0.0,<33.0.0
Minimum Integer bits32
PHP>=8.2.0