{"id":49101,"date":"2026-02-19T15:44:00","date_gmt":"2026-02-19T14:44:00","guid":{"rendered":"https:\/\/churchtools.academy\/?post_type=changelog&#038;p=49101"},"modified":"2026-03-02T08:55:14","modified_gmt":"2026-03-02T07:55:14","slug":"web-v3-129-0","status":"publish","type":"changelog","link":"https:\/\/churchtools.academy\/en\/changelog\/web-v3-129-0\/","title":{"rendered":"Web v3.129.0"},"content":{"rendered":"\n<h3 class=\"wp-block-heading\">Improvements<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>General<\/strong>\n<ul class=\"wp-block-list\">\n<li>If you have configured OAuth for login, it is now possible to hide the standard login.<\/li>\n\n\n\n<li>If the confidentiality statement is enabled in the system settings, it will be listed in the help menu under \u201cLegal notices.\u201d<\/li>\n\n\n\n<li>Mobile devices that are registered during a simulation will now be automatically deregistered after 24 hours at the latest.<\/li>\n\n\n\n<li>Each person can now retrieve and renew their login token in their profile.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Groups<\/strong>\n<ul class=\"wp-block-list\">\n<li>The status and last execution of automatic memberships can now be displayed in the table if you have the appropriate permissions.<\/li>\n\n\n\n<li>Downloading QR codes now has a meaningful file name.<\/li>\n\n\n\n<li>Group member fields in the registration form can be duplicated.<\/li>\n\n\n\n<li>If errors occur in routines, an email is now sent to the administrator so that problems can be responded to more quickly.<\/li>\n\n\n\n<li>Routines can now be saved and activated in one step.<\/li>\n\n\n\n<li>When displaying the \u201cCreate group\u201d button, the system now also checks whether the user is authorized to create a group for a given group type.<\/li>\n\n\n\n<li>A column for chat status can now be displayed in the group overview.<\/li>\n\n\n\n<li>When adding participants to a group from another location, the participant&#8217;s location can be adjusted as desired.<\/li>\n\n\n\n<li>Relative and formula-based date filters are now possible in automatic memberships.<\/li>\n\n\n\n<li>Follow-ups in routines can now also be created and edited with the permissions \u2018Administer groups\u2019, \u2018Edit group\u2019 or \u2018Edit groups of group type\u2019.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Finance<\/strong>\n<ul class=\"wp-block-list\">\n<li>There are new donation receipt templates that are easier to edit with the template editor.<\/li>\n\n\n\n<li>Opening balance sheet values can now also be created after the new accounting year has been created via the context menu in the master data.<\/li>\n\n\n\n<li>For foundations, there is now a special table for the donation receipt attachment.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Calendar<\/strong>\n<ul class=\"wp-block-list\">\n<li>Recurring appointments are now directly recognizable as such in the calendar.<\/li>\n\n\n\n<li>Quick search now also searches for calendar appointments.<\/li>\n\n\n\n<li>When I add an exception to an existing appointment series, the associated resources are no longer reset to \u201cunconfirmed.\u201d<\/li>\n\n\n\n<li>All calendars can now be selected and deselected at once.<\/li>\n\n\n\n<li>For exceptions and manual appointments, the tooltip calendar now remembers the last date added.<\/li>\n\n\n\n<li>Meeting requests now include an ICS attachment that can be used to save appointments to local calendars (Outlook, Teams, Google).<\/li>\n\n\n\n<li>Unused appointment tags are no longer automatically deleted.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Resources<\/strong>\n<ul class=\"wp-block-list\">\n<li>Improved performance when calculating booking conflicts<\/li>\n\n\n\n<li>Performance optimizations for the My Bookings widget on the home page<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Posts<\/strong>\n<ul class=\"wp-block-list\">\n<li>The administrator can now specify in the system settings on which days of the week posts are sent by email.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>REST-API<\/strong>\n<ul class=\"wp-block-list\">\n<li>REST endpoints for managing the growth path have been added.<\/li>\n\n\n\n<li>REST endpoints for managing relationship types have been added.<\/li>\n\n\n\n<li>There is now a new API endpoint <code>\/events\/facts<\/code> to retrieve facts across all events (paginated).<\/li>\n\n\n\n<li>Birthday API can now filter by a person&#8217;s status.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>System-Settings<\/strong>\n<ul class=\"wp-block-list\">\n<li>Logos from third-party system providers are now displayed on the login buttons. For ChurchTools systems, the logo is retrieved directly; for other providers, the favicon is used as a fallback.<\/li>\n\n\n\n<li>When logging in via OAuth, consent to data sharing is saved and the dialog is skipped the next time you log in.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Fixed Bugs<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>General<\/strong>\n<ul class=\"wp-block-list\">\n<li>If no admin email is stored, the &#8220;website sender address&#8221; is used again as the default so that the &#8220;contact admin&#8221; function can still be used.<\/li>\n\n\n\n<li>Localhost is now also permitted as an OAuth client redirect URI.<\/li>\n\n\n\n<li>The church logo is displayed in emails without distortion.<\/li>\n\n\n\n<li>When searching for groups, the location is now reliably displayed.<\/li>\n\n\n\n<li>Registrations via QR code now lead directly to the ChurchTools app on mobile devices.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Persons<\/strong>\n<ul class=\"wp-block-list\">\n<li>Email attachments are calculated correctly and attachments that are too large are rejected.<\/li>\n\n\n\n<li>The correct due dates are now also displayed on the start page for postponed follow-ups.<\/li>\n\n\n\n<li>When filtering multiple selection fields, all matching results are now found.<\/li>\n\n\n\n<li>After changing a group membership, the affected follow-ups are updated.<\/li>\n\n\n\n<li>Open tasks for group requests and group deletions are now displayed correctly on the start page and in the Person module, based on the actual permissions.<\/li>\n\n\n\n<li>When merging duplicate persons, the notification settings of the original now take precedence.<\/li>\n\n\n\n<li>CSV files can now also be uploaded to Firefox on Windows via drag &amp; drop for person import.<\/li>\n\n\n\n<li>Postponed follow-ups are no longer counted under \u201cMy Tasks.\u201d<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Groups<\/strong>\n<ul class=\"wp-block-list\">\n<li>Group notes can be edited again and the security level of a note can also be adjusted.<\/li>\n\n\n\n<li>The unsubscribe link in groups now also works if you are not logged in and the group is not public.<\/li>\n\n\n\n<li>The area can now be edited correctly again in the group registration settings.<\/li>\n\n\n\n<li>Group member fields are now always returned with their default value in the API, even if no explicit value has been set.<\/li>\n\n\n\n<li>Automatic memberships no longer display incorrectly when a filtered group is archived.<\/li>\n\n\n\n<li>The \u201cNegate\u201d and \u201cIgnore\u201d functions are now more stable in their execution.<\/li>\n\n\n\n<li>Yes\/No properties can now also be deselected in the info widget.<\/li>\n\n\n\n<li>The endpoint <code>\/groups<\/code> now returns the correct chat permission (\u201cpermissions.useChat\u201d). Previously, <code>true<\/code> was returned even if the person was not a member of the group with a chat role.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Calendar<\/strong>\n<ul class=\"wp-block-list\">\n<li>When switching from a newly created appointment template to another, the image changes accordingly (without closing the modal).<\/li>\n\n\n\n<li>When saving an appointment template, the \u201cOn behalf of\u201d field is now transferred.<\/li>\n\n\n\n<li>The settings of the \u201cLogin\u201d tab are also transferred to the appointment template.<\/li>\n\n\n\n<li>Pressing Enter in the input field of a new appointment dialog no longer opens the search.<\/li>\n\n\n\n<li>Similar appointments with different descriptions and locations are no longer grouped together in embedded calendars in the compact view.<\/li>\n\n\n\n<li>The location of an appointment template is now transferred when saving.<\/li>\n\n\n\n<li>The print preview now includes personal calendars.<\/li>\n\n\n\n<li>External absences can now be deleted correctly with the appropriate rights.<\/li>\n\n\n\n<li>Images of an appointment are saved when saving a template.<\/li>\n\n\n\n<li>Links to the calendar now actually open the calendar entry.<\/li>\n\n\n\n<li>The checking of existing appointment tags has been corrected.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Events<\/strong>\n<ul class=\"wp-block-list\">\n<li>File attachments to songs can be edited again on mobile devices.<\/li>\n\n\n\n<li>Reasons for canceling an event in the \u201cAdditional Information\u201d field are now transferred.<\/li>\n\n\n\n<li>Table headers now match again on mobile devices.<\/li>\n\n\n\n<li>The template dialog can be closed without confirmation if there have been no changes.<\/li>\n\n\n\n<li>Simultaneous services in the same event are now displayed correctly in the service schedule again.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Resources<\/strong>\n<ul class=\"wp-block-list\">\n<li>The permission \u201cCreate requests for resources with multiple bookings (create virtual bookings)\u201d is working again.<\/li>\n\n\n\n<li>Booking conflicts are now displayed anonymously for users without calendar permissions.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Wiki<\/strong>\n<ul class=\"wp-block-list\">\n<li>All images are now included in the PDF export again.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Finance<\/strong>\n<ul class=\"wp-block-list\">\n<li>Deleting &#8220;Rule-based suggestions&#8221; is working again.<\/li>\n\n\n\n<li>If rules for account statements contain links to data that no longer exists, the page will now still be displayed correctly.<\/li>\n\n\n\n<li>When importing account statements via MTA-940 (iso-8859-1, Windows), umlauts are now processed correctly.<\/li>\n\n\n\n<li>Date validation now also includes the last full day.<\/li>\n\n\n\n<li>When splitting an entry, the spouse is now also included.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>System-Settings<\/strong>\n<ul class=\"wp-block-list\">\n<li>OAuth apps are displayed again in permission management<\/li>\n\n\n\n<li>System emails are no longer sent if email delivery is disabled in the system settings.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"template":"","plattform":[707],"class_list":["post-49101","changelog","type-changelog","status-publish","hentry","plattform-web"],"pp_statuses_selecting_workflow":false,"pp_workflow_action":"current","pp_status_selection":"publish","acf":{"version":"3.129.0"},"_links":{"self":[{"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/changelog\/49101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/changelog"}],"about":[{"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/types\/changelog"}],"version-history":[{"count":2,"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/changelog\/49101\/revisions"}],"predecessor-version":[{"id":49103,"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/changelog\/49101\/revisions\/49103"}],"wp:attachment":[{"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/media?parent=49101"}],"wp:term":[{"taxonomy":"plattform","embeddable":true,"href":"https:\/\/churchtools.academy\/en\/wp-json\/wp\/v2\/plattform?post=49101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}