Drupal issueshttps://lab.civicrm.org/dev/drupal/-/issues2020-08-17T04:43:57Zhttps://lab.civicrm.org/dev/drupal/-/issues/114Installing drupal 8 using civicrm-setup leads to "incorrect resource url" sys...2020-08-17T04:43:57ZDaveDInstalling drupal 8 using civicrm-setup leads to "incorrect resource url" system status check errorsWhat the check is doing is evaluating `CRM_Core_Config::singleton()->userFrameworkResourceURL` as part of computing the path to the packages folder, but here that evaluates to `[cms.root]/libraries/civicrm/core/`, which in drupal 8 is se...What the check is doing is evaluating `CRM_Core_Config::singleton()->userFrameworkResourceURL` as part of computing the path to the packages folder, but here that evaluates to `[cms.root]/libraries/civicrm/core/`, which in drupal 8 is separated from packages.
One possibility is to instead evaluate `[civicrm.packages]`, i.e. line https://github.com/civicrm/civicrm-core/blob/5.23.3/CRM/Utils/Check/Component/Env.php#L867 should change to:
`$arrowUrl = \Civi::paths()->getUrl('[civicrm.packages]/jquery/css/images/arrow.png', 'absolute');`
I'm just not sure if that then works with other CMSs. Alternatively maybe it should check for something in core?5.29.0https://lab.civicrm.org/dev/drupal/-/issues/112Installer requires anonymous users to have Administer site config permission ...2020-04-01T07:24:21ZherbdoolInstaller requires anonymous users to have Administer site config permission in order to installI'm installing CiviCRM 5.23.2 on Drupal 7 by going to `sites/all/modules/civicrm/install/`. It's a fresh Drupal 7 install on Lando. I get this message "The installer can only be run by a user with the permission to administer site config...I'm installing CiviCRM 5.23.2 on Drupal 7 by going to `sites/all/modules/civicrm/install/`. It's a fresh Drupal 7 install on Lando. I get this message "The installer can only be run by a user with the permission to administer site configuration." and it only allows me to install when I give anon users this permission. I am logged in as admin with all permissions enabled. So somehow the session is no longer active at the URL.https://lab.civicrm.org/dev/drupal/-/issues/111Multiple jquery errors after upgrading to Drupal 8.8.42020-03-22T15:24:38ZRob_SMultiple jquery errors after upgrading to Drupal 8.8.4I've applied the latest security patch to upgrade to Drupal 8.8.4 and it seems to have broken Civi. At /civicrm I am seeing no menu, the dashboards aren't loading and cannot be edited / updated. There are numerous js errors on the page w...I've applied the latest security patch to upgrade to Drupal 8.8.4 and it seems to have broken Civi. At /civicrm I am seeing no menu, the dashboards aren't loading and cannot be edited / updated. There are numerous js errors on the page which seem to stem from jquery being missing. THe first error is:
ReferenceError: jQuery is not defined /libraries/civicrm/js/Common.js:4:10
Any advice would be appreciated here people pleasehttps://lab.civicrm.org/dev/drupal/-/issues/109OG_Sync gives fatal error if User is Anonymous2020-03-16T07:37:34ZTony Maynard-SmithOG_Sync gives fatal error if User is AnonymousWhen creating or updating an Organic Group page, if the Author is set to Anonymous or left blank, the OG_Sync module throws a Fatal Error. This can be seen as line 224 of the civicrm_og_sync.module file in the attached backtrace.
Anonym...When creating or updating an Organic Group page, if the Author is set to Anonymous or left blank, the OG_Sync module throws a Fatal Error. This can be seen as line 224 of the civicrm_og_sync.module file in the attached backtrace.
Anonymous is a valid entry for Author on the Drupal form, and should not throw this error. We have a number of occurrences of this where the Group Page has been converted from a previous normal page not using OG, and the original Author had been deleted or otherwise set to Anonymous.
![OG_Sync_error](/uploads/d1c254caa0e18bb4370186657cf1c556/OG_Sync_error.png)https://lab.civicrm.org/dev/drupal/-/issues/106Latest master (5.23) code not working with roundearth/drupal 8 because resour...2020-04-02T19:36:52ZDaveDLatest master (5.23) code not working with roundearth/drupal 8 because resource urls are formed incorrectlyIt seems at least partly from the changes here https://github.com/civicrm/civicrm-core/pull/16407#pullrequestreview-350540291. When I remove that block the resources start loading again except for a few places, like the "include profiles...It seems at least partly from the changes here https://github.com/civicrm/civicrm-core/pull/16407#pullrequestreview-350540291. When I remove that block the resources start loading again except for a few places, like the "include profiles" tab when configuring a contribution page.
What's happening is the resource urls are all coming out like
```
<script src="http://example.org/full/filesystem/path/to/vendor/civicrm/civicrm-core/bower_components/jquery/dist/jquery.min.js">
```
I first tried updating my drupal 8 dev site, then I started fresh like below and had the same problem, so it wasn't specific to my earlier testing environment.
* Installed roundearth and got a working 5.22 install.
* Then updated it to master - using [this method](https://civicrm.stackexchange.com/a/34321/181).
* Briefly, hack roundearth Handler.php to understand that dev-master means the NIGHTLY tarball, then composer require civicrm/civicrm-core:dev-master.
* I had to adjust the require command slightly for civicrm-setup and zetamail (civicrm/civicrm-setup:^0.4.x-dev zetacomponents/mail:^1.9).
Does the latest master require a different resources install path or different settings from what roundearth uses for drupal 8? @totten?https://lab.civicrm.org/dev/drupal/-/issues/105Drupal 8 routes don't rebuild automatically2020-11-04T20:41:28ZjohnkDrupal 8 routes don't rebuild automaticallyI use CiviCRM 5.21.1 with Drupal 8.8. Oftentimes, after I upgrade an extension, I have to run this command:
`drush ev '\Drupal::service("router.builder")->rebuild();'`
My questions are: does this occur automatically for upgrades to Civ...I use CiviCRM 5.21.1 with Drupal 8.8. Oftentimes, after I upgrade an extension, I have to run this command:
`drush ev '\Drupal::service("router.builder")->rebuild();'`
My questions are: does this occur automatically for upgrades to CiviCRM itself? It seems like maybe it does. I think, in that case, it should be automatic for extension upgrades, as well.
At the very least this command needs to be documented somewhere. I did a Google search, and all I found was some of my old bug reports!https://lab.civicrm.org/dev/drupal/-/issues/104Drupal8 + Plesk: User path missing from cmsRootPath()2020-01-15T06:04:53ZRar9Drupal8 + Plesk: User path missing from cmsRootPath()The cmsRootPath() is not able to get absolute path, specifically the user folder portion of the path on Plesk.
This might be caused by multisite setup, function being insufficient or permission.
To fix CRON for plesk the following nee...The cmsRootPath() is not able to get absolute path, specifically the user folder portion of the path on Plesk.
This might be caused by multisite setup, function being insufficient or permission.
To fix CRON for plesk the following needs to be changed
vendor/civicrm/civicrm-core/CRM/Utils/System/Drupal8.php at line 441:
```diff
-return $civicrm_paths['cms.root']['path'];
+return realpath($_SERVER["DOCUMENT_ROOT"]) . '/'.array_slice(explode('/', $civicrm_paths['cms.root']['path']), -1)[0];
```
The cause is that in Plesk all files and directories under a domain document root directory should belong to psacln group and to the sysuser user. Where sysuser is a user of a corresponding subscription.
CIVICRM Cron only expects a chown -R www-data|psaserv .
The way to set correct permission is a correct way to fix the issue for subdomain.
This is described in the article above in step 3. https://support.plesk.com/hc/en-us/articles/115004094934https://lab.civicrm.org/dev/drupal/-/issues/101Error cancelling Drupal user2020-01-06T21:44:57ZedvanleeuwenError cancelling Drupal userWhen I cancel a Drupal user account, I get a non-descriptive error and cancellation has not been done. Doing this a second time does cancel the user, but the user relation is still visible in Civi because the entry in civicrm_uf_match is...When I cancel a Drupal user account, I get a non-descriptive error and cancellation has not been done. Doing this a second time does cancel the user, but the user relation is still visible in Civi because the entry in civicrm_uf_match is not removed.
Using Drupal 7.67 and CiviCRM 5.20.2.https://lab.civicrm.org/dev/drupal/-/issues/100Edit rights when access does not allow it2023-12-21T00:31:59ZedvanleeuwenEdit rights when access does not allow itI have a role which does not have edit rights for contacts. It is part of an access group which has Edit rights on the group of contacts to be managed.
Does the ACL overrule the Drupal rights?
(For memberships: limiting access from Dru...I have a role which does not have edit rights for contacts. It is part of an access group which has Edit rights on the group of contacts to be managed.
Does the ACL overrule the Drupal rights?
(For memberships: limiting access from Drupal does not give edit rights, which I think acts correctly)https://lab.civicrm.org/dev/drupal/-/issues/99Error when creating user record for Civi contact2020-10-19T23:41:42ZjptillmanError when creating user record for Civi contactIn Drupal 8 (at least), when I choose to "Create User Record" from the "Actions" menu-button while viewing a CRM contact, it will show me the typical username/password form to complete, and when I submit it, it works, but I get this erro...In Drupal 8 (at least), when I choose to "Create User Record" from the "Actions" menu-button while viewing a CRM contact, it will show me the typical username/password form to complete, and when I submit it, it works, but I get this error message:
```
Notice: Trying to get property 'id' of non-object in CRM_Core_BAO_UFMatch::updateContactEmail() (line 449 of /var/www/sitename/vendor/civicrm/civicrm-core/CRM/Core/BAO/UFMatch.php).
```
When I try to create a user account from the Drupal side, for an email that already exists in Civi, I get the exact same error, but Civi creates a NEW contact which is empty except for the email, resulting in 2 contacts with duplicate emails.
Preferred behavior is, of course, for both actions to result in a properly matched up Drupal User and CiviCRM contact record.https://lab.civicrm.org/dev/drupal/-/issues/98CiviCRM session instance not working when Masquerading in Drupal 72021-09-01T21:02:42ZMichael McAndrewCiviCRM session instance not working when Masquerading in Drupal 7Have just upgraded to D7-5.20.1 and noticed that CRM_Core_Session::singleton() does not work when masquerading.
Setting a breakpoint in a Drupal page while masquerading and running `Civi::log()->debug(var_export(CRM_Core_Session::single...Have just upgraded to D7-5.20.1 and noticed that CRM_Core_Session::singleton() does not work when masquerading.
Setting a breakpoint in a Drupal page while masquerading and running `Civi::log()->debug(var_export(CRM_Core_Session::singleton(),true))`
Results in the following in the log:
```
Dec 11 13:08:57 [debug] CRM_Core_Session::__set_state(array(
'_key' => 'CiviCRM',
'_session' =>
array (
'masquerading' => '76',
),
))
```5.23.0https://lab.civicrm.org/dev/drupal/-/issues/97Status report update for Drupal (similar to what was done for Backdrop)2020-01-29T14:53:02ZlarynStatus report update for Drupal (similar to what was done for Backdrop)I wrote a PR for Backdrop some time back and have been meaning to check if it would be desired for Drupal 7 as well -- if so I would be happy to base a MR here off of what I did there. Here's a visual of how it looks in Backdrop's Status...I wrote a PR for Backdrop some time back and have been meaning to check if it would be desired for Drupal 7 as well -- if so I would be happy to base a MR here off of what I did there. Here's a visual of how it looks in Backdrop's Status Report page (Drupal 7 status report would obviously look a little different):
![Screen_Shot_2019-12-04_at_7.10.28_PM](/uploads/0a83d103f2aec9652797d3ce71c41345/Screen_Shot_2019-12-04_at_7.10.28_PM.jpg)
Would a version of this for Drupal 7 be accepted?https://lab.civicrm.org/dev/drupal/-/issues/96Add user format to CiviCRM Entity2021-02-04T19:28:45ZedvanleeuwenAdd user format to CiviCRM EntityFeature request: I would like to have the following user format added to CiviCRM Entity.
In civicrm_entity.module, function _civicrm_entity_options_username_format:
` 'nick.middle.last' => t('Nick.Middle.Last'),
'nick.middlelast'...Feature request: I would like to have the following user format added to CiviCRM Entity.
In civicrm_entity.module, function _civicrm_entity_options_username_format:
` 'nick.middle.last' => t('Nick.Middle.Last'),
'nick.middlelast' => t('Nick.MiddleLast'),`
[civicrm_entity.module](/uploads/bd29a74959e50bc5fc2411891d0a94e9/civicrm_entity.module)
In civicrm_entity.module, function civicrm_entity_action_create_user:
```
case 'nick.middle.last':
if (!empty($contact['middle_name'])) {
$params['name'] = _civicrm_entity_clean_login_name(trim($contact['nick_name']) . "." . trim($contact['middle_name']) . "." . trim($contact['last_name']));
} else {
$params['name'] = _civicrm_entity_clean_login_name(trim($contact['nick_name']) . "." . trim($contact['last_name']));
}
break;
case 'nick.middlelast':
if (!empty($contact['middle_name'])) {
$params['name'] = _civicrm_entity_clean_login_name(trim($contact['nick_name']) . "." . trim($contact['middle_name']) . trim($contact['last_name']));
} else {
$params['name'] = _civicrm_entity_clean_login_name(trim($contact['nick_name']) . "." . trim($contact['last_name']));
}
break;
```
An adapted file has been attached.https://lab.civicrm.org/dev/drupal/-/issues/94Notice: Undefined property: CRM_Core_DAO2024-03-13T19:07:26ZGhost UserNotice: Undefined property: CRM_Core_DAOAfter a login in drupal I see the following errors:
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-street_address in CRM_Core_BAO_UFGroup::getValues() (Zeile 1289 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UF...After a login in drupal I see the following errors:
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-street_address in CRM_Core_BAO_UFGroup::getValues() (Zeile 1289 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-city in CRM_Core_BAO_UFGroup::getValues() (Zeile 1289 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-postal_code in CRM_Core_BAO_UFGroup::getValues() (Zeile 1289 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-country in CRM_Core_BAO_UFGroup::getValues() (Zeile 1264 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-country_id in CRM_Core_BAO_UFGroup::getValues() (Zeile 1266 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-state_province in CRM_Core_BAO_UFGroup::getValues() (Zeile 1264 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
* Notice: Undefined property: CRM_Core_DAO::$Private_Adresse-state_province_id in CRM_Core_BAO_UFGroup::getValues() (Zeile 1266 von /var/www/html/sites/all/modules/civicrm/CRM/Core/BAO/UFGroup.php).
![image](/uploads/02599db50123540bbe5d48006cd818a6/image.png)
---
CiviCRM Version: `7.x-5.18.4`
Drupal Version: `7.67`https://lab.civicrm.org/dev/drupal/-/issues/93Create access role for importing memberships2019-11-04T08:53:10ZedvanleeuwenCreate access role for importing membershipsAt the moment, there is an access role to import contacts, but not for memberships. The latter shows up in the menu of users who are not allowed to import contacts.
It would be better to have a separate role for this or to attach this a...At the moment, there is an access role to import contacts, but not for memberships. The latter shows up in the menu of users who are not allowed to import contacts.
It would be better to have a separate role for this or to attach this access to the contact import role.https://lab.civicrm.org/dev/drupal/-/issues/92Drupal8 - Solarium/Solarium 5.13 breaks Civicrm2020-10-24T21:12:08ZRar9Drupal8 - Solarium/Solarium 5.13 breaks CivicrmIf Solarium/Solarium 5.13 is used all Drupal 8 breaks
I was forced to apply composer require symfony/event-dispatcher:"4.3.4 as 3.4.99"
But this gives
PHP Fatal error: Uncaught Error: Class 'Symfony\Component\EventDispatcher\Contai...If Solarium/Solarium 5.13 is used all Drupal 8 breaks
I was forced to apply composer require symfony/event-dispatcher:"4.3.4 as 3.4.99"
But this gives
PHP Fatal error: Uncaught Error: Class 'Symfony\Component\EventDispatcher\ContainerAwareEventDispatcher' not found in /var/www/vhosts/XXX/vendor/civicrm/civicrm-core/Civi/Core/CiviEventDispatcher.php:18
![image](/uploads/cfcf9db6c5faf6acecd610b4b2933197/image.png)
If civicrm is disabled site works again.https://lab.civicrm.org/dev/drupal/-/issues/91Drupal8: Buggy behavior if user account is created without email address2020-08-07T03:28:13ZJonGoldDrupal8: Buggy behavior if user account is created without email addressIn Drupal 8, the email address isn't a required field. However, if an email address isn't specified, then the `civicrm_uf_match` record isn't created, the corresponding CiviCRM contact isn't created, and this leads to some very buggy be...In Drupal 8, the email address isn't a required field. However, if an email address isn't specified, then the `civicrm_uf_match` record isn't created, the corresponding CiviCRM contact isn't created, and this leads to some very buggy behavior, such as the dashboard showing multiple dashboards (see https://lab.civicrm.org/dev/drupal/issues/54#note_23706), which I imagine is because `civicrm_dashboard_contact` is being queried by contact ID, and finding none, simply loads all dashlets for all users.
I think the correct way to handle this is to use a Drupal hook to make the email address required.5.29.0https://lab.civicrm.org/dev/drupal/-/issues/90SMS limit is hardcoded at 460 but should be changeable somewhere2021-02-04T19:26:45ZjasonobrownSMS limit is hardcoded at 460 but should be changeable somewhereTwillio (and probably other sms providers) allows SMS messages up to 1600 characters, but Civi has the limit hardcoded at 460. I've verified that by simply going to CRM/SMS/Provider.php and changing MAX_SMS_CHAR from 460 to 1600 the sys...Twillio (and probably other sms providers) allows SMS messages up to 1600 characters, but Civi has the limit hardcoded at 460. I've verified that by simply going to CRM/SMS/Provider.php and changing MAX_SMS_CHAR from 460 to 1600 the system now accepts (and sends) messages up to 1600 characters. It seems logical that the character limit should able to be adjusted and stored somewhere rather than set as a static value in the code. We are currently using the larger limit, and would really like to see this implemented asap so that we can stop manually updating the code each time we update civi.https://lab.civicrm.org/dev/drupal/-/issues/89Drupal8 - Contact Report does not load any values in the ACL Group/Role field2020-01-15T05:06:39ZjitendraDrupal8 - Contact Report does not load any values in the ACL Group/Role fieldNo values are loaded in Access Tab -> ACL Group/Role field in any contact reports eg `Constituent Summary `
![image](/uploads/476933860e82a4ab629031222dc9d925/image.png)No values are loaded in Access Tab -> ACL Group/Role field in any contact reports eg `Constituent Summary `
![image](/uploads/476933860e82a4ab629031222dc9d925/image.png)5.23.0jitendrajitendrahttps://lab.civicrm.org/dev/drupal/-/issues/88CRM/Utils/System/Drupal8.php autoload.php path issue 5.16.32020-04-22T14:54:19ZndavisCRM/Utils/System/Drupal8.php autoload.php path issue 5.16.3line 419.
Relies on cmsRootPath
Standard drupal installation cms path (cmsRoot) is now [drupal root]/web.
Drupal8.php now looks for autoload as **[cms.root]//autoload.php** (line 419)
Unless you symlink autoload.php from ../vendor/au...line 419.
Relies on cmsRootPath
Standard drupal installation cms path (cmsRoot) is now [drupal root]/web.
Drupal8.php now looks for autoload as **[cms.root]//autoload.php** (line 419)
Unless you symlink autoload.php from ../vendor/autoload.php this fails to find autoload.php.
Suggest an if block that first tries `require_once "autoload.php";` and if that fails (vendor directory is not in php's include_path) *then* look for it in a better place than cmsRoot. As well [cms.root] has a trailing slash so the forward slash in the `$autoloader = require_once $root."/autoload.php"` is unnecessary.
vendor is not supposed to be accessible in the web root, so for anyone who's vendor directory is not the web root, and is in a directory one directory level up (out of web root) Drupal8.php won't find autoload.php.
I'm not sure of the Drupal8.php's history, but changes related to the path to autoload.php between 5.15.1 and 5.16.3 and broke things.
If you change the [cms.root] so Drupal8.php can find autoload.php the rest of civi breaks. If I set this path properly in Drupal8.php everything works.