8

As of CiviCRM v5.12.1 the menubar color is a configurable setting. On your main site you can change the color via the UI by visiting Administer -> Customize Data & Screens -> Display Preferences. Since this preference is stored in a system setting, you can override it on your various dev/staging sites by adding a line like this to civicrm.settings.php: ...


5

A contact subtype is an "entity" - it exists as a record in the civicrm_contact_type table. So that means you can use the "managed entity" approach described here: https://civicrm.org/blog/totten/api-and-art-installation and documented here: https://docs.civicrm.org/dev/en/latest/hooks/hook_civicrm_managed/ You could instead implement the install hook (...


3

Thank you for supporting CiviCRM! You can use this ESR form for members to request a download key. There is more information in the FAQ on the ESR page. When we launched Extended Security Releases (ESR) as a service, we were not sure how many people would sign up, so we started handling the requests manually. It seems like it's here to stay, so we are ...


3

Here is an example using the named parameter syntax: CRM_Utils_Hook::singleton()->invoke( ['pdf', 'pdf_variables', 'receipt'], $pdf, $pdf_variables, $receipt, CRM_Utils_Hook::$_nullObject, CRM_Utils_Hook::$_nullObject, CRM_Utils_Hook::$_nullObject, 'cdntaxreceipts_writeReceipt'); One advantage of this syntax, is that extension can then implement ...


2

With even version 5 of civicrm it is still using angular 1.5. I checked it on the demo site https://demo.circle-interactive.co.uk/civicrm/a on the console i ran: angular.version, and it returned this :- {full: "1.5.11", major: 1, minor: 5, dot: 11, codeName: "princely-quest"}


2

There is now an extension for EventBrite integration.


1

If you mean which api functions to call to create/update/delete the type, as a general rule you look in api explorer (available via the admin menu in civicrm under Support -> Developer) to see if there's something there (which shows there is ContactType -> create), and if had turned out there wasn't anything you could look in the core code to see how civi ...


1

The problem was caused by IIS Request Filtering Hidden Segments. By default IIS has a hidden segment called bin. API Explorer 4 attempts to get JavaScript from .../administrator/components/com_civicrm/civicrm/bower_components/google-code-prettify/bin/ Notice the bin folder name. Removing the bin Hidden Segment cured the problem. Security isn't an ...


1

This isn't really a question specific to civicrm, but in general unless you never plan to upgrade or do any customization after the initial installation, you'll want to have the dev to production direction set up anyway.


1

An approach: composer-downloads-plugin civicrm-core now uses the https://github.com/civicrm/composer-downloads-plugin for Javascript and CSS libraries. You can use the same technique in an extension. For example, suppose you have an extension civinfinite with a composer.json file which declares: { "name": "example/civinfinite", "require": { "...


1

Based on the answer of @artfulrobot (thanks!), i have made a version of the code that use the definition of the custom field itself. If we have a default value, then force the creation of the field, otherwise, just ignore. Of course, it's probably a bit slower because we do some extra api calls, but it means we could change the defaults in the UI without ...


1

I use Civi::log()->debug('my message') to write to the log file.


1

Had the same question in 2019 and from reading the source the answer is now CRM_Core_Error::debug_log_message().


Only top voted, non community-wiki answers of a minimum length are eligible