# 🎄 ChurchCRM 6.6.0 — Global Languages & Pledge Dashboard

> *A Christmas release: for every congregation in every language.*

Released: December 25, 2025

---

## 🌍 Massive Localization Push — 44 Languages

6.6.0 includes the largest single translation effort in ChurchCRM history. Multiple languages reached major milestones:

| Language | Progress |
|----------|----------|
| Afrikaans | **100%** ✅ |
| Arabic (Egyptian) | **100%** ✅ |
| Greek | 60%+ (up from 0%) |
| Hungarian | 99%+ |
| Many others | Significant progress |

Languages with meaningful updates include Spanish (all regional variants), Portuguese, German, French, Chinese, Italian, Russian, Ukrainian, Korean, Japanese, Dutch, Polish, Swedish, Norwegian, Finnish, Romanian, Indonesian, and more.

This work was done through a combination of community contributions on POEditor and AI-assisted translation with human review.

---

## 📊 Pledge Dashboard — New Finance Feature

A new **Pledge Dashboard** is now available in the Finance module:

- See all active pledges with payment tracking — how much has been given versus how much was pledged
- Navigate directly from the Finance menu and the finance dashboard
- Family pledge summaries organized by fiscal year
- Supports the full pledge lifecycle: pledge entry, partial payments, completion tracking

---

## 📱 Phone Number Improvements

- **"No format" phone fields** now work correctly — custom phone fields marked as unformatted no longer have a phone mask applied
- **Self-registration phone types** simplified — removed the unused "work" phone type
- Phone mask toggles now properly initialize for all custom phone field types

---

## ⚙️ Stability & Fixes

- **Birthday calculation** on the dashboard now correctly shows next-year birthdays when the date has already passed this year
- **Group properties table operations** — added error handling for insert/update operations (issue #6672)
- **Pledge dashboard tests** added for reliability
- Demo data now includes family photos for more realistic testing environments

---

## 🗑️ Removed

- **`sHeader` configuration** removed — the church name is now read directly from `ChurchMetaData::getChurchName()`, with a database migration to clean up the old setting

---

**Full Changelog**: https://github.com/ChurchCRM/CRM/compare/6.5.4...6.6.0
