8.2.0
Release Notes for 8.2.0
Major Improvements
Premium Management System
Premium Combination Feature
c12241300Refs #44200, Show combination in premium block.6655ff4cbRefs #44199, Fix combination image not show issue.a43a4fe06Refs #44199, Fix url parameter.8fc84edfeRefs #44199, Fix delete premium combination function.894c03304Refs #44199, Make combination content wrap and adjust the sorting.ce145d312Refs #44199, Show correct combination table in premium page.b1b40aac6Refs #44199, Update tpl to show premium product and quantity.055e10aadRefs #44199, Fix Add Premium to the Combination block function.44115a1deRefs #44199 21f, Remove unused page function and refactor code integration.926389345Refs #44199, Create managePremiumsCombination Page.0d0e8f669Refs #44199, Update tpl to show different messages based on premiums being enabled.ac7328292Refs #44199: Show different messages based on premiums being enabled.bc8d581e5Refs #44199, Add premiums_combination column to premiums page.aeecc2587Refs #44199, Add premiums_is_combine column to premiums page.
Premium Combination Database Schema
efdd703e6refs #43659, add civicrm_premiums_combination, civicrm_premiums_combination_products tables19f6747a2refs #43659, add civicrm_premiums_combination, civicrm_premiums_combination_products tables7ba832384refs #43659, add contribution_product table fields for premium restocke344f0156refs #44201, add civicrm_contribution_product table creation
Premium Inventory Management
f37c698d2refs #44201, add premium re-stock settings forme45e3ae17refs #44201, add premium restock period check and restock methode637a1844refs #44201, add restock checking method for online contribution9a1800c87refs #44201, restock premium when cancel contribution manually.0403463f2refs #44201, execute only when this product doesn't trigger restock.8ae5e92aerefs #44201, restock when ipn notify failed or cancelled.c9771576brefs #44201, add stock status , number related columns on product list page177e6cbbarefs #44201, manually restock now respect config settingsc789b2a6arefs #44201, add inventory / stock check on contribution form343c04c16refs #44201, add product internal id to manage premium list18bda5616refs #44201, add stock status and quantity editing when editing premiumad58ef232refs #44201, add out of stock description when select premium in editing contribution0650f0710refs #44201, remove title bar when confirmation premium linka49a5f55drefs #44201, popup confirm box when add contribution804e94badrefs #44201, allow manually reserve stock when create new contribution179d1c765refs #44201, add log when stock increase / decrease
Premium Combination Data Processing
1cb751820Refs #44200, Record combination_id when saving combination premiums to DB.51d0b11d5Refs #44200, Add hidden field for combination check and save combination premiums to DB.eccb50ebaRefs #44199, Fix combination contribution fulfilled_date not work issue.7833e864fRefs #44199 42f, Disable editing of premium combination when editing a contribution that includes one.7833e864fRefs #44199, Update combination name column and remove unused column.dd0f6c934Refs #44199 42f, Add combination block on contribution view page.8479b01c3Refs #44199 42f, If a contribution has a premium combination, search results should display both the combination name and product names.e800df32bRefs #44199, Only show active product in premium combination.897d198d5Refs #44199, Add columns for min recurring and on-time contribution and sum the price coumlum.54939ec6cRefs #44200, #44199 Fix premium combination display to show only selected item on confirmation pages and update translation.a7eecd37cRefs #44199, Add function to show premium combination preview block.eee560ed6Refs #44199, Update browse function to match premium weight controls.436bba982Refs #44199, Update premium combination weight display to match premium weight controls.dfc3cee0dRefs #44199, Update backend validation for premium combinations on the contribution page.
AI Image Generation Tool
AI Image Generation Interface
d8ef676d2refs #44287, add AI image generator with UI controlscab6b834crefs #44287, adjust image aspect ratio and apply dark UI theme9b2f6e007refs #44287, add CSS for AI image generation UI34abd7e2drefs #44287, add AI image generator panel1bbe399b5refs #44287, enable panel header selection3439af649refs #44287, move tabs to sidePanel module3790f3391refs #44287, optimize sidePanel tabs functionality8dc11c0f2refs #44287, build AI image generator interface
AI Image Generation Features
fc463ba6frefs #44287, feat: integrate AI image generator into Email, Mailing, and Event templates7c50909berefs #44287, feat: Add logic to open AI image generation panel6b17a7129refs #44287, feat: link to AI image generationfaf13eb98refs #44287, feat: add tooltip to prompt text field74fda918drefs #44287, feat: ensure new images match display structure and enable lightbox123962e84refs #44287, feat: implement forceLoadSample to protect user images6098b5986refs #44287, feat: implement dedicated context tracking for 'Generate with AI' linkd504a2ca5refs #44287, feat: implement enhanced AI image lightbox75e7777bbrefs #44287, feat: implement enhanced AI image lightbox9978c6f41refs #44287, feat: Add i18n and refined messaging to AI image lightboxef0b9217crefs #44287, feat: add dedicated panel message system in lightboxe8fae19c6refs #44287, feat: implement AI image generation history and UIc5afa7d8frefs #44287, feat: complete and stabilize history API and UI9d9e2801frefs #44287, feat: add AI image history API
AI Prompt Translation and Generation
4fedcd2e3refs #44288, implement AI-powered prompt translatorc39ad60acrefs #44288, return complete API response in translate method0b15bccf2refs #44288, make AI model and tokens configurable975d80cf8refs #44288, simplify error handling6b51032c2refs #44288, make AI model and tokens configurablee8c98530brefs #44288, add GPT-4o model support4c5190ac5refs #44288, use correct OpenAI message structure6d98905b1refs #44288, simplify AI prompt translation workflow674285459refs #44288, improve AI prompt variation logic6948cb768refs #44288, fix safety check issueeee560ed6refs #44288, expand image ratios and boost default resolution8479b01c3refs #44288, improve ITRI ICL image quality settingsdd0f6c934refs #44288, improve AI prompt filtering240b87388refs #44288, improve AI prompt filtering
AI Image Storage and Management
1b20130c5refs #44288, add CRM_AI_BAO_AIImageGeneration119ca75bdrefs #44288, add status constants for AI image generationebadbf4cfrefs #44288, add storage tracking to AIGenImage3efd34d73refs #44288, enhance JSON parsing for multiple formats0ae13aa85refs #44288, repair AI image API database storage flowddac1a5a2refs #44288, comment out contact_id assignment85e6e23f4refs #44288, add AI image generation API endpoint0131965d8refs #44288, add AI image generation API endpoint64f19ba3brefs #44288, rename AI image API endpointaa5c2b714refs #44288, remove try-catch wrapper from image generation76fb7239frefs #44288, correct image URL generation
Payment Gateway Enhancements
Newebpay (Spgateway) Apple Pay Integration
5d0cdd64crefs #40606, add apple pay front payment instrument266451569refs #40606, update translation of apple pay front on installation2b4ed2a52refs #40606, add apple pay frontend support for neweb(spgateway)ce3e7bc13refs #40606, add apple pay frontend support for neweb(spgateway)47dc6d91brefs #40606, the mobile google pay and apple pay will follow the specify payment_processor_id for decryption neededc27a415fbrefs #40606, add applefront, googlepay instrument backc4ce299d9refs #40606, remove wrong payment instrument on non-credit carda103f9954refs #40606, correct unit test for MPG 2.3, fix IPN issue for 2.31de067986refs #40606, use MPG 2.3 for all non-recurring8c0b0f30arefs #40606, use MPG 2.3 for all non-recurring122dedfb2refs #40606, use MPG 2.3 for non-recurring paymente79cd1b73refs #40606, use MPG 2.3 when apple pay53ce7bc13refs #40606, use MPG 1.3 when apple pay
TapPay 3DS Compliance Updates
06afc30abrefs #44228, change cardholder name / email label, correct params to name_en for TapPay6644f0502refs #44228, add default email as cardholder_emailf447b64a1refs #44228, add tappay name / email required
MyPay Payment Processing
f844d833Refs #43511, Define editableFields in MyPay to allow editing recurring contribution.68f9c797Refs #43511, Remove unused editableFields in MyPay when editing recurring contribution.
Security and Compliance
Email Domain Verification
4b23ae46drefs #42898, allowed DMARC (from as sender) when validation passedbedab1d36refs #42898, add last validation note no from email address admin listc2ea09a16refs #42898, add verify email domain spf / dkim helper function
Data Management and Search Improvements
Smart Group and Search Fixes
a8e9be937Refs #43757, Fix add2group to include aggregate field filters in report queries.02a4d9f6aRefs #42971, Remove edit link for smart groups created from saved searches.1e3f54arefs #42330, operator saved by advanced search form shouldn't be apply to search object
Data Processing Improvements
fb54aaaRefs #41693 21f, remove condition for tables without location_type_id.c616e05Refs #41693 16f, Fix table weight sorting for Chinese custom field names.4a5690dRefs #41911 23f, When element is advcheckbox, do not check if element exists.
Minor Improvements
Code Quality and Performance
14fdb23refs #43833, use global php-cs-fixer setup for this projectbc9fa39refs #43833, apply rules of phpcs to all project26446ferefs #43833, fixes dao generate not respect php style.fa088darefs #43833, fixes php 7.3 compatibility2560cf3refs #43833, apply short_scalar_cast rule of phpcs4e37bearefs #43833, apply ternary_to_null_coalescing rule of phpcsf0a248arefs #43833, apply array_syntax rule of phpcs550b09arefs #43833, apply array_syntax rule of phpcs for testsca8f40drefs #43833, apply array_syntax rule of phpcs for CRM core
API Enhancements
9558671refs #42606, add getcount support for contact and contribution API
User Interface Improvements
1826dd3refs #37390, remove RFM title and optimize layout
MCP (Model Context Protocol) Integration
fdf9adc6frefs #44112, add Bearer validation for oauth2612b59159refs #44112, mcp protocol 2024-11-05 allowed GET method612b59159refs #44112, correct claude online mcp connection notification/initialized65c5fad51refs #44112, rename API related permission name. Correct MCP query permission limitation3f51556a7refs #44112, add contribution recur idabeaaed68refs #44112, add phpmyadmin sql-parser for validate sql query78aff0af1refs #44112, add contact / contribution query tool for MCPb84198793refs #44112, add streamable for MCP38f136cd0refs #44112, MCP only return specify data for privacy reason81303f8b7refs #44112, Remove all other api call, keep generic, contribution and contact only778cb8b14refs #44112, add return properties for return only specify fieldsfe85955e7refs #44112, Add custom fields, searchable firle support for contact and contribution search5dc6dbffbrefs #44112, Rewrite permissions for REST api call for better security handling50b626ae8refs #44112, Add mcp class0a129f7ebrefs #44112, Rewrite permissions for REST api call for better security handling8d101371arefs #44112, force check permissions on api call
Testing Infrastructure Improvements
- donation tax deduction test implementation
- Membership renewal test additions
Bug Fixes
Premium System
20620f284Refs #44201, Disable editing for premiums and display message.
Payment Issues
73c7e827brefs #43167, fixes BaseIPN load payment objects issue when required is false and doesn't have contribution pagee9e64cdbbrefs #43167, fixes contribution page requirement when IPN1c3fd8fe9refs #44201, fixes manually contribution status change restock premium product5fcad17d8refs #43167, fixes agreement payment result processing1cf0f34f6refs #43167, add debug log of paybytoken api
Data Management
19686cddbrefs #41568, fixes php 8.1 issues which count should have array type
User Interface
eb99952ebrefs #44703, fixes release tag and version mark5cc70ee97refs #44703, fixes the drupal version detection
Technical Improvements
Database Schema Updates
1948b7d1drefs #44288, add AI image generation DAO20a383c0drefs #44288, add AI image generation schema
API Development
1add2de27refs #44288, add Activity module routes to AJAX handlerbbccec53erefs #44288, feat: add Activity module routes to AJAX handler
Security Enhancements
fdf9adc6frefs #44112, add Bearer validation for oauth2612b59159refs #44112, mcp protocol 2024-11-05 allowed GET method612b59159refs #44112, correct claude online mcp connection notification/initialized