Development issueshttps://lab.civicrm.org/groups/dev/-/issues2021-02-04T20:02:47Zhttps://lab.civicrm.org/dev/drupal/-/issues/155Installer does not recognize https urls when installing and setting civicrm.s...2021-02-04T20:02:47ZHeneryHInstaller does not recognize https urls when installing and setting civicrm.settings.php variablesTwo instances of url are in the settings file and when I install on an https site I need to edit the file manually to change the http to https.
Can the installer detect this and set the proper URL?Two instances of url are in the settings file and when I install on an https site I need to edit the file manually to change the http to https.
Can the installer detect this and set the proper URL?https://lab.civicrm.org/dev/core/-/issues/2356Case entityRef doesn't let you choose by typing case id2021-02-24T21:55:26ZDaveDCase entityRef doesn't let you choose by typing case idI keep meaning to get back to this. Unlike contacts, where the id is almost purely an internal thing, the case id is often publicly external and can be used as the identifier. In a case entityRef, such as in the File-On-Case dialog, you ...I keep meaning to get back to this. Unlike contacts, where the id is almost purely an internal thing, the case id is often publicly external and can be used as the identifier. In a case entityRef, such as in the File-On-Case dialog, you can't select by typing the id.5.36.0https://lab.civicrm.org/dev/drupal/-/issues/154Proposal - fix for How do I add CiviCRM Activity attachment to View2021-02-04T19:20:09ZeileenProposal - fix for How do I add CiviCRM Activity attachment to ViewI'm adding this gitlab to track https://github.com/civicrm/civicrm-drupal/pull/382 which I'm going to close as it stagnated 4 years agoI'm adding this gitlab to track https://github.com/civicrm/civicrm-drupal/pull/382 which I'm going to close as it stagnated 4 years agohttps://lab.civicrm.org/dev/core/-/issues/2354CiviCRM membership renewals, when the Contribution is pending pay later, the ...2024-01-06T00:53:42Zjustinfreeman (Agileware)CiviCRM membership renewals, when the Contribution is pending pay later, the Membership Receipt On-line and Off-line message templates include the previous membership term not the renewed term which confuses membersCiviCRM membership renewals, when the Contribution is pending pay later, the "Memberships - Receipt (on-line)" and "Memberships - Signup and Renewal Receipts (off-line)" message templates include the previous membership term not the rene...CiviCRM membership renewals, when the Contribution is pending pay later, the "Memberships - Receipt (on-line)" and "Memberships - Signup and Renewal Receipts (off-line)" message templates include the previous membership term not the renewed term which confuses members. This does not occur when the membership is paid on-line and Contribution completed.
Example in the screenshot below shows someone renewning their membership in 7th June 2018, but the receipt they received still has the old membership end date. It is expected to show the renewed term.
![Screenshot_20210203_155253](/uploads/9bf822d1e31435c89bd37d1c746b1771/Screenshot_20210203_155253.png)
When discussing with users, they have mentioned that it would be more useful to show their members only the new term that they are renewing for, not the full length of the membership.
Agileware Ref: CIVICRM-16595.69.0https://lab.civicrm.org/dev/translation/-/issues/65Remove legacy php money_format use, switch to brickmoney2021-06-07T01:42:08ZeileenRemove legacy php money_format use, switch to brickmoneyPhp 7.4 deprecated the money_format function and we need to move off it to fully support php 7.4 (which we are priortising now). We chose brickmoney as the replacement library.
The main usage is in the CRM_Utils_Money::format() library ...Php 7.4 deprecated the money_format function and we need to move off it to fully support php 7.4 (which we are priortising now). We chose brickmoney as the replacement library.
The main usage is in the CRM_Utils_Money::format() library - this function has a lot of alternate functions depending on input params and we have been working to use more specific functions
I think in the end the main format function would support 3 parameters
- amount (as a float or number)
- currency (as a string)
- use site separators (bool)
The first 2 are pretty straight forward. The latter is the idea that if you are looking at a table of donations you want consistent thousand & decimal separators, currency independent. But if you are presenting data front end you want the selection of Norwegian Kroner to also trigger a switch to appropriate formatting on the page
Some discrete steps we can take are
1) instead of calling the function with the only number param call the inner function directly
```
if ($onlyNumber) {
$amount = self::formatLocaleNumericRoundedByCurrency($amount, $currency);
return $amount;
}
```
2) do the same for calls that pass $format = '%a' - which has the same impact. (if currency is unknown formatLocaleNumericRoundedByPrecision is an option)
3) fully remove / hard-code the deprecated $moneyValueFormat setting and parameter
```
if (CRM_Core_Config::singleton()->moneyvalueformat !== '%!i') {
CRM_Core_Error::deprecatedWarning('Having a Money Value format other than !%i is deprecated, please report this on GitLab with the relevant moneyValueFormat you use.');
}
```
4) actually replace the call to money_format.....Monish DebMonish Debhttps://lab.civicrm.org/dev/core/-/issues/2353Searchkit - operator issue2021-02-21T00:06:11ZeileenSearchkit - operator issueThe afforms created from searchkit use the LIKE '%x%' operator - which means they are basically unusable for wmf for 2 reasons
- unindexed searches generally take 30 seconds for us
- the number of results returned is too great
The work ...The afforms created from searchkit use the LIKE '%x%' operator - which means they are basically unusable for wmf for 2 reasons
- unindexed searches generally take 30 seconds for us
- the number of results returned is too great
The work around for advanced search (etc) is to use the setting includeWildCardInName to decide about the preceding %
A better option / more complete solution would be to do what views does and allow the operator to be selected (per field) when creating the afform. Views also allows the operator to be optionally exposed, which is nice
@colemanw this is as discussedhttps://lab.civicrm.org/dev/core/-/issues/2351Scheduled mailing recepients refresh/update2023-08-18T05:03:26Zmagnolia61Scheduled mailing recepients refresh/updateOverview
----------------------------------------
A scheduled bulk mailing was sent to the members of the smartgroup at the time of scheduling, instead of the members at the time of sending. This caused a lot of people receiving a wrong ...Overview
----------------------------------------
A scheduled bulk mailing was sent to the members of the smartgroup at the time of scheduling, instead of the members at the time of sending. This caused a lot of people receiving a wrong mailing and led to confusion and a lot of work for us.
Current behaviour
----------------------------------------
Scheduled mailing was sent to members at the time of scheduling.
Expected behaviour
----------------------------------------
Smartgroup should be updating itself and the mailing should be sent only to the current members of the smartgroup
Environment information
----------------------------------------
* __CiviCRM:__ 5.34.beta1
* __PHP:__ 7.3
* __CMS:__ Drupal
Comments
----------------------------------------
The smartgroup is a custom include/exclude group with some regular smartgroups and some created by searchkithttps://lab.civicrm.org/dev/core/-/issues/2350Oauth Redirect URL reporterror_civicrm_handler2021-02-03T11:15:42Zmagnolia61Oauth Redirect URL reporterror_civicrm_handlerOverview
----------------------------------------
When trying to configure oauth2 the Redirect URL does not preselect the proper url when ReportError extension is also enabled.
Current behaviour
----------------------------------------
...Overview
----------------------------------------
When trying to configure oauth2 the Redirect URL does not preselect the proper url when ReportError extension is also enabled.
Current behaviour
----------------------------------------
![oauth2-error](/uploads/3a338cb3d84c2859de2deee37b873d2d/oauth2-error.png)
When I add ID & secret and push the Add (auth code) button Google says:
`Invalid parameter value for redirect_uri: Missing scheme: reporterror_civicrm_handler`
Expected behaviour
----------------------------------------
The proper redirect URL
Environment information
----------------------------------------
* __CiviCRM:__ 5.34beta1
* __PHP:__ 7.3
* __CMS:__ Drupal 7
Comments
----------------------------------------
After uninstalling reporterror the redirect URL stays the same. Might be cache. I check again.5.35.0https://lab.civicrm.org/dev/core/-/issues/2349Search kit, contribution search - financial type field is odd2021-02-01T21:07:16ZeileenSearch kit, contribution search - financial type field is oddThe field is present before I select any fields, but staying empty....
![Screenshot_from_2021-02-01_16-56-40](/uploads/91c6fa6e756c71cc1d0b2ece8d487fcd/Screenshot_from_2021-02-01_16-56-40.png)The field is present before I select any fields, but staying empty....
![Screenshot_from_2021-02-01_16-56-40](/uploads/91c6fa6e756c71cc1d0b2ece8d487fcd/Screenshot_from_2021-02-01_16-56-40.png)5.35.0https://lab.civicrm.org/dev/core/-/issues/2347Preview button on table display form not working2021-02-01T21:07:36ZeileenPreview button on table display form not workingNothing happens when I click on the green button - @colemanw I mentioned this on that PR - so this is creating a gl to track
![Screenshot_from_2021-02-01_16-28-38](/uploads/b78b49e7ccdabcf4ca2ac21d60b37c2a/Screenshot_from_2021-02-01_16-...Nothing happens when I click on the green button - @colemanw I mentioned this on that PR - so this is creating a gl to track
![Screenshot_from_2021-02-01_16-28-38](/uploads/b78b49e7ccdabcf4ca2ac21d60b37c2a/Screenshot_from_2021-02-01_16-28-38.png)5.35.0https://lab.civicrm.org/dev/core/-/issues/2346V3 Rest API error: Contact endpoint errors on use of BETWEEN for MODIFIED_DATE2023-06-20T05:03:20ZCallum_RobsonV3 Rest API error: Contact endpoint errors on use of BETWEEN for MODIFIED_DATE## Overview
When using the REST v3 API, the contacts endpoint provides a DB Syntax Error when using BETWEEN with the modified_date. The debug statement suggests the BETWEEN isn't being populated in the SQL statement:
`WHERE ( contact_a...## Overview
When using the REST v3 API, the contacts endpoint provides a DB Syntax Error when using BETWEEN with the modified_date. The debug statement suggests the BETWEEN isn't being populated in the SQL statement:
`WHERE ( contact_a.is_deleted = '0' AND contact_a.modified_date BETWEEN '' ) AND ( 1 )`
This can be reproduced with a couple of seperate CiviCRM instances, and the other endpoints which have modified_date work with the same BETWEEN syntax.
Mattermost chat: https://chat.civicrm.org/civicrm/pl/74grk3wrs3f7td3x4k99ni146a
## Reproduction steps
1. In the API Explorer, select Entity 'Contact' and Action 'Get'.
2. In parameters, select 'modified_date', then BETWEEN as the operator, then ['2020-01-01 00:00:00', '2020-12-31 23:59:59'] as the value
## Current behaviour
Screenshot of error on dmaster:
![Capture](/uploads/a434b2025221029ed20d579e650bf29a/Capture.PNG)
Debug statement from Api Explorer:
```
{
"code": -2,
"error_message": "DB Error: syntax error",
"mode": 16,
"debug_info": "SELECT contact_a.id as contact_id, contact_a.contact_type as `contact_type`, contact_a.contact_sub_type as `contact_sub_type`, contact_a.sort_name as `sort_name`, contact_a.display_name as `display_name`, contact_a.do_not_email as `do_not_email`, contact_a.do_not_phone as `do_not_phone`, contact_a.do_not_mail as `do_not_mail`, contact_a.do_not_sms as `do_not_sms`, contact_a.do_not_trade as `do_not_trade`, contact_a.is_opt_out as `is_opt_out`, contact_a.legal_identifier as `legal_identifier`, contact_a.external_identifier as `external_identifier`, contact_a.nick_name as `nick_name`, contact_a.legal_name as `legal_name`, contact_a.image_URL as `image_URL`, contact_a.preferred_communication_method as `preferred_communication_method`, contact_a.preferred_language as `preferred_language`, contact_a.preferred_mail_format as `preferred_mail_format`, contact_a.first_name as `first_name`, contact_a.middle_name as `middle_name`, contact_a.last_name as `last_name`, contact_a.prefix_id as `prefix_id`, contact_a.suffix_id as `suffix_id`, contact_a.formal_title as `formal_title`, contact_a.communication_style_id as `communication_style_id`, contact_a.job_title as `job_title`, contact_a.gender_id as `gender_id`, contact_a.birth_date as `birth_date`, contact_a.is_deceased as `is_deceased`, contact_a.deceased_date as `deceased_date`, contact_a.household_name as `household_name`, IF ( contact_a.contact_type = 'Individual', NULL, contact_a.organization_name ) as organization_name, contact_a.sic_code as `sic_code`, contact_a.is_deleted as `contact_is_deleted`, contact_a.modified_date as `modified_date`, IF ( contact_a.contact_type = 'Individual', contact_a.organization_name, NULL ) as current_employer, civicrm_address.id as address_id, civicrm_address.street_address as `street_address`, civicrm_address.supplemental_address_1 as `supplemental_address_1`, civicrm_address.supplemental_address_2 as `supplemental_address_2`, civicrm_address.supplemental_address_3 as `supplemental_address_3`, civicrm_address.city as `city`, civicrm_address.postal_code_suffix as `postal_code_suffix`, civicrm_address.postal_code as `postal_code`, civicrm_address.geo_code_1 as `geo_code_1`, civicrm_address.geo_code_2 as `geo_code_2`, civicrm_address.state_province_id as state_province_id, civicrm_address.country_id as country_id, civicrm_phone.id as phone_id, civicrm_phone.phone_type_id as phone_type_id, civicrm_phone.phone as `phone`, civicrm_email.id as email_id, civicrm_email.email as `email`, civicrm_email.on_hold as `on_hold`, civicrm_im.id as im_id, civicrm_im.provider_id as provider_id, civicrm_im.name as `im`, civicrm_worldregion.id as worldregion_id, civicrm_worldregion.name as `world_region` FROM civicrm_contact contact_a LEFT JOIN civicrm_address ON ( contact_a.id = civicrm_address.contact_id AND civicrm_address.is_primary = 1 ) LEFT JOIN civicrm_country ON ( civicrm_address.country_id = civicrm_country.id ) LEFT JOIN civicrm_email ON (contact_a.id = civicrm_email.contact_id AND civicrm_email.is_primary = 1) LEFT JOIN civicrm_phone ON (contact_a.id = civicrm_phone.contact_id AND civicrm_phone.is_primary = 1) LEFT JOIN civicrm_im ON (contact_a.id = civicrm_im.contact_id AND civicrm_im.is_primary = 1) LEFT JOIN civicrm_worldregion ON civicrm_country.region_id = civicrm_worldregion.id WHERE ( contact_a.is_deleted = '0' AND contact_a.modified_date BETWEEN '' ) AND ( 1 ) AND (contact_a.is_deleted = 0) AND ( 1 ) AND (contact_a.is_deleted = 0) LIMIT 0, 25 [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') AND ( 1 ) AND (contact_a.is_deleted = 0) AND ( 1 ) AND (contact_a.is_delet...' at line 1]",
"type": "DB_Error",
"user_info": "SELECT contact_a.id as contact_id, contact_a.contact_type as `contact_type`, contact_a.contact_sub_type as `contact_sub_type`, contact_a.sort_name as `sort_name`, contact_a.display_name as `display_name`, contact_a.do_not_email as `do_not_email`, contact_a.do_not_phone as `do_not_phone`, contact_a.do_not_mail as `do_not_mail`, contact_a.do_not_sms as `do_not_sms`, contact_a.do_not_trade as `do_not_trade`, contact_a.is_opt_out as `is_opt_out`, contact_a.legal_identifier as `legal_identifier`, contact_a.external_identifier as `external_identifier`, contact_a.nick_name as `nick_name`, contact_a.legal_name as `legal_name`, contact_a.image_URL as `image_URL`, contact_a.preferred_communication_method as `preferred_communication_method`, contact_a.preferred_language as `preferred_language`, contact_a.preferred_mail_format as `preferred_mail_format`, contact_a.first_name as `first_name`, contact_a.middle_name as `middle_name`, contact_a.last_name as `last_name`, contact_a.prefix_id as `prefix_id`, contact_a.suffix_id as `suffix_id`, contact_a.formal_title as `formal_title`, contact_a.communication_style_id as `communication_style_id`, contact_a.job_title as `job_title`, contact_a.gender_id as `gender_id`, contact_a.birth_date as `birth_date`, contact_a.is_deceased as `is_deceased`, contact_a.deceased_date as `deceased_date`, contact_a.household_name as `household_name`, IF ( contact_a.contact_type = 'Individual', NULL, contact_a.organization_name ) as organization_name, contact_a.sic_code as `sic_code`, contact_a.is_deleted as `contact_is_deleted`, contact_a.modified_date as `modified_date`, IF ( contact_a.contact_type = 'Individual', contact_a.organization_name, NULL ) as current_employer, civicrm_address.id as address_id, civicrm_address.street_address as `street_address`, civicrm_address.supplemental_address_1 as `supplemental_address_1`, civicrm_address.supplemental_address_2 as `supplemental_address_2`, civicrm_address.supplemental_address_3 as `supplemental_address_3`, civicrm_address.city as `city`, civicrm_address.postal_code_suffix as `postal_code_suffix`, civicrm_address.postal_code as `postal_code`, civicrm_address.geo_code_1 as `geo_code_1`, civicrm_address.geo_code_2 as `geo_code_2`, civicrm_address.state_province_id as state_province_id, civicrm_address.country_id as country_id, civicrm_phone.id as phone_id, civicrm_phone.phone_type_id as phone_type_id, civicrm_phone.phone as `phone`, civicrm_email.id as email_id, civicrm_email.email as `email`, civicrm_email.on_hold as `on_hold`, civicrm_im.id as im_id, civicrm_im.provider_id as provider_id, civicrm_im.name as `im`, civicrm_worldregion.id as worldregion_id, civicrm_worldregion.name as `world_region` FROM civicrm_contact contact_a LEFT JOIN civicrm_address ON ( contact_a.id = civicrm_address.contact_id AND civicrm_address.is_primary = 1 ) LEFT JOIN civicrm_country ON ( civicrm_address.country_id = civicrm_country.id ) LEFT JOIN civicrm_email ON (contact_a.id = civicrm_email.contact_id AND civicrm_email.is_primary = 1) LEFT JOIN civicrm_phone ON (contact_a.id = civicrm_phone.contact_id AND civicrm_phone.is_primary = 1) LEFT JOIN civicrm_im ON (contact_a.id = civicrm_im.contact_id AND civicrm_im.is_primary = 1) LEFT JOIN civicrm_worldregion ON civicrm_country.region_id = civicrm_worldregion.id WHERE ( contact_a.is_deleted = '0' AND contact_a.modified_date BETWEEN '' ) AND ( 1 ) AND (contact_a.is_deleted = 0) AND ( 1 ) AND (contact_a.is_deleted = 0) LIMIT 0, 25 [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') AND ( 1 ) AND (contact_a.is_deleted = 0) AND ( 1 ) AND (contact_a.is_delet...' at line 1]",
"to_string": "[db_error: message=\"DB Error: syntax error\" code=-2 mode=callback callback=CRM_Utils_REST::fatal prefix=\"\" info=\"SELECT contact_a.id as contact_id, contact_a.contact_type as `contact_type`, contact_a.contact_sub_type as `contact_sub_type`, contact_a.sort_name as `sort_name`, contact_a.display_name as `display_name`, contact_a.do_not_email as `do_not_email`, contact_a.do_not_phone as `do_not_phone`, contact_a.do_not_mail as `do_not_mail`, contact_a.do_not_sms as `do_not_sms`, contact_a.do_not_trade as `do_not_trade`, contact_a.is_opt_out as `is_opt_out`, contact_a.legal_identifier as `legal_identifier`, contact_a.external_identifier as `external_identifier`, contact_a.nick_name as `nick_name`, contact_a.legal_name as `legal_name`, contact_a.image_URL as `image_URL`, contact_a.preferred_communication_method as `preferred_communication_method`, contact_a.preferred_language as `preferred_language`, contact_a.preferred_mail_format as `preferred_mail_format`, contact_a.first_name as `first_name`, contact_a.middle_name as `middle_name`, contact_a.last_name as `last_name`, contact_a.prefix_id as `prefix_id`, contact_a.suffix_id as `suffix_id`, contact_a.formal_title as `formal_title`, contact_a.communication_style_id as `communication_style_id`, contact_a.job_title as `job_title`, contact_a.gender_id as `gender_id`, contact_a.birth_date as `birth_date`, contact_a.is_deceased as `is_deceased`, contact_a.deceased_date as `deceased_date`, contact_a.household_name as `household_name`, IF ( contact_a.contact_type = 'Individual', NULL, contact_a.organization_name ) as organization_name, contact_a.sic_code as `sic_code`, contact_a.is_deleted as `contact_is_deleted`, contact_a.modified_date as `modified_date`, IF ( contact_a.contact_type = 'Individual', contact_a.organization_name, NULL ) as current_employer, civicrm_address.id as address_id, civicrm_address.street_address as `street_address`, civicrm_address.supplemental_address_1 as `supplemental_address_1`, civicrm_address.supplemental_address_2 as `supplemental_address_2`, civicrm_address.supplemental_address_3 as `supplemental_address_3`, civicrm_address.city as `city`, civicrm_address.postal_code_suffix as `postal_code_suffix`, civicrm_address.postal_code as `postal_code`, civicrm_address.geo_code_1 as `geo_code_1`, civicrm_address.geo_code_2 as `geo_code_2`, civicrm_address.state_province_id as state_province_id, civicrm_address.country_id as country_id, civicrm_phone.id as phone_id, civicrm_phone.phone_type_id as phone_type_id, civicrm_phone.phone as `phone`, civicrm_email.id as email_id, civicrm_email.email as `email`, civicrm_email.on_hold as `on_hold`, civicrm_im.id as im_id, civicrm_im.provider_id as provider_id, civicrm_im.name as `im`, civicrm_worldregion.id as worldregion_id, civicrm_worldregion.name as `world_region` FROM civicrm_contact contact_a LEFT JOIN civicrm_address ON ( contact_a.id = civicrm_address.contact_id AND civicrm_address.is_primary = 1 ) LEFT JOIN civicrm_country ON ( civicrm_address.country_id = civicrm_country.id ) LEFT JOIN civicrm_email ON (contact_a.id = civicrm_email.contact_id AND civicrm_email.is_primary = 1) LEFT JOIN civicrm_phone ON (contact_a.id = civicrm_phone.contact_id AND civicrm_phone.is_primary = 1) LEFT JOIN civicrm_im ON (contact_a.id = civicrm_im.contact_id AND civicrm_im.is_primary = 1) LEFT JOIN civicrm_worldregion ON civicrm_country.region_id = civicrm_worldregion.id WHERE ( contact_a.is_deleted = '0' AND contact_a.modified_date BETWEEN '' ) AND ( 1 ) AND (contact_a.is_deleted = 0) AND ( 1 ) AND (contact_a.is_deleted = 0) LIMIT 0, 25 [nativecode=1064 ** You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ') AND ( 1 ) AND (contact_a.is_deleted = 0) AND ( 1 ) AND (contact_a.is_delet...' at line 1]\"]",
"is_error": 1
}
```
## Environment information
This is reproducible on dmaster.
## Expected behaviour
To return data without an error.https://lab.civicrm.org/dev/core/-/issues/2345User improvement, CiviCRM Participant Import, users can be misled into thinki...2022-06-11T20:45:45Zjustinfreeman (Agileware)User improvement, CiviCRM Participant Import, users can be misled into thinking Participant Status ID field is mandatory because it is shown in red with asteriskAs reported by CiviCRM users. When using the CiviCRM Participant Import, users can be misled into thinking Participant Status ID field is mandatory because it is shown in red with asterisk. However, the requirement is for either Particip...As reported by CiviCRM users. When using the CiviCRM Participant Import, users can be misled into thinking Participant Status ID field is mandatory because it is shown in red with asterisk. However, the requirement is for either Participant Status OR Participant Status ID to be present in the import.
Suggested user improvement is to do the following:
1. Not use RED as the colour or asterisks in the drop-down options as this denotes mandatory field in other parts of the CRM, eg. RED asterisk. Recommend using bold and black text, no asterisk.
2. Provide user help note / explanatory text on the page to detail the mandatory fields required for the import.
We can submit a PR for this user improvement, just posting here for feedback and other suggestions.
![Screenshot_20210201_100120](/uploads/14bb0d1b3b5dba8931c2530b1328bd3f/Screenshot_20210201_100120.png)
Agileware Ref: CIVICRM-16555.51.0justinfreeman (Agileware)justinfreeman (Agileware)https://lab.civicrm.org/dev/core/-/issues/2343“Cancel recurring payment” link missing from receipt when multiple payment pr...2023-06-20T05:03:20Ztapash“Cancel recurring payment” link missing from receipt when multiple payment processor enabledOverview
---------------------------------------
When I enable 1 payment processor like stripe the cancel recurring payment link appears in the receipt without any problem.
But as soon as I enable 2 payment processor the link disappe...Overview
---------------------------------------
When I enable 1 payment processor like stripe the cancel recurring payment link appears in the receipt without any problem.
But as soon as I enable 2 payment processor the link disappears and only shows “this is a recurring contribution “.
Reproduction steps
----------------------------------------
- Enable 2 different payment processor like stripe and Gocardless.
- Signup for a recurring payment with any of payment method.
- Link to cancel recurring is missing.
Expected behaviour
----------------------------------------
A link should appear in the receipt body to cancel the future payment.
Environment information
----------------------------------------
* CiviCRM: 5.33.2
* PHP:7.3
* CMS:Drupal 7.xx
Comments
----------------------------------------
Did not use multiple payment processor previously, so can’t be sure if it’s a regressions bug!https://lab.civicrm.org/dev/core/-/issues/2342Search builder (NOT search kit) - Contribution search uses deprecated functio...2023-06-19T14:08:48ZDaveDSearch builder (NOT search kit) - Contribution search uses deprecated function CRM_Core_BAO_Query::getFieldName1. Search - Search Builder (not Search kit)
1. Do a contribution search. Let's say for Financial Type = Donation.
1. User deprecated function: Deprecated function CRM_Core_BAO_Query::getFieldName, use These parameters should be standardi...1. Search - Search Builder (not Search kit)
1. Do a contribution search. Let's say for Financial Type = Donation.
1. User deprecated function: Deprecated function CRM_Core_BAO_Query::getFieldName, use These parameters should be standardised before we get here. in CRM_Core_Error::deprecatedWarning() (line 1053 of /srv/buildkit/build/dmaster/web/sites/all/modules/civicrm/CRM/Core/Error.php).
1. The way deprecatedWarning works it loses the backtrace, but if you trace it it looks like this:
```
2 ...\CRM\Core\BAO\Query.php(97): CRM_Core_Error::deprecatedFunctionWarning("These parameters should be standardised before we get here")
3 ...\CRM\Contribute\BAO\Query.php(140): CRM_Core_BAO_Query::getFieldName((Array:5))
4 ...\CRM\Contribute\BAO\Query.php(114): CRM_Contribute_BAO_Query::whereClauseSingle((Array:5), Object(CRM_Contact_BAO_Query))
5 ...\CRM\Core\Component.php(284): CRM_Contribute_BAO_Query::where(Object(CRM_Contact_BAO_Query))
6 ...\CRM\Contact\BAO\Query.php(2061): CRM_Core_Component::alterQuery(Object(CRM_Contact_BAO_Query), "where")
7 \CRM\Contact\BAO\Query.php(574): CRM_Contact_BAO_Query->whereClause(FALSE)
8 ...\CRM\Contact\BAO\Query.php(523): CRM_Contact_BAO_Query->initialize(NULL)
9 ...\CRM\Contact\Selector.php(218): CRM_Contact_BAO_Query->__construct((Array:1), (Array:4), (Array:114), FALSE, FALSE, 1, FALSE, FALSE, FALSE, NULL, (Array:3))
10 ...\CRM\Contact\Form\Search.php(829): CRM_Contact_Selector->__construct(NULL, (Array:8), (Array:1), (Array:4), 8192, FALSE, FALSE, "builder", (Array:11))
11 ...\CRM\Contact\Form\Search\Builder.php(399): CRM_Contact_Form_Search->postProcess()
12 ...\CRM\Core\Form.php(513): CRM_Contact_Form_Search_Builder->postProcess()
```https://lab.civicrm.org/dev/core/-/issues/2341Afform api explorer: has_local, has_base do not present as bool2021-01-30T21:28:41ZeileenAfform api explorer: has_local, has_base do not present as boolLooks like the type isn't defined as bool or I would get yes/no options I believe
![image](/uploads/197b56ac6d5a2873e3f60e80d960ca88/image.png)Looks like the type isn't defined as bool or I would get yes/no options I believe
![image](/uploads/197b56ac6d5a2873e3f60e80d960ca88/image.png)5.35.0https://lab.civicrm.org/dev/core/-/issues/2340Creating an afform without civicrm/ in the url breaks the site2021-02-05T06:07:48ZeileenCreating an afform without civicrm/ in the url breaks the siteThe exception is uncaught when civi can't handle the url - meaning that multiple relevant pages (home page, api, any page that might be used to fix it) won't render.
Sorry, due to an error, we are unable to fulfill your request at the ...The exception is uncaught when civi can't handle the url - meaning that multiple relevant pages (home page, api, any page that might be used to fix it) won't render.
Sorry, due to an error, we are unable to fulfill your request at the moment. You may want to contact your administrator or service provider with more details about what action you were performing when this occurred.
'trxn': Could not find access_callback in path tree, Could not find is_ssl in path tree
```
| CRM_Core_Exception: 'trxn': Could not find access_callback in path tree, Could not find is_ssl in path tree in /.../civicrm/CRM/Core/Menu.php on line 269 |
| 0 | CRM_Core_Menu::fillMenuValues(Array, 'trxn') | /../civicrm/CRM/Core/Menu.php:269 |
| 1 | CRM_Core_Menu::build(Array) | /../civicrm/CRM/Core/Menu.php:295 |
| 2 | CRM_Core_Menu::store(false) | /../civicrm/CRM/Core/Invoke.php:146 |
| 3 | CRM_Core_Invoke::getItem(Array) | /../civicrm/CRM/Core/Invoke.php:67 |
| 4 | CRM_Core_Invoke::_invoke(Array) | /../civicrm/CRM/Core/Invoke.php:36 |
| 5 | CRM_Core_Invoke::invoke(Array) | /../civicrm/drupal/civicrm.module:459 |
| 6 | civicrm_invoke('api4') | /.../drupal/includes/menu.inc:527 |
| 7 | menu_execute_active_handler() | /../drupal/index.php:21 |
| 8 | {main} | |
```5.35.0https://lab.civicrm.org/dev/core/-/issues/2339Test framework - API4 DateTest::testRelativeDateRanges will fail on the last...2021-01-29T23:51:46ZDaveDTest framework - API4 DateTest::testRelativeDateRanges will fail on the last day of Jan, Mar, May, Aug, OctAnd it might fail other times.
The test [compares](https://github.com/civicrm/civicrm-core/blob/37a3e588b5bbeae8b6655bd4ec0a112893fb0202/tests/phpunit/api/v4/Action/DateTest.php#L72-L78) for example `strtotime('+1 month')` to what is ul...And it might fail other times.
The test [compares](https://github.com/civicrm/civicrm-core/blob/37a3e588b5bbeae8b6655bd4ec0a112893fb0202/tests/phpunit/api/v4/Action/DateTest.php#L72-L78) for example `strtotime('+1 month')` to what is ultimately the calculation from `CRM_Utils_Date::relativeToAbsolute()` which has a different definition of e.g. 'next.month'. So e.g. on Mar 31 the strtotime() will return May 1 not Apr 31 (which doesn't exist), but the getFromTo() will return Apr 1 (always the first of "next month").
@colemanw5.35.0https://lab.civicrm.org/dev/core/-/issues/2338Wrong result in Next Payment Due column from Pledged But not Paid report2023-06-18T05:03:22ZyashodhaWrong result in Next Payment Due column from Pledged But not Paid report_Next Payment Due_ column from _Pledged But not Paid_ report doesn't show consistent results._Next Payment Due_ column from _Pledged But not Paid_ report doesn't show consistent results.https://lab.civicrm.org/dev/core/-/issues/2337CiviCRM Import Participants, incorrectly defaults to the Participant Status I...2022-06-11T03:08:43Zjustinfreeman (Agileware)CiviCRM Import Participants, incorrectly defaults to the Participant Status ID field for the "Participant Status" column, should use "Participant Status"CiviCRM Import Participants, incorrectly defaults to the Participant Status ID field for the "Participant Status" column, should use "Participant Status". The Participant Status ID field accepts an ID value whereas Participant Status acc...CiviCRM Import Participants, incorrectly defaults to the Participant Status ID field for the "Participant Status" column, should use "Participant Status". The Participant Status ID field accepts an ID value whereas Participant Status accepts the text label.
The impact is that the import will fail, since Participant Status column does not have the correct values for Participant Status ID.
Agileware Ref: CIVICRM-16545.51.0https://lab.civicrm.org/dev/core/-/issues/2336CiviCRM Events, Participant custom fields from Event Participant Profiles are...2023-06-17T05:03:20Zjustinfreeman (Agileware)CiviCRM Events, Participant custom fields from Event Participant Profiles are duplicated on the back-end Event Registration formCiviCRM Events, Participant custom fields from Event Participant Profiles are duplicated on the back-end Event Registration form when a "Profile for Additional Participants" is defined.
**Steps to reproduce**
1. Set up an Event with a ...CiviCRM Events, Participant custom fields from Event Participant Profiles are duplicated on the back-end Event Registration form when a "Profile for Additional Participants" is defined.
**Steps to reproduce**
1. Set up an Event with a Profile A for the Participant and then Profile A for the "Profile for Additional Participants".
2. Do a back-end Participantregistration for the Event.
3. Notice that two copies of Profile A is displayed on the Participant form which is used to register just 1 participant.
4. Bug is that the custom fields from Profile A are duplicated on the back-end Event Registration form.
Identified in CiviCRM 5.33.2
Agileware Ref: CIVICRM-1653