Skip to content

Conversation

@shahrukh-compuco
Copy link
Contributor

@shahrukh-compuco shahrukh-compuco commented Jan 6, 2026

Overview

Currently when user creates a new pending contribution and then try to edit it and on the dit contribution form user tries to edit the line item and save the edit line item form after changing the financial type, user receives an error and for keeps on saving. Along with this the PR also saves another issue with updation of sales tax financial item that occurs when user changes the financial type from a vat one to a non tax financial type.

Before

EditLineItem-Financial Type

After

screen_recording_after

Technical Details

The issue seems to be coming from line 776 on CRM/Lineitemedit/Util.php as trxnId is null due to the fact that it cannot find matching financial trxn id based on contribution id, to financial account id and is payment parameter. This PR adds a fallback scenario if in case we cannot find trxn id then we can use last or most recent financial transaction for that contribution.

@gemini-code-assist
Copy link

Summary of Changes

Hello @shahrukh-compuco, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses a critical bug that prevented users from successfully editing line items within pending contributions when changing the financial type. The core of the problem stemmed from a missing financial transaction ID during the update process. By introducing a robust fallback to retrieve the most recent transaction ID, this change ensures a smoother and error-free user experience during contribution management.

Highlights

  • Financial Transaction ID Fallback: Implemented a fallback mechanism in CRM/Lineitemedit/Util.php to retrieve the most recent financial transaction ID for a contribution if the initial lookup fails, preventing errors when editing line items and changing financial types.
  • Bug Fix for Line Item Editing: Resolved an issue where users encountered an error and the form kept saving when attempting to edit a pending contribution's line item and changing its financial type.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request addresses an issue where editing a line item's financial type on a pending contribution would cause an error due to a missing transaction ID. The proposed solution introduces a fallback to fetch the most recent transaction associated with the contribution, which is a logical approach. My review includes a suggestion to improve the robustness of this fallback by safely handling cases where a transaction might not be found, thus preventing potential PHP notices and subsequent errors. The other change is a minor code formatting improvement.

@shahrukh-compuco shahrukh-compuco force-pushed the comcl-1304-fix-missing-trxn branch from 4568c88 to d77e46a Compare January 8, 2026 12:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants