Drupal issueshttps://lab.civicrm.org/dev/drupal/-/issues2019-11-03T16:19:27Zhttps://lab.civicrm.org/dev/drupal/-/issues/81Drupal8: Large export results in logout2019-11-03T16:19:27ZJonGoldDrupal8: Large export results in logoutWhen you attempt a large export of CiviCRM data (~63K contacts, ~15 columns), Symfony kills the session. This is relatively recent behavior (didn't happen in April, for instance). Here are the watchdog logs:
Here are those stack traces,...When you attempt a large export of CiviCRM data (~63K contacts, ~15 columns), Symfony kills the session. This is relatively recent behavior (didn't happen in April, for instance). Here are the watchdog logs:
Here are those stack traces, more readable:
```
Warning: session_start(): Failed to decode session object. Session has been destroyed in Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start() (line 149 of /var/www/crm.agbu.org/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php)
#0 /var/www/crm.agbu.org/web/core/includes/bootstrap.inc(587): _drupal_error_handler_real(2, 'session_start()...', '/var/www/crm.ag...', 149, Array)
#1 [internal function]: _drupal_error_handler(2, 'session_start()...', '/var/www/crm.ag...', 149, Array)
#2 /var/www/crm.agbu.org/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php(149): session_start()
#3 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/Session/SessionManager.php(164): Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start()
#4 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/Session/SessionManager.php(118): Drupal\Core\Session\SessionManager->startNow()
#5 /var/www/crm.agbu.org/vendor/symfony/http-foundation/Session/Session.php(57): Drupal\Core\Session\SessionManager->start()
#6 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/Session.php(53): Symfony\Component\HttpFoundation\Session\Session->start()
#7 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#8 /var/www/crm.agbu.org/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#9 /var/www/crm.agbu.org/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#10 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#11 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#12 /var/www/crm.agbu.org/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#13 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/DrupalKernel.php(693): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#14 /var/www/crm.agbu.org/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#15 {main}.
```
```
RuntimeException: Failed to start the session in Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start() (line 150 of /var/www/crm.agbu.org/vendor/symfony/http-foundation/Session/Storage/NativeSessionStorage.php)
#0 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/Session/SessionManager.php(164): Symfony\Component\HttpFoundation\Session\Storage\NativeSessionStorage->start()
#1 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/Session/SessionManager.php(118): Drupal\Core\Session\SessionManager->startNow()
#2 /var/www/crm.agbu.org/vendor/symfony/http-foundation/Session/Session.php(57): Drupal\Core\Session\SessionManager->start()
#3 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/Session.php(53): Symfony\Component\HttpFoundation\Session\Session->start()
#4 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#5 /var/www/crm.agbu.org/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(106): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#6 /var/www/crm.agbu.org/web/core/modules/page_cache/src/StackMiddleware/PageCache.php(85): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#7 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#8 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#9 /var/www/crm.agbu.org/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#10 /var/www/crm.agbu.org/web/core/lib/Drupal/Core/DrupalKernel.php(693): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true)
#11 /var/www/crm.agbu.org/web/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request))
#12 {main}.
```
The first issue is a warning that the session is too large, and so it destroys the session (which causes a logout). The second issue is of "error" severity saying the session can't be found.
Here's someone else having a similar issue in Symfony (not Drupal8): https://github.com/symfony/symfony/issues/26623tottentottenhttps://lab.civicrm.org/dev/drupal/-/issues/80Installing civicrm via drush errors when loading generated data2020-01-14T21:18:49ZherbdoolInstalling civicrm via drush errors when loading generated dataThis was reported here for Backdrop https://github.com/civicrm/civicrm-backdrop/issues/86 and the D7 file is virtually the same. So I suspect the same problem applies. The testing and PR were done by [tabroughton](https://github.com/tabr...This was reported here for Backdrop https://github.com/civicrm/civicrm-backdrop/issues/86 and the D7 file is virtually the same. So I suspect the same problem applies. The testing and PR were done by [tabroughton](https://github.com/tabroughton).
---
When using drush to install civicrm drush civicrm-insall and using the flag --load_generated_data the command errors with sql errors.
Example here:
```
Cannot execute INSERT INTO `civicrm_acl` (`id`, `name`, `deny`, `entity_table`, `entity_id`, `operation`, `object_table`, `object_id`, `acl_table`, `acl_id`, `is_active`) VALUES (1,'Edit All Contacts',0,'civicrm_acl_role',1,'Edit','civicrm_saved_search',0,NULL,NULL,1),(2,'Core ACL',0,'civicrm_acl_role',0,'All','access CiviMail subscribe/unsubscribe pages',NULL,NULL,NULL,1),(3,'Core ACL',0,'civicrm_acl_role',0,'All','access all custom data',NULL,NULL,NULL,1),(4,'Core ACL',0,'civicrm_acl_role',0,'All','make online contributions',NULL,NULL,NULL,1),(5,'Core ACL',0,'civicrm_acl_role',0,'All','make online pledges',NULL,NULL,NULL,1),(6,'Core ACL',0,'civicrm_acl_role',0,'All','profile listings and forms',NULL,NULL,NULL,1),(7,'Core ACL',0,'civicrm_acl_role',0,'All','view event info',NULL,NULL,NULL,1),(8,'Core ACL',0,'civicrm_acl_role',0,'All','register for events',NULL,NULL,NULL,1),(9,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviCRM',NULL,NULL,NULL,1),(10,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviContribute',NULL,NULL,NULL,1),(11,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviEvent',NULL,NULL,NULL,1),(12,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviMail',NULL,NULL,NULL,1),(13,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviMail subscribe/unsubscribe pages',NULL,NULL,NULL,1),(14,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviMember',NULL,NULL,NULL,1),(15,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviPledge',NULL,NULL,NULL,1),(16,'Core ACL',0,'civicrm_acl_role',1,'All','administer CiviCase',NULL,NULL,NULL,1),(17,'Core ACL',0,'civicrm_acl_role',1,'All','access my cases and activities',NULL,NULL,NULL,1),(18,'Core ACL',0,'civicrm_acl_role',1,'All','access all cases and activities',NULL,NULL,NULL,1),(19,'Core ACL',0,'civicrm_acl_role',1,'All','delete in CiviCase',NULL,NULL,NULL,1),(20,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviGrant',NULL,NULL,NULL,1),(21,'Core ACL',0,'civicrm_acl_role',1,'All','access Contact Dashboard',NULL,NULL,NULL,1),(22,'Core ACL',0,'civicrm_acl_role',1,'All','administer Multiple Organizations',NULL,NULL,NULL,1),(23,'Core ACL',0,'civicrm_acl_role',1,'All','delete activities',NULL,NULL,NULL,1),(24,'Core ACL',0,'civicrm_acl_role',1,'All','delete in CiviContribute',NULL,NULL,NULL,1),(25,'Core ACL',0,'civicrm_acl_role',1,'All','delete in CiviMail',NULL,NULL,NULL,1),(26,'Core ACL',0,'civicrm_acl_role',1,'All','delete in CiviPledge',NULL,NULL,NULL,1),(27,'Core ACL',0,'civicrm_acl_role',1,'All','delete contacts',NULL,NULL,NULL,1),(28,'Core ACL',0,'civicrm_acl_role',1,'All','delete in CiviEvent',NULL,NULL,NULL,1),(29,'Core ACL',0,'civicrm_acl_role',1,'All','delete in CiviMember',NULL,NULL,NULL,1),(30,'Core ACL',0,'civicrm_acl_role',1,'All','translate CiviCRM',NULL,NULL,NULL,1),(31,'Core ACL',0,'civicrm_acl_role',1,'All','edit grants',NULL,NULL,NULL,1),(32,'Core ACL',0,'civicrm_acl_role',1,'All','access all custom data',NULL,NULL,NULL,1),(33,'Core ACL',0,'civicrm_acl_role',1,'All','access uploaded files',NULL,NULL,NULL,1),(34,'Core ACL',0,'civicrm_acl_role',1,'All','add contacts',NULL,NULL,NULL,1),(35,'Core ACL',0,'civicrm_acl_role',1,'All','administer CiviCRM',NULL,NULL,NULL,1),(36,'Core ACL',0,'civicrm_acl_role',1,'All','edit all contacts',NULL,NULL,NULL,1),(37,'Core ACL',0,'civicrm_acl_role',1,'All','edit contributions',NULL,NULL,NULL,1),(38,'Core ACL',0,'civicrm_acl_role',1,'All','edit event participants',NULL,NULL,NULL,1),(39,'Core ACL',0,'civicrm_acl_role',1,'All','edit groups',NULL,NULL,NULL,1),(40,'Core ACL',0,'civicrm_acl_role',1,'All','edit memberships',NULL,NULL,NULL,1),(41,'Core ACL',0,'civicrm_acl_role',1,'All','edit pledges',NULL,NULL,NULL,1),(42,'Core ACL',0,'civicrm_acl_role',1,'All','access CiviReport',NULL,NULL,NULL,1),(43,'Core ACL',0,'civicrm_acl_role',1,'All','access Report Criteria',NULL,NULL,NULL,1),(44,'Core ACL',0,'civicrm_acl_role',1,'All','administer Reports',NULL,NULL,NULL,1),(45,'Core ACL',0,'civicrm_acl_role',1,'All','import contacts',NULL,NULL,NULL,1),(46,'Core ACL',0,'civicrm_acl_role',1,'All','make online contributions',NULL,NULL,NULL,1),(47,'Core ACL',0,'civicrm_acl_role',1,'All','make online pledges',NULL,NULL,NULL,1),(48,'Core ACL',0,'civicrm_acl_role',1,'All','profile listings and forms',NULL,NULL,NULL,1),(49,'Core ACL',0,'civicrm_acl_role',1,'All','profile create',NULL,NULL,NULL,1),(50,'Core ACL',0,'civicrm_acl_role',1,'All','profile edit',NULL,NULL,NULL,1),(51,'Core ACL',0,'civicrm_acl_role',1,'All','profile listings',NULL,NULL,NULL,1),(52,'Core ACL',0,'civicrm_acl_role',1,'All','profile view',NULL,NULL,NULL,1),(53,'Core ACL',0,'civicrm_acl_role',1,'All','register for events',NULL,NULL,NULL,1),(54,'Core ACL',0,'civicrm_acl_role',1,'All','view all activities',NULL,NULL,NULL,1),(55,'Core ACL',0,'civicrm_acl_role',1,'All','view all contacts',NULL,NULL,NULL,1),(56,'Core ACL',0,'civicrm_acl_role',1,'All','view event info',NULL,NULL,NULL,1),(57,'Core ACL',0,'civicrm_acl_role',1,'All','view event participants',NULL,NULL,NULL,1),(58,'Core ACL',0,'civicrm_acl_role',1,'All','edit all events',NULL,NULL,NULL,1),(59,'Core ACL',0,'civicrm_acl_role',2,'All','access CiviMail subscribe/unsubscribe pages',NULL,NULL,NULL,1),(60,'Core ACL',0,'civicrm_acl_role',2,'All','access all custom data',NULL,NULL,NULL,1),(61,'Core ACL',0,'civicrm_acl_role',2,'All','make online contributions',NULL,NULL,NULL,1),(62,'Core ACL',0,'civicrm_acl_role',2,'All','make online pledges',NULL,NULL,NULL,1),(63,'Core ACL',0,'civicrm_acl_role',2,'All','profile listings and forms',NULL,NULL,NULL,1),(64,'Core ACL',0,'civicrm_acl_role',2,'All','register for events',NULL,NULL,NULL,1),(65,'Core ACL',0,'civicrm_acl_role',2,'All','view event info',NULL,NULL,NULL,1);:
DB Error: already exists
```
Drush command terminated abnormally due to an unrecoverable error.https://lab.civicrm.org/dev/drupal/-/issues/78Drupal8: cv --user=2019-07-16T16:30:48ZAlanDixonDrupal8: cv --user=Drupal 8.7.4, CiviCRM 5.15.1, php 7.3
When trying to run this command (cli)
cv --user=blackfly --cwd=/var/www/drupal/web api job.process_mailing
I get this:
<code><pre>[Symfony\Component\Debug\Exception\FatalThrowableError] ...Drupal 8.7.4, CiviCRM 5.15.1, php 7.3
When trying to run this command (cli)
cv --user=blackfly --cwd=/var/www/drupal/web api job.process_mailing
I get this:
<code><pre>[Symfony\Component\Debug\Exception\FatalThrowableError]
Call to undefined method Drupal\Core\Session\AccountProxy::get()
</pre></code>
I'm guessing it's cv that is insufficiently booting Drupal.https://lab.civicrm.org/dev/drupal/-/issues/75[regression] `cv` fails on CiviCRM 5.15.02022-04-06T22:13:17ZJonGold[regression] `cv` fails on CiviCRM 5.15.0Any command that attempts to access Civi fails with:
```
[RuntimeException]
Cannot resolve path using "cms.root.url"
```
Civi 5.14.2 works fine.
The issue is `CRM...Any command that attempts to access Civi fails with:
```
[RuntimeException]
Cannot resolve path using "cms.root.url"
```
Civi 5.14.2 works fine.
The issue is `CRM_Utils_System_Drupal8::languageNegotiationURL()`, which was added in 5.15.0. Removing this function restores the correct behavior, but I assume has a detrimental effect on multilingual.
The underlying cause of the error is hidden because of a later PR by @bgm that accounts for the REST API. If you roll back his change, the error becomes:
```
[Drupal\Core\DependencyInjection\ContainerNotInitializedException]
\Drupal::$container is not initialized yet. \Drupal::setContainer() must be called with a real container.
```5.16.0https://lab.civicrm.org/dev/drupal/-/issues/66Recurring contributions fail to be recorded2019-06-03T08:37:17ZBobSRecurring contributions fail to be recordedAfter upgrading from from 5.10.3 to 5.13.4, certain recurring contributions from PayPal began to not be recorded, while others were recorded.
The server log indicated:
* Posts to civicrm/extern/ipn.php were failing with "Call to undefin...After upgrading from from 5.10.3 to 5.13.4, certain recurring contributions from PayPal began to not be recorded, while others were recorded.
The server log indicated:
* Posts to civicrm/extern/ipn.php were failing with "Call to undefined function variable_get() in ...civicrm/CRM/Utils/System/Drupal.php:790"
* Posts to civicrm/payment/ipn/1 were successful.
It appears that during the failed posts, we arrive in civicrm/CRM/Utils/System/Drupal.php::getTimeZoneString() without bootstrapping Drupal and die on a call to variable_get('configurable_timezones', 1).
Failure was confirmed on https://civicrm.demo.civihosting.com (received HTTP status 500 on a post to civicrm/extern/ipn.php).5.14.0https://lab.civicrm.org/dev/drupal/-/issues/65Drupal7: civicrm_rules - Add/Remove contact from CiviCRM Group works with dep...2024-02-27T01:13:41ZVangelisPDrupal7: civicrm_rules - Add/Remove contact from CiviCRM Group works with deprecated method on removal### Problem/Motivation
In the the civicrm_rules module, specifically `drupal/modules/civicrm_rules/civicrm_rules_utils.inc` and on line 64 there's this function `_civicrm_rules_group_contact` that by default uses the 'create' action if ...### Problem/Motivation
In the the civicrm_rules module, specifically `drupal/modules/civicrm_rules/civicrm_rules_utils.inc` and on line 64 there's this function `_civicrm_rules_group_contact` that by default uses the 'create' action if we want to add a contact into a CiviCRM Group which works absolutely fine.
However, when we want to delete a contact, this is what is initially being called:
`civicrm_api('group_contact', 'delete', $params);`
which I believe as an action it is now considered as deprecated and (most probably because of that), it's behaving weird:
It will remove a contact from a static group, but it will not remove a contact from a smartgroup.
### Steps to reproduce
Create a rule so that it has an action that will remove an existing CiviCRM contact from a group on webform submission (or something related to that).
Outcome:
* Rule will apply and contact will be removed if that group that he belongs to is a static group
* Rule will not apply and contact will **not** be removed if that group that he belongs to is a smartgroup
### Proposed resolution
Current function:
```php
/**
* Function to add contacts to group
*/
function _civicrm_rules_group_contact($contactId, $groupId, $action = 'create') {
civicrm_initialize();
$params = array(
'contact_id' => $contactId,
'group_id' => $groupId,
'version' => 3,
);
// This used to be civicrm_group_contact_common($params, $action);
civicrm_api('group_contact', $action, $params);
}
```
Proposed change:
```php
/**
* Function to add/remove contacts to group
*/
function _civicrm_rules_group_contact($contactId, $groupId, $action = 'create') {
civicrm_initialize();
$params = array(
'contact_id' => $contactId,
'group_id' => $groupId,
'version' => 3,
);
if ($action == 'delete') {
$params['status'] = 'Removed';
}
// This used to be civicrm_group_contact_common($params, $action);
civicrm_api('group_contact', 'create', $params);
}
```
Basically we keep the action as 'create' and then we intercept the incoming $action variable.
If it has the 'delete' value, we add to the $params the 'status' = 'Removed' so that it can remove it.
I tried that fix and it works for me but i would ask you to replicate it in your environment(s) as well.https://lab.civicrm.org/dev/drupal/-/issues/64Drupal8/Backdrop: Bad URL on ACL page linking to CMS permissions2020-11-04T20:49:06ZJonGoldDrupal8/Backdrop: Bad URL on ACL page linking to CMS permissions`CRM_Admin_Page_Access::run()` attempts to generate a URL to the CMS permission page. It uses a switch to give a CMS-specific URL.
I wrote a Backdrop and D8-specific code, using `url()` and `\Drupal\Core\Url::fromUri()` respectively - ...`CRM_Admin_Page_Access::run()` attempts to generate a URL to the CMS permission page. It uses a switch to give a CMS-specific URL.
I wrote a Backdrop and D8-specific code, using `url()` and `\Drupal\Core\Url::fromUri()` respectively - but I think this is overcomplicated. Couldn't we just pass a string instead? Or is there some oddball situation (multi-site?) where you need to generate the URL using the Drupal-specific functions?JonGoldJonGoldhttps://lab.civicrm.org/dev/drupal/-/issues/62Possible rework on path checking on function civicrm_user_form_validate for 7...2021-02-05T10:40:39ZVangelisPPossible rework on path checking on function civicrm_user_form_validate for 7.x branchI have had some issues with a civicrm profile validation (even with the default `Name and Address`) when it was being exposed in the drupal user registration page after adding some ajax there.
Problem that appears when you ajaxify the ...I have had some issues with a civicrm profile validation (even with the default `Name and Address`) when it was being exposed in the drupal user registration page after adding some ajax there.
Problem that appears when you ajaxify the form itself, is that contents are getting replaced. When this happens, `civicrm_user_form_validate` doesn't work. Specifically, arg(0) & arg(1) are changing (see below).
Searching a little bit more, I have noticed on [line ~~681~~ 707](https://github.com/civicrm/civicrm-drupal/blob/7.x-master/civicrm.module#L707) that there's an arg() comparison so that Civi can understand what path users are coming from ([here](https://github.com/civicrm/civicrm-drupal/blob/7.x-master/civicrm.module#L694))
May I suggest (i can make a MR) instead of doing a path search using the arg() variable, check the form `#action` or `#user_category` instead, like:
* `$register = (($form['#action'] == '/user/register' || $form['#action'] == '/admin/people/create') ? TRUE : FALSE);`
or
* `$register = (($form['#user_category'] == 'account' || $form['#user_category'] == 'register')) ? TRUE : FALSE);` (This is taken from `user_account_form_validate` [function here](https://api.drupal.org/api/drupal/modules!user!user.module/function/user_account_form_validate/7.x))
This way, validation is always there, as long as the form `#action` or `#user_category` keeps the same name(s).
One relatively easy way to reproduce is this:
On a/any environment having Drupal 7.x:
* Download and enable [bootstrap](https://www.drupal.org/project/bootstrap) as the default theme
* Download and enable [bootstrap_login_modal](https://www.drupal.org/project/bootstrap_login_modal) which will add AJAX to the user login and user register form(s). This will also cause the non-validation issue i am referring to.
* Try to register yourself and don't add a first and last name, validation will not kick-in.
Now change the civicrm.module on line 681 with the above and re-try to register yourself. Validations will now work.
There is another issue there but it'm still looking at it: The warning comes back, eg. First name is a required field but the CiviCRM profile fields do not light up, they don't inherit the class `.has-error`.https://lab.civicrm.org/dev/drupal/-/issues/60Drupal 8 doesn't see routes for mailchimp extension2019-04-26T20:13:29ZjohnkDrupal 8 doesn't see routes for mailchimp extensionsee also: https://github.com/veda-consulting/uk.co.vedaconsulting.mailchimp/issues/321
I get a 404 for all the pages specific to the mailchimp extension, when running under a D8 site.
I'm unsure whether this is a bug in the extension i...see also: https://github.com/veda-consulting/uk.co.vedaconsulting.mailchimp/issues/321
I get a 404 for all the pages specific to the mailchimp extension, when running under a D8 site.
I'm unsure whether this is a bug in the extension itself, or the civicrm-drupal-8 module, so I thought I'd open an issue here, as well.https://lab.civicrm.org/dev/drupal/-/issues/57Editing contribution recorded as "Deleted Activity" when full log is enabled2021-02-04T19:23:38ZtapashEditing contribution recorded as "Deleted Activity" when full log is enabledIf an existing contribution edited when full log is enabled, it records in chage log as "Deleted Activity". Is this how it should be?If an existing contribution edited when full log is enabled, it records in chage log as "Deleted Activity". Is this how it should be?https://lab.civicrm.org/dev/drupal/-/issues/55Cannot add Image to Badge Layout on Drupal 8.6.14 CiviCRM 5.12.0.2019-04-17T17:26:59ZcaribbeanCannot add Image to Badge Layout on Drupal 8.6.14 CiviCRM 5.12.0.Go to Administer -> CiviEvent -> Event Name Badge Layouts
Trying to Click "Image (top left)" or "Image (top right)" results in new Window/Tap opens with "File not found."
Output of Web Server error log: [error] 4760#4760: *5993 FastCGI...Go to Administer -> CiviEvent -> Event Name Badge Layouts
Trying to Click "Image (top left)" or "Image (top right)" results in new Window/Tap opens with "File not found."
Output of Web Server error log: [error] 4760#4760: *5993 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: xx.xx.xx.xx, server: example.com, request: "GET /libraries/civicrm/packages/kcfinder/browse.php?cms=civicrm&type=images HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.3-fpm.sock:", host: "example.com", referrer: "https://example.com/civicrm/admin/badgelayout?action=update&id=1&reset=1"
A search for browse.php finds the file in {project_root}/vendor/civicrm/civicrm-core/packages/kcfinder/browse.php but not in web_root/libraries/civicrm/packages/kcfinder
Attempting to copy the missing files and directories from the vendor folder to web folder results in another error.
Web Server nginx/1.15.11 PHP 7.3.4-1+ubuntu18.04.1 Database 5.5.5-10.3.14-MariaDB-1:10.3.14+maria
![Screen_Shot_2019-04-16_at_16.07.01](/uploads/759748c6f24f64f4ec347e19efcbead5/Screen_Shot_2019-04-16_at_16.07.01.png)https://lab.civicrm.org/dev/drupal/-/issues/54Drupal8 CiviCRM conflicts with Masquerade module2022-02-24T00:33:50ZJonGoldDrupal8 CiviCRM conflicts with Masquerade moduleReported on d.o originally by jptillman (who is on chat.c.o with the same name) in the Masquerade queue: https://www.drupal.org/project/masquerade/issues/3019665
I confirmed the same issue, and also confirmed that uninstalling CiviCRM r...Reported on d.o originally by jptillman (who is on chat.c.o with the same name) in the Masquerade queue: https://www.drupal.org/project/masquerade/issues/3019665
I confirmed the same issue, and also confirmed that uninstalling CiviCRM resolves this issue. This fits a pattern of Civi having some sort of incorrect interaction with the D8 user login - see #53, core#231, and [CRM-19878](https://issues.civicrm.org/jira/browse/CRM-19878) for other examples.5.41.0https://lab.civicrm.org/dev/drupal/-/issues/50Changing pages on Pagination from the Dashlet causes the report to go fullscreen2021-02-04T19:22:56ZmclubbChanging pages on Pagination from the Dashlet causes the report to go fullscreenAfter we updated to 5.10.3 our client reported that going to the next result (page) the dashlet would take over the full screen. There wasn't any way to minimize or close this if it was a modal. I have tested this out as well and I am ab...After we updated to 5.10.3 our client reported that going to the next result (page) the dashlet would take over the full screen. There wasn't any way to minimize or close this if it was a modal. I have tested this out as well and I am able to replicate.
Drupal 7 (latest)
CiviCRM 5.10.3
To recreate:
* Create a report that will enable pagination and make sure you can add it to the dashboard
* Add the dashlet to the dashboard
* Click on the next page or some other page that is available for the report
* You should see that it goes full screen
Thankshttps://lab.civicrm.org/dev/drupal/-/issues/48Column next_sched_contribution should be next_sched_contribution_date for Vie...2020-04-15T06:55:32ZherbdoolColumn next_sched_contribution should be next_sched_contribution_date for Views integrationIn https://github.com/civicrm/civicrm-drupal/blob/a6a3276330d54ce88fe78cdf9f9034421d56f20c/modules/views/components/civicrm.contribute.inc#L1057 it's referencing a table column that doesn't exist (anymore?).In https://github.com/civicrm/civicrm-drupal/blob/a6a3276330d54ce88fe78cdf9f9034421d56f20c/modules/views/components/civicrm.contribute.inc#L1057 it's referencing a table column that doesn't exist (anymore?).5.14.0https://lab.civicrm.org/dev/drupal/-/issues/44[webform_civicrm] - enable contribution fails with php fatal error in drupal82019-04-29T10:47:32ZDeepak Srivastava[webform_civicrm] - enable contribution fails with php fatal error in drupal8When trying to enable contribution in webform_civicrm, receive a fatal error:
![image](/uploads/7193d1469fdaab57b268a014c744a5bc/image.png)
![image](/uploads/b6bc4c76ccf152fc21f1450f8be9c3c7/image.png)
Error: Call to undefined functio...When trying to enable contribution in webform_civicrm, receive a fatal error:
![image](/uploads/7193d1469fdaab57b268a014c744a5bc/image.png)
![image](/uploads/b6bc4c76ccf152fc21f1450f8be9c3c7/image.png)
Error: Call to undefined function webform_component_invoke() in wf_crm_admin_form::addPageBreak() (line 2057 of /var/www/vhosts/example.org/crm.example.org/modules/webform_civicrm/includes/wf_crm_admin_form.inc) #0 /var/www/vhosts/example.org/crm.example.org/modules/webform_civicrm/includes/wf_crm_admin_form.inc(1983): wf_crm_admin_form::addPageBreak(Array) #1 /var/www/vhosts/example.org/crm.example.org/modules/webform_civicrm/includes/wf_crm_admin_form.inc(1713): wf_crm_admin_form::insertComponent(Array, Array, Array, false) #2 /var/www/vhosts/example.org/crm.example.org/modules/webform_civicrm/src/Form/WebformCiviCRMSettingsForm.php(107): wf_crm_admin_form->postProcess() #3 [internal function]: Drupal\webform_civicrm\Form\WebformCiviCRMSettingsForm->submitForm(Array, Object(Drupal\Core\Form\FormState)) #4 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/Form/FormSubmitter.php(111): call_user_func_array(Array, Array) #5 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/Form/FormSubmitter.php(51): Drupal\Core\Form\FormSubmitter->executeSubmitHandlers(Array, Object(Drupal\Core\Form\FormState)) #6 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/Form/FormBuilder.php(589): Drupal\Core\Form\FormSubmitter->doSubmitForm(Array, Object(Drupal\Core\Form\FormState)) #7 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/Form/FormBuilder.php(318): Drupal\Core\Form\FormBuilder->processForm('webform_civicrm...', Array, Object(Drupal\Core\Form\FormState)) #8 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/Controller/FormController.php(93): Drupal\Core\Form\FormBuilder->buildForm('webform_civicrm...', Object(Drupal\Core\Form\FormState)) #9 [internal function]: Drupal\Core\Controller\FormController->getContentResult(Object(Symfony\Component\HttpFoundation\Request), Object(Drupal\Core\Routing\RouteMatch)) #10 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(123): call_user_func_array(Array, Array) #11 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/Render/Renderer.php(582): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() #12 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(124): Drupal\Core\Render\Renderer->executeInRenderContext(Object(Drupal\Core\Render\RenderContext), Object(Closure)) #13 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/EventSubscriber/EarlyRenderingControllerWrapperSubscriber.php(97): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->wrapControllerExecutionInRenderContext(Array, Array) #14 /var/www/vhosts/example.org/crm.example.org/vendor/symfony/http-kernel/HttpKernel.php(151): Drupal\Core\EventSubscriber\EarlyRenderingControllerWrapperSubscriber->Drupal\Core\EventSubscriber\{closure}() #15 /var/www/vhosts/example.org/crm.example.org/vendor/symfony/http-kernel/HttpKernel.php(68): Symfony\Component\HttpKernel\HttpKernel->handleRaw(Object(Symfony\Component\HttpFoundation\Request), 1) #16 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/StackMiddleware/Session.php(57): Symfony\Component\HttpKernel\HttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #17 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/StackMiddleware/KernelPreHandle.php(47): Drupal\Core\StackMiddleware\Session->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #18 /var/www/vhosts/example.org/crm.example.org/core/modules/page_cache/src/StackMiddleware/PageCache.php(99): Drupal\Core\StackMiddleware\KernelPreHandle->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #19 /var/www/vhosts/example.org/crm.example.org/core/modules/page_cache/src/StackMiddleware/PageCache.php(78): Drupal\page_cache\StackMiddleware\PageCache->pass(Object(Symfony\Component\HttpFoundation\Request), 1, true) #20 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php(47): Drupal\page_cache\StackMiddleware\PageCache->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #21 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/StackMiddleware/NegotiationMiddleware.php(52): Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #22 /var/www/vhosts/example.org/crm.example.org/vendor/stack/builder/src/Stack/StackedHttpKernel.php(23): Drupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #23 /var/www/vhosts/example.org/crm.example.org/core/lib/Drupal/Core/DrupalKernel.php(669): Stack\StackedHttpKernel->handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #24 /var/www/vhosts/example.org/crm.example.org/index.php(19): Drupal\Core\DrupalKernel->handle(Object(Symfony\Component\HttpFoundation\Request)) #25 {main}.
Drupal version : 8.6.5
CiviCRM Webform (webform_civicrm) : 8.x-5.x-dev
Webform (webform) : 8.x-5.1
CiviCRM : 5.9.0https://lab.civicrm.org/dev/drupal/-/issues/31CiviMember Role sync is no longer syncing Pending memberships2022-10-08T12:04:06ZjitendraCiviMember Role sync is no longer syncing Pending membershipsPending membership does not sync roles even if the option is configured in the settings page.Pending membership does not sync roles even if the option is configured in the settings page.5.9jitendrajitendrahttps://lab.civicrm.org/dev/drupal/-/issues/30Upgrade failure from CiviCRM 4.6.x to 5.5.x due to Backup and Migrate module ...2019-07-05T10:15:51ZdesiertoUpgrade failure from CiviCRM 4.6.x to 5.5.x due to Backup and Migrate module being enabledI attempted an upgrade from 4.6.38 to 5.5.1 running the database upgrade through Drush. I am on Debian 8. At some point around version 4.7 the upgrade failed. It appears that there were too many connection to the MySQL database server, w...I attempted an upgrade from 4.6.38 to 5.5.1 running the database upgrade through Drush. I am on Debian 8. At some point around version 4.7 the upgrade failed. It appears that there were too many connection to the MySQL database server, which I think is set to the standard 100. After consulting an expert, we found that something with the upgrade process was triggering the Drupal Backup and Migrate module to create too many database connections. After reverting to a backup and trying again with Backup and Migrate disabled the upgrade went relatively smoothly. Error text:
PEAR_Exception: "DB Error: connect failed"
* ERROR TYPE: DB_Error
* ERROR CODE: -24
* ERROR MESSAGE: DB Error: connect failed
* ERROR MODE: 16
* ERROR USERINFO: [nativecode=Too many connections]
* ERROR DEBUGINFO: [nativecode=Too many connections]https://lab.civicrm.org/dev/drupal/-/issues/26Double quote (") should not be escaped in CIVICRM_UF_DSN in civicrm.settings.php2020-07-16T17:23:38ZsomnolentsurferDouble quote (") should not be escaped in CIVICRM_UF_DSN in civicrm.settings.phpI'm a complete newbie to both CiviCRM and Drupal, but I've been trying to test out an installation for one of my clients. I completed a fresh, standard installation of Drupal 7, then followed the installation process for CiviCRM in the S...I'm a complete newbie to both CiviCRM and Drupal, but I've been trying to test out an installation for one of my clients. I completed a fresh, standard installation of Drupal 7, then followed the installation process for CiviCRM in the System Administrator Guide.
Once installation was complete, and I had filled in all the details of my database paths and users as requested, I tried to follow the process for setting up scheduled jobs at https://docs.civicrm.org/sysadmin/en/latest/setup/jobs/ using either the CLI or HTTP method.
Whatever I tried, every attempt to run Job.execute resulted in 'DB Error: connect failed'.
With the help of this StackExchange thread (https://civicrm.stackexchange.com/questions/25575/db-error-connect-failed-when-trying-to-call-job-execute-using-cli-php/) I tracked down the logs and discovered that MySQL was rejecting the password of the Drupal database user.
On looking up the password in CIVICRM_UF_DSN in civicrm.settings.php I noticed that a double quote character (") in my password was escaped with a backslash, even though the instructions in the file only say single quote (') or backslash (\) characters should be escaped. Taking the backslash out of the password allowed Job.execute to run as expected.
I had never touched civicrm.settings.php before, so it seems that whichever script had translated the password I entered in the GUI during installation into that file must have erroneously escaped the double quote.https://lab.civicrm.org/dev/drupal/-/issues/22Drupal8: implement views and multilingual CiviCRM2020-07-16T17:23:38ZbgmDrupal8: implement views and multilingual CiviCRMHow to reproduce:
* Create a bilingual Drupal site, with the locale module
* Setup CiviCRM as multilingual, bilingual, using URL prefix language detection (example.org/fr/civicrm)
* Create a view of CiviCRM Events, add the title field.
...How to reproduce:
* Create a bilingual Drupal site, with the locale module
* Setup CiviCRM as multilingual, bilingual, using URL prefix language detection (example.org/fr/civicrm)
* Create a view of CiviCRM Events, add the title field.
Result: fatal database error because it cannot find `civicrm_event.title` (should be `civicrm_event.title_en_US`).
This was a quickfix, incoming PR.
cc @JoeMurray @monish.deb @samuelsovbgmbgmhttps://lab.civicrm.org/dev/drupal/-/issues/20Manual synchronization of CiviCRM memberships and Drupal roles gives error2023-11-09T23:29:43Zcarbar1103Manual synchronization of CiviCRM memberships and Drupal roles gives errorHello.
I am just starting to get memberships and roles sorted out in my CiviCRM. When I go to Home » Administration » Configuration » CiviCRM » CiviMember Roles Sync » Manually Synchronize and click the button, I get a popup saying "Th...Hello.
I am just starting to get memberships and roles sorted out in my CiviCRM. When I go to Home » Administration » Configuration » CiviCRM » CiviMember Roles Sync » Manually Synchronize and click the button, I get a popup saying "There was an error. CiviMember Memberships and Drupal Roles could not be synchronized." The Drupal log just says "unknown error".
On investigation, the problem appears in drupal/modules/civicrm_member_roles/civicrm_member_roles.module, line 530, in the method _civicrm_member_roles_sync():
```
$contacts = CRM_Core_DAO::executeQuery($sql, $params);
if ($contacts->N == 0) {
watchdog('civicrm_member_roles',
$errorMsg,
$errorParams,
WATCHDOG_ERROR
);
return FALSE;
}
```
It is running the following sql:
```
SELECT DISTINCT uf.contact_id, m.end_date FROM civicrm_uf_match uf
LEFT JOIN civicrm_membership m ON uf.contact_id = m.contact_id
WHERE m.id IS NOT NULL AND m.membership_type_id IN (1)
ORDER BY m.end_date DESC
```
which is returning zero rows. This is probably because I haven't got the necessary roles/contacts/etc set up, but it is a bit of an odd error.
Regards,
Carl