ER diagram for the latest Civicrm , Foreign key in Structure, test cases/plans Where can I get the ER diagram for the latest CiviCRM? I need it for internal reporting purposes in our organization.
I am able to download the Table structure from phpMyAdmin. However, it does not give details about foreign key references. Can I get it automated? Or I have to manually get it done?
Is there any Test plans/ Cases written, which I can catch hold off?

I will answer your questions #1 and #2. (I'm not sure what you mean by #3. If #3 is sufficiently unrelated to #1 and #2, I would suggest creating a separate question for it)

Why an ER (Entity Relationship) diagram might not be helpful

As a visual learner, I too looked for an ER diagram when first trying to understand the CiviCRM database schema. I was eventually able to generate such a diagram with a special tool, but in the end, my attempts to learn from this diagram were a fantastic waste of time.

In my opinion, CiviCRM's schema is just too big to make any sort of diagram useful. There are too many tables. (Currently over 150, and more when you add custom fields!) At this scale, a diagram becomes a rat's nest of confusion.

Other ways to learn about CiviCRM's schema

Using MySQL workbench

MySQL workbench is an awesome tool that has helped me tremedously in understanding CiviCRM's schema. It's similar to phpMyAdmin, but IMHO way better. It's a desktop application. You can use it to connect to a remote server like your live CiviCRM site, but for purposes of learning I'd recommend that you install MySQL locally and load a copy of your live CiviCRM database onto your local computer. Then you inspect this local database with MySQL workbench and it will be both faster and safer than looking at the live one.

A typical workflow would be:

Look at the list of tables in the database. The table name generally gives you a good idea of the type of data it stores.
Pick one table and look closer. Let's look at civicrm_country (a relatively simple example) by opening the "Table inspector" for that table.

We can look at the list of columns in the table.

We can see that columns have comments which explain (to some extent) the meaning of the data stored in the columns.

From the column names (and comments), we can also get some idea of the relationships between tables. For example, we can see that each country has an associated address_format. Cool!
We can look at the foreign keys which are relevant to this table.

Here, we get an even more comprehensive picture because, not only do we see tables referenced by civicrm_country, we see tables which reference civicrm_country. So we can see that each country has multiple state_provinces.

Using other tools (e.g. phpMyAdmin)

While MySQL Workbench is the best tool I've found for inspecting the CiviCRM data structure, other tools (such as phpMyAdmin) offer lots of the same functionality.

Specifically, looking at the names of the columns in each table goes a long way towards understanding the relationships between tables. For the most part, the following patterns hold true:

Every table has an id column as a primary (and thus unique) key.
Columns which reference other tables are named (usually) with the table name + _id. For example when you see a column called address_format_id, you can be relatively sure that it references civicrm_address_format.id
Many-to-many relationships use "join tables" as intermediary tables. For example, a contact can have many activity records, and an activity can have many contact records. So the table civicrm_activity_contact is used as the glue because it has foreign keys to both.
In some places CiviCRM defines schema using a construct called pseudoconstants which produces some slightly more complex logic

Lots of columns reference civicrm_option_values when they just need a simple (and user-configurable) list of options. For example, look at civicrm_contribution which has a column called payment_instrument_id. You'll notice there's no table called civicrm_payment_instrument. So in this case the payment_instrument_id column actually references the value column in civicrm_option_values (but only for records in civicrm_option_values with the appropriate option_group_id.) Here there is no foreign key, so referential integrity is managed at the application layer, not the database layer.
Some tables use "dynamic foreign keys". For example, look at civicrm_note which has columns entity_id and entity_table. This is because a note can be attached to different entities (e.g. contact, contribution, etc). So two columns are used to indicate what the note references. Here again, the application layer is responsible for ensuring referential integrity, so you won't find any foreign keys.


Avery 5160 label definition does not print properly WHen printing Avery 5160 labels, the printing does not fit the labels properly.
That is, the top line of the top row of labels is at the right place, but for each row after that, the top row is down a little bit; the printing on the bottom row of labels goes down off the page.
Same with the left margins - the 1st column is at the proper left margin, but the 2nd and 3rd columns move too close to the left edge of the label.
We've fiddled with the settings, but nothing seems to work.
The user has printed 5160 labels on the same printer, from Word, very successfully.
Any ideas?  Thanks!

I've not tried those particular labels, but I had a similar problem with Avery J8160 labels. I started off with a MS Word template downloaded from Avery to get all the spacing values, but had to make some adjustments to the label format, which I did by trial and error to get it printing correctly. I calculated the horizontal spacing as 0.25 cm but had to use 0.45 cm and for vertical spacing@ Calculated 0 cm but had ti use  0.15 cm. Will be different values for your labels buy that gives you the idea. I don't know what wasn't right, but this solved the problem for me.


Settings don't display when tabs are clicked on an existing CiviReport Based on the doc found here (at the bottom): https://docs.civicrm.org/user/en/4.7/reporting/set-up , it should be possible to edit existing reports (like adding email settings). Currently not even copying a report makes it editable, so everytime a new report needs to be created if you want to permanently change a setting (email in my case, to automatically send report results).
So my question: how do I edit an existing report?

Edit: screenshot added
Edit: second screenshot added

It sounds like you're missing the "Administer Reports" permission.

Go to CiviCRM's **Administer menu » Users and Permissions » Permissions (Access Control).
Select the first option ("CMS Access Control", where "CMS" is the name of your CMS).
Assign the "CiviReport: administer Reports" permission to a role you have.
Save the permission.

It's also worth replicating a problem on the demo site (demo.civicrm.org) if this doesn't resolve your issue.  That way you can edit your question knowing if the problem you're experiencing is specific to your site, or to CiviCRM in general.


How to add multiple individual in civicrm profile fields section in civicrm contribution page? I need to create a Household with Individual Members in a Contribution Page.

So an Individual will have
First Name, Last Name and Email Id
&
Household will have
Household Name
I need to add this in a profile and when a user adds the above, it will create a Household with individual members (multiple) listed in a profile.
How can I add fields such that we have an option to add multiple individual members by clicking on Add More button which will place the First Name, Last Name and Email Id fields?

Unfortunately this cannot be achieved with CiviCRM profiles.
CiviCRM only offers an option to sign up as an individual or on behalf of an organisation.
A household cannot be linked via a contribution page.

You best option with WordPress would be to attempt building a form using CiviCRM caldera forms - https://github.com/mecachisenros/caldera-forms-civicrm


How to disable State/Province in billing address blocks In the UK, the list of counties provided by Civicrm (and by the ISO) is mysterious to say the least to most UK dwellers. Many people think they live in a county which changed to something else years ago!

So, afaik it's best not to use counties in addresses with drop-down options - such as billing fields.

Therefore, how can one disable state/county in a billing address block? Or at least make it not required?

We use Authorize.net for most UK transactions.

Thanks for your help!

Drupal 7.56, Civi 4.7.22

PS - I see this: https://issues.civicrm.org/jira/browse/CRM-19688
But I don't think it helps in this situation?

We also needed to disable some billing fields, including the state/province, so we wrote an extension for it: https://github.com/WeMoveEU/nobillingfields

It keeps only first name, last name and zip code, and this is a hardcoded thing, but you should be able to easily adapt to your needs if you have a developer.
Note however that when we migrated to 4.7, the extension stopped working, and I patched civi core to make it work again. I reported the problem, and the suggested fix was to unset validation errors with a hook, but I have yet to try it.

I'm afraid there is no easier solution...


How are recurring contributions (standing orders) implemented in 4.7? I've read that recurring contributions are supported in core 4.7.   I can't figure out how this is done, and book.civicrm.org is still at 4.6 (or have I missed something?).  By recurring payments I mean, for example, monthly payments made from a contributor's bank.  In the UK this is done by what is known as a 'standing order'.  So, I don't mean recurring payments set up by a payment processor like Paypal.  I can't find anything in the 4.7 UI that helps with these kind of recurring contributions.

I think you're asking a very UK-specific question about direct debit. UK has special rules for direct debit that CiviCRM doesn't know anything about. But the iATS Payments payment processor does support the required workflow and the civicrm extension for iATS Payments does have a dedicated payment processor for that purpose, so that might work for you.
There is some information about how to set it up on this page:
https://github.com/iATSPayments/com.iatspayments.civicrm
[2020-06-22 Update: the iATS payments extension has dropped it's UK-specific support code]


Setting up an "ethics wall" - anonymous contributions Now that we have the basics of civicrm set up for our cathedral, we are looking at migrating giving recording - i.e. contributions and pledges.

The primary requirement is that contribution is anonymous. No one (with the exception of one giving recorder) knows how much anyone has contributed.
The current system uses a donor number for each person, so whoever is doing data entry should be able to record contributions by entering this number only, and not see the person's name.

Contributions are via cash [edit](in numbered envelopes)[/edit], EFTPOS and automatic payment.

Desired output: At the end of each financial year, the giving recorder can generate a single tax receipt which accumulates a person's donations throughout the year - and send it to them so that they can claim a tax credit.

That's a long way from the standard usage of civicontribute and civipledge, but I hope that someone out there has had to build something similar and can light the way.

[edit]As a supplementary question: it has been suggested that we store the donor numbers in the external ID field. How can we restrict access (view and edit) to this built-in field to a single role?[/edit]

Richard

As far as the end-of-year giving statements are concerned, this has been available in CiviCRM since 4.4, but not documented in the user and admin guide.

It is documented in the 4.6 version of the guide which will be published soon. (The publishing software we were using has stopped working, so we are working hard to get it ready to publish via a different route).  In the mean time the relevant section is:


How do I proceed to make CiviCRM bilingual Both English and French are enabled under Languages Options.

However, I have yet to see the green buttons several posts have mentioned.

For the email greeting, I had attempted to use the solution proposed by a German user. In French one uses Cher and Chère, but this does not work.

{capture assign=l}{contact.preferred_language}
{/capture}{capture assign=g}{contact.gender}{/capture}
{if $l="fr_CA"}
   {if $g="Female"}Chère{else}Cher{/if}
{else}Dear{/if}
{contact.first_name} {contact.last_name}

All I get is Network Error.

Languages options allow you to limit the preferred language for your contacts. It's not related to multilingual setting.

To enable multilingual, you need to go to :

menu Administer -> Localization -> Language, Currency, Locations
go to the latest section "Multiple Languages Support", check the box "Enable Multiple Languages" (this will change the structure of your database so do a backup first) and Save
go to this page again, and you should see a "Add Language" with a dropdown list : choose one and Save

Now you should be in multilingual mode and should see the green/grey buttons where applicable.

Concerning "email greeting", i think you need to enable smarty in this context. Try to add in your civicrm_settings.php (see also https://wiki.civicrm.org/confluence/display/CRMDOC/Smarty+in+mail+templates) :

define( 'CIVICRM_MAIL_SMARTY', 1 );


Radio buttons are before the amounts and on a different line How do I make the radio button appear on the same line as the amount/label and on the right of the label?
I have a simple contribution page - Joomla 3.6.2 and CIVI 4.7.9. The section with amounts to donate starts with a radio button on one line, then the field label is on the next line, then the amount. It makes it confusing as to which button is for which amount.

CiviCRM should have those radio elements on the same line by default. My guess then is that the website theme or some other module/extension in place alters this behaviour.

This is really a CSS question, and since you're already not seeing the default appearance of CiviCRM forms (see Drupal, Joomla!, WordPress examples), your question is likely going to be better solved in two steps:

"How do I make my site theme display CiviCRM's form styling as expected?", then
"How do I change the CSS to position the radio buttons to the right of the label?"

To do that, you'll need to either give the URL of your site (so people can see for themselves) or describe enough about the CSS in place to let people give you an informed reply.

One thing you could try is switching to a default theme for your CMS and verify if the CiviCRM forms appear as expected. Then you have a reference point for what works, and you can start addressing the issue.

Hope that helps!


New membership page as default Drupal register page Our non profit organisation has members who should have full access tot the web site.

We created in civicrm a contribution page with

no "contribution", only "membership" information
a choice between three types of membership
a civicrm profile with extra fields (address, phone number, birth day...)

Now, my question: how to get this page when the visitor goes to the Drupal register page? For the moment, only the civicrm profile is displayed, not the choice of the membership type.

As far as I'm aware you can expose a profile on a Drupal user registration page, but not a contribution page. Assuming you will have at least some public-facing content that is not member-only, you can include within this some information about joining, with links to your contribution page.

As part of your profile settings, you can specify whether a user account is created. So, when a user submits the contribution form, they will provide a username and an email address, and a Drupal account will be created for them.

One thing to look out for - if your membership is paid, the Drupal account may well be created regardless of whether the payment is completed successfully or not.

Then you can use the CiviMember role sync module to give the new member a Drupal role with appropriate access permissions when they next log in.


Getting Custom field values via API using chaining I am trying to use the API to get membership data, including some custom fields.  I have the general idea, I think.  I can successfully retrieve the memberships, chained in the contact data, and now I need to include some data in custom fields.  The table the custom data is stored in is called "college_data_1" and one of the custom fields is called "enrollment_3".  So I believe I want entity 1 and field 3. I didn't find documentation that confirms how to find these IDs.  So what I current have in API explorer is:

rest.php?entity=Membership&action=get&api_key=userkey&key=sitekey&json={"sequential":1,"membership_type_id":"Membership Name","api.Contact.get":{},"api.CustomValue.get":{"id":3,"entity_id":1}}

however this doesn't work.  Help?

I will need to include website data too, next.

I don't think you need to chain the calls, you simply need to specify the fields (return custom_xxx) you want to fetch from the membership.

On the API explorer, try to set the return fields you want, and check you can include the custom fields you want


How to find contacts that haven't confirmed their registration? Coming through various channels (webform, newsletter subscription, api calls..) I have contacts that have never confirmed their subscription to a group.

If I go to the group tab, I can see that they belong to the group with the status "pending", and can manually confirm them

However, I didn't find on advanced search or custom a way to list all the pending ones (ideally, from longer than a few days ago), so I can send them a nudge "hey, you haven't confirmed your registration yet, please click here"

Is there an easy way to do that?

go to >Contacts >Manage Groups and click on the link "Contacts" next to the the group in question. You will then see all contacts in the group and also be able to filter for those that are added, removed or pending.


Can you propagate custom data in New Activity? Is there a way to propagate the "With Contacts" address and phone number into the activities assignee's copy email?

If I'm reading the code correctly, it sends the slightly misnamed "Cases - Send Copy of an Activity" template, found under Mailings menu > Message Templates, "System Workflow Messages" tab.

If you add a Smarty debug tab, like this: {debug} to the top of the template, you should be able to send yourself a message and see a list of all available variables, which you can add as Smarty tags.  If what you're looking for isn't there (I suspect it's not), you can add it.  The core code is here: CRM/Activity/Form/Activity.php.  You'd be better off using an extension that adds them as part of hook_buildForm though.


How do I Add Contacts to Group from an Activity Report? There is a choice in Activity Reports to Add Contacts to Group, on the  top right - so I created a new Group and chose that Group, but there is not a button to click to complete the add. It's not automatic. I'm on Civi 4.6.3.

click on the Preview Report button and you will get the 'Add contacts to group' action. Just tested it on the demo site running CiviCRM 4.6.4 using Safari and Chrome browsers http://d46.demo.civicrm.org/civicrm/report/instance/3


Create forwarding email address for mailing to members of a group Is it possible to create a custom email address which forwards to all members of the organisation, or all members of a group? Perhaps via Inbound Mail Handling? edit - perhaps Civi or Drupal Rules?

This would enable a non-tech savvy Secretary to email all members (or another group) from their own email client via the custom email address rather than via CiviMail interface, and each email only go to current members of the organisation.

This problem has two parts - getting the email into Civi, and sending it out again to people in a group.  The first part is definitely going to be done with Inbound Email Handling if the person will be using their email client.

For the second part, I like Tim's idea of integrating with Sympa or Mailman, but unless you need the full-blown list management software, it seems like overkill.

Pete's CiviRules answer should be correct; however, just this week I tried doing almost the exact same thing (redirect incoming SMS to a team's email) but I couldn't get the tokens to work.  My client was on a tight budget so rather than troubleshoot I just repurposed an existing extension.  I would try this CiviRules approach first.

Another approach would be Scheduled Reminders (Administer menu » Communications » Scheduled Reminders).  You could set a reminder to trigger on an "Inbound Email" activity, and use the Select Group dropdown to pick the group.  Your token would just be {activity.details} to pick up the message body.  If you do this, you should make sure your cron runs reasonably frequently.  You would also want to increase the frequency of the Process Inbound Email and Send Scheduled Reminders jobs under Administer menu » System Settings » Scheduled Jobs.


How can I create a mailing report with drupal views? I would like to give access mailing report to one of my user that was sent to specific GROUP. from drupal permission I am not able to figure out an option to facilitate that. Therefore drupal views might be a way to go. Has anyone tired to create a drupal views for mailing report?

You can create list of mailing using views but you can't filter the results based on groups it was sent. To achieve this you will need to implement the handler or alter the query to filter result via hook.
Alternate method is to create a Mailing Summary civireport giving access to the specific report from the 'access' tab of the report.
You can create your own drupal permission via hook or custom permission extension and than selecting the permission from the access tab.


How to show the City (Location) of Events in Event Lists using Drupal Views We need to show a list of upcoming events on our website. For this I have installed and integrated the Drupal Views module. The Events List in Views works like a charm except for one thing.
We would also like to display the city of the Location where each Events is being held in the list. Unfortunately I can not find this field when clicking the Add field button in the Views create Display page.
How to go about? Am I missing something?

Many thanks for your kind attention.

The location of an event is stored as a CiviCRM Address field, not as a field on the event. As such, it won't show up if you are filtering fields for CiviCRM Event in the Add fields dialog. Remove the filter, or filter on CiviCRM Address instead, and relevant fields should show up. Here is a screenshot for adding a field in CiviCRM 4.7 on Drupal 7 on one of our sites:

Similarly, any custom event fields you have will appear under the field grouping under CiviCRM Custom.

Note that not every address field is populated when you add an event address, but the city should certainly be one of them.


Is there a price field that can be used to charge a percentage as a service fee in a priceset? In order to add a service fee to prices, one could just add it to the base charge, e.g. if a fee is $20, just charge $20.80 for a 4% fee; but is there a way to add a fee whose value is based on another one? I suspect not, but wanted to check; otherwise it would need to be a custom mod.

Should have looked before leaping - there's an extension named Percentage Price Field. As long as it works, that should work!


Form for billing information How to remove the "Second name" field in the billing form, I can not find the path to reach this form and modify it. Thanks

Unfortunately you cannot control billing block fields through UI. There is no such settings since this fields are mandatory for some(infact many) payment processors. This fields are hard coded at https://github.com/civicrm/civicrm-core/blob/master/CRM/Core/Payment.php#L869

You can use buildform hook to remove the second name field.

  Note: You might get error from some payment processor if second name
  is empty

HTH

Pradeep


How enable eventcart extension in WordPress CiviCRM? after an update of wp civicrm plugin from 5.16.4 to 5.30.1. (WordPress is also up to date).
When I subscribe to an event this fatal error appear :
PHP message: PHP Fatal error:  Uncaught Error: Class 'CRM_Event_Cart_BAO_Conference' not found in civicrm/CRM/Event/BAO/Event.php:1133
File : "civicrm/CRM/Event/BAO/Event.php:1133"
$sessions = CRM_Event_Cart_BAO_Conference::get_participant_sessions($participantId);
Maybe the problem is due to a wrong setting ?
I kept my old civicrm.settings.php as it is after update.
It seems eventcart extension is not installed or activated.
I mean this extension : wp-content/plugins/civicrm/civicrm/ext/eventcart/
Do you know how install/enable it?
Thank you for you help.
Nicolas

As of this writing event cart should be enabled but hidden, and currently still relies on the setting under Administer - CiviEvent - Component Settings to switch on and off features. You can verify if the extension is enabled by running this SQL: select is_active from civicrm_extension where name='eventcart';
If it's not, in civi go to Support - Developer - api explorer v3 and choose Entity=Extension, and Action=Enable, and for the key parameter put eventcart. Then click execute at the bottom. The upgrade should have done that though. There should be a record that it did that in ConfigAndLog.


Webform with multiple of the same membership I'm using webform 4.21 on Drupal 7.67 and CiviCRM 5.19.3 and I need to allow somebody to get a membership for multiple organizations.

By default there is one membership with 2 prices and the field is required
Additional memberships have only 1 price and I want to multiply, from 0 to XX extra memberships with a number field.

How to do I offer the second possibility?

regards,
Guillaume

Webform's page

In order to multiply/calculate Amounts based on webform fields, try webform_calculator module: https://www.drupal.org/project/webform_calculator

We've made some edits to support amounts being calculated over multiple pages - you can find what we're currently using for our projects here: https://github.com/KarinG/webform_calculator

How it works

The module adds a Formula webform component. So you can then configure a CiviCRM Contribution Amount or Membership Fee field to become a field of type Formula and specify the calculation with components.

Here's an example of a Processing Fee (which is a webform civicrm line item):

PS - I'm a bit confused though why you would want to buy multiple Memberships of the same type (in CiviCRM that would just mean multiple terms of one Membership Type) - but if you're looking to do Math the answer I've posted here using our latest webform_calculator module is the way to go.


Cron fatal error 4.7.2 (D6) After upgrading my Drupal 6 site (latest version) to Civi 4.7.2 all cronjobs set up in Cpanel are failing. Scheduled jobs are working fine when triggered in Civi but fail when triggered with the Cron url in the browser.

My cron is

wget -O /dev/null http://mysiteurl/sites/all/modules/civicrm/bin/cron.php?name=xxx\&pass=xxx\&key=xxx

Error is:

Fatal error: Call to undefined method CRM_Utils_System_Drupal6::getUsersTableName() in /home/mysite/public_html/sites/all/modules/civicrm/CRM/Utils/System/Drupal6.php on line 313

A patch has been accepted for this.

https://github.com/civicrm/civicrm-core/commit/76eeb935253f42e836a58e1f9d077caaa498c947


Activities are not showing under Activities tab in contact record I'm not sure exactly when this happened but the activity list has stopped showing up in the Activities tab for all of my contact records. The number of activities seems to be accurate and I can add activities but they simply do not show up.

I ran patched the Activities.php file and unchecked 'Enable CiviMail to create activities on delivery' as per this page. I also emptied the contents of template_c and then emptied the Drupal cache but none of the steps helped.

I'm running Drupal 7 and CiviCRM 4.4.3. Any thoughts on what might be happening?

I suggest you start by upgrading to the latest version of CiviCRM 4.4. That one is quite old and has security issues as well.


Are there any pre-conditions or required settings to print/merge documents in 4.7? Since CiviCRM 4.7 it is possible to print/merge documents not only as a pdf-file but also as an odt, docx or html file.

Does the function to create odt or docx files require any particular setting, installed libraries etc? I did not find any documentation and wanted to ask before I start debugging.

I have a "fresh" CiviCRM 4.7.16 instance and I am able to create pdf and html files but not docx or odt (File not found error).

I had a similar issue on an installation with PHPOffice.

PHPOffice is automatically installed via composer in CiviCRM, but apparently composer fails to check for needed PHP extensions. In my case php-zip was missing, and after installing that everything went fine.

I am not sure if composer should check the requirements, or if they aren't properly configured. Eli's comment helped a lot debugging this for me!


add user to CIVICRM with Wordpress I need to add a new CIVI CRm user, how can I do that please???

I used to do that before but i forgot how to do it now.

I tried Users and Permissions but it didn't work

If you need to synchronise the user from WP to CiviCRM you can do it by

1) Navigate to Administer -> Users and Permissions -> Synchronize Users to Contacts.

2) Click OK on the form that says to synchronise cms users.


Fixed Period Rollover Day I'm having an issue where people signing up for a membership are getting an extra year added on (our fixed rollover date is July 1st).

All membership types are set to renew on Jul 1st (Membership Type Plan = Fixed, Membership Type Duration Unit = 1 year).
I've set the Fixed Period Rollover Day to Jun 30th.

When a member signs up for a membership today, they are being automatically set to expire on June 30, 2019 -- instead of 2018. Doesn't seem to matter what I set the Fixed Period Rollover Day to.

Am I setting something up incorrectly?

I set up same membership on dmaster.demo.civicrm.org and it all worked as expected giving me an End Date of June 30 2018.

The system resets data every 24 hours but it is there currently if you want to take a look.

Membership Type

Membership


How to change case dashboard column We need to remove subject from case dashboard. we don't know where to change whether in report or in drupal. can any one please help on this.

In sites/all/modules/civicrm/templates/CRM/Case/Page/DashboardSelector.tpl remove the line that starts with:

<th data-data="subject"

Also there is a similar line in sites/all/modules/civicrm/templates/CRM/Case/Form/ActivityTab.tpl


PHP warning "Warning: Declaration of CRM_Mailchimp_Permission" logged when open a CiviReport Drupal 7.67
Civi 5.13.4

I get a PHP warning in my Drupal logs every time I open a report in Civi. The complete warning is
Warning: Declaration of CRM_Mailchimp_Permission::check($permissions) should be compatible with CRM_Core_Permission::check($permissions, $contactId = NULL) in require_once() (line 218 of ...modules/civicrm/CRM/Core/ClassLoader.php).

I do not get any php errors with Inspect Console on the report pages.

I looked at the permissions and I have all MailChimp related items checked for my role.

I looked in the CiviCRM View Log and I do not see anything there related to Mailchimp. There is however this log repeatedly. Not sure if it is related.
warning] Deprecated Path: There is a setting (generate_schema_and_data) not correctly defined. You may see unpredictability due to this. CRM_Core_Setting::setItems

Any ideas what might case this?

There is already a fix submitted for this warning but haven't got merged. But i believe the fix should fix the problem. Can you try after applying patch from here?

Cheers

Pradeep


Why is the list of relationships presented when adding an additional role to a case different from those presented when configuring a case? The list of relationships presented for selection when configuring a case type are B to A Relationships. The list available from which to add roles to cases contains A to B relationships. Is this correct? Why don't these lists present the same perspective of the relationship?

There is a JIRA issue CRM-16980 which is listed as fixed in 4.7.


Separate sites for CiviCRM and public site? Is there a best practice as to whether CiviCRM should be installed on its own site, seperate from the public site or as part of the public site?

I think of our internal users doing mailings etc and it doesn’t “feel right” for them to do this on  the CMS for our public-facing site, but at the same time we want to allow self-service contributions and event registrations.

Is there any issue to link across sites (for example link public site to membership form served on CiviCRM)? Or is that just a pain.

I’m afraid to just go ahead and install CiviCRM on our production public site. We use WP fwiw.

Appreciate any advice.

I have a number of clients who use CiviCRM on a subdomain separately from their main content site. It has both pros and cons.

Pros:

1. Security.

The main issue addresssed here is the risk of security lapses on the main site exposing CiviCRM. The reason a separate site can be more secure is that you will typically have more modules and functionality on your main site where ease of use is the primary goal, whereas with CiviCRM, security is a much higher priority. Keeping the CiviCRM site with fewer 'ease of use' tools and generally fewer functions will almost always make it more secure, at least in principle.

Analogously - you can also provide hassle-free administrative access to designers and content editors without risk of inadvertently exposing CiviCRM.

2. Performance.

The primary use case of your main site will typically be anonymous access by visitors, whereas most of your access to CiviCRM will be authenticated. The kind of server setup for those two types of access are frequently at odds, so having them on separate servers can make for better use of machine resources. e.g. you can put your main site on a relatively inexpensive hosting service with heavy caching for anonymous visitors.

Cons:

1. Expertise

Keeping internal resources to understand how multiple systems works can be a hassle and/or expensive. This is really the key driver of the decision - if you already have reasons to keep your CMS where it is, or to move it to a different CMS than your CiviCRM is on, then a split install is often a good choice.

2. Maintenance

The main other cost of the separate installs is maintenance - keeping up two sites instead of one, and updating design elements to keep the visual link between them convincing.

3. Server costs.

Usually, two sites is going to cost more than one, but see note 2. above. Specifically - by having the lower-security functionality all together, you can use your budget more effectively, e.g. you can have a managed CiviCRM install and use more off-the-shelf (read cheap/do-it-yourself) tools for your CMS.

I would also note that you don't need fancy machine-level integration as suggested by ErikH - you just need links back and forth, and an internal clarity that the two pieces are only loosely joined.

For clients who are migrating from other solutions (e.g. separate online processsor services, mailing lists and event services), putting all these together on one CiviCRM site that they manage is already a huge step forward in integrating those pieces, and having that functionality relatively loosely linked to the content site is not usually a show stopper, and in some cases a desirable state.

Examples

Here are few sites that are hosting CiviCRM on a separate subsite:

https://www.awid.org/
https://www.wildernesscommittee.org/
http://www.fairvote.ca/
http://www.patientscanada.ca/
http://everdale.org/
https://wildsight.ca/
https://www.bcndp.ca/
https://www.kairoscanada.org/


"You are already subscribed to our newsletter" message When someone who is already subscribed to our newsletter (i.e. they are a member of the relevant group) tries to subscribe to the newsletter again (for whatever reason, maybe the newsletters go to their Spam), nothing is happening that indicates that the person is already subscribed.

How can we make it so that in such a situation a message such as "You are already subscribed" would appear or, even better, the person gets redirected to a specified page?

CiviCRM does not have this feature built-in. You would need to write a custom extension to achieve this, probably using hook_civicrm_postProcess.


Custom contact reference field with "New Organization" I would like to create a custom contact reference field (for CiviGrants) that also has the ability to add a new contact on the fly. It should be like the default Contact field used in (for example) Contributions or Grants. Any help would be appreciated... Thanks.

This feature request would, IMO, be a good match for the paid issue queue. Giving custom contact reference fields the option to have "create new" functionality would be a nice addition to CiviCRM.


How do I stop the new "Security Notifications" that civi pops up for upgrades As we keep an eye on these upgrade for clients, the last thing we need is for them to worry about it while we check out their customisations for compatability etc.

How to get rid of them?

Disabling security notifications hides the notice from your users, but it won't hide your sites from attackers. Turning off the warning supports a scenario where those sites are at risk longer.

Here's how we handle it for our hosting clients -

Create a recurring item in your calendar for the CiviCRM security release dates, first and third Wednesday each month. (We do the same for Drupal security releases.)
Be subscribed to the CiviCRM Security Advisories announce list.
If a release occurs on that date, run the upgrade through your testing, then deploy/apply to production.

Since CiviCRM stores personal data, I believe every organisation using CiviCRM has a responsibility to ensure there are processes in place to ensure security updates are applied promptly as part of a wider programme to protect your customers and their contacts.


Can CiviMail send multiple mailing jobs concurrently? The CiviMail documentation and settings pages indicate that it is possible to have multiple mailer delivery jobs executing simultaneously.

See Settings - CiviMail (/civicrm/admin/mail?reset=1) :

Mailer Job Size: If you want to utilize multi-threading enter the size you want your sub jobs to be split into. Recommended values are between 1,000 and 10,000. Use a lower value if your server has multiple cron jobs running simultaneously, but do not use values smaller than 1,000. Enter "0" to disable multi-threading and process mail as one single job - batch limits still apply.
Mailer CRON job limit: The maximum number of mailer delivery jobs executing simultaneously (0 = allow as many processes to execute as started by cron)

I have not been able to get this to work in practice in CiviCRM 4.4.14 . I have tried various settings, e.g.

batch limit = 2500
throttle time = 5
job size = 2500
cron job limit = 2
civimail_server_wide_lock = off

Civi cron is running every minute. Mailings scheduler is the only scheduled job that runs on every cron run (others are hourly or daily). The mailing is correctly split into sub-jobs of 2500 mails, however these get processed consecutively. Each batch takes about 6 minutes to run. Every time a new instance of the scheduled job tries to start while an existing instance is running, we get an error like this:

Finished execution of Mailings scheduler with result:
Failure, Error message: lock aquisition for mydb.1.civimail.job.12415
attempted when mydb.1.civimail.job.12414is not released

Hence only one instance runs at a time.

The error message above is generated by CRM_Core_Lock::hackyHandleBrokenCode(), which was added for CRM-12856 and is called from CRM_Core_Lock::__construct(). It prevents multiple locks being created with names containing "civimail.job.". If this is attempted, hackyHandleBrokenCode() throws an exception and so the scheduled job exits. This appears to be what is preventing multiple mailer delivery jobs executing simultaneously.

Looking at CRM_Mailing_BAO_Mailing::processQueue(), the code for $config->mailerJobsMax > 1 seems to work on the assumption that a CRM_Core_Lock can be created independently for each of the mailerJobsMax cron jobs. But since CRM-12856, this is disallowed. I believe this may not have worked correctly in any case, given that each MySQL connection can only acquire one lock: acquiring a second, even if it has a different name, releases the first: https://dev.mysql.com/doc/refman/5.5/en/miscellaneous-functions.html#function_get-lock.

However some users have reported this feature to be working correctly - can anyone confirm that mail jobs are indeed sending in parallel in their post-CRM-12856 Civi?

Just to follow up on this, this was a bug that will be fixed for the 4.6.4 release. More details can be found at issues.civicrm.org/jira/browse/CRM-16387


Incorrect Month To Date in member dashboard Member Dashboard shows following headings

October – (Last Month)  March (MTD) 2018 (YTD)

Obviously the month to date heading should be "November" rather than "March".

Where is civicrm getting its current month from?

It's a bug. I've logged an issue here along with a fix See https://lab.civicrm.org/dev/core/issues/511


preserving Member IDs on first import? I have a list of members that I'm importing from our old system. Since they have unique numeric member numbers, I'd like to preserve the original member number and not muddy the waters by making that an 'External ID'.

Using import memberships, the insert option doesn't allow me to assign member IDs. the update option fails because the member IDs don't exist.

Thoughts on how to preserve the original membership IDs? Or am I out of luck?

Keith

We created a custom field to import it in so we had them on file, then as members renewed we switched over to using their contact ID's as member numbers and put a notice in their renewal emails that they would notice changes.


Thank-you letters WYSIWYG vs html source content Drupal 7.72
Civi 5.24.5
I recently added an IF statement to our receipts and Thank-You letters to comply with Florida Charity Regulations. The state of FL requires us to have a statement on our receipts for donors from FL. So I did a IF 'FL' then... It works with the System Workflow Templates for online and offline receipts. However, for checks we send a Thank-You Letter as a receipt. That kinda works. The difference I see is, the Thank-You letter has a WYSIWYG with it but the System Workflow Template online/offline does not. The WYSIWYG shows {if $stateProv eq 'FL'} but the html source has {if $stateProv eq & #39;FL& #39;} (I added spaces so it displays without converting to ')  If I change the html source to {if $stateProv eq 'FL'} it works but even though we check "Update Template" it still needs to have this changed every time we use the Thank-You letter template.

How do I fix the Thank-You letter?
Where do I find the WYSIWYG settings in CiviCRM? I tried to find where to disable that or even find what WYSIWYG we are using so I could Google a fix to make '' stick.

You can turn off html encoding for CKeditor through UI
Navigate to Administer >> Customize Data and Screens >> Display preferences
Scroll down until you see Configure CkEditor button. Click on it to view all the settings. Under Advance options add entities option as False(as shown in image) and save the form.

Note: You will need to clear your browser cache to reflect the changes(and CiviCRM caches).
If you want to turn off the ck-editor completely for whole site than you can switch to text area. You need to navigate it to CiviCRM >> Administer >> Customize Data and Screens >> Display preferences. Change value for Wysiwig Editor from ckeditor to text area.
HTH
Pradeep


Do I need to sanitize quickform inputs in a extension? Hopefully this is a quick one. I'm creating a form in an extension. Regular QuickForm - nothing special. Do I need to sanitize the inputs before processing them? Or does Civi/QuickForm handle that?

How are you saving the data? If you are using the api, then no there is no need to sanitize it, the api already guards against sql injection.


Feature request: Make search more forgiving and spaces after comma and non-primary emails Two longstanding inconvenient issues about the search:

it does not locate non-primary emails (see attached)
if you fail to place a space between the lastname, firstname it will not return any results

The feedback I get from users (particularly new ones) is that this is quite flummoxing, while experienced users tend to overlook this as "the way it has been" and not see it as a problem.

Answer to first question: There is an extension that allows one to seaech for any telephone or email by location: https://github.com/JMAConsulting/biz.jmaconsulting.search.anyteloremail

My guess is that it should still work even though it is only marked as working for 4.5 and 4.4. Please open an issue in github repo if there is a problem and we will update it. To have this search ability added to core searches, I'd recommend getting agreement after opening a gitlab issue.


Changing CiviCRM Site Key in the civicrm.settings.php file We have developed a white label Drupal and CiviCRM installation which we plan to use to launch a new server. When changing over I usually change the settings files to match the new database settings. However, I have noticed that the CiviCRM Site key also need to be changed. How can I go about doing this or is this not possible? THanks.

Changing the site key will break a few things. How many of these are important is up to you, but at least:
- every rest interface that connects to the site to read or write (you might not have any)
- any hash (eg. link to update preferences). this might not be an issue if the domain name changes too
- anything that is saved encrypted (eg. the password for the smtp connection).

search the code base for CIVICRM_SITE_KEY to have a complete list.

This being said, the easiest is probably simply to change and wait for a while to see if it breaks any of the features YOU use.

The value of the key itself doesn't matter, as long as it's hard to guess and long enough. The setup process generates it that way:

md5(uniqid('', TRUE) . $params['baseURL'])

so a random hash of 32 characters


Tutorial for creating pages with ajax For our CiviCRM instance, I use to create forms that allow the user to execute some specific tasks. Typically they end up on a form, they enter some values, and the postProcess function executes some API calls based on what the user entered in the form.

Now I read in the wiki that the use of forms is discouraged, and that I should use a web page and use Ajax. But I have little experience using javascript in my forms, so I wonder whether there exists some kind of tutorial that shows the best practices for doing this. Or is there a particular existing page in CiviCRM (or an extension) that I can look at? Or maybe someone gave a talk at some Civicon that has been recorded?

Any input is greatly appreciated.

As far as I know - If you dont need any specific action to be done on the form which you have created before you hit the submit button then you should be alright

For example:
If you enter a Postcode on the form and you need to populate address line of the postcode before submission then you need to write AJAX to fetch the records from Database

Links for civicrm Ajax: references

https://forum.civicrm.org/index.php?topic=28148.0

https://wiki.civicrm.org/confluence/display/CRMDOC/Ajax+Pages+and+Forms

Also you can find a good example of Ajax used in the below extension

https://civicrm.org/extensions/civicrm-postcode-lookup

I guess this helps !!!


Adding Facebook tracking pixel to contribution confirmation pages We're on Drupal 7.69 and CiviCRM 5.13.x.

One of our clients want to add facebook tracking pixel codes to the membership confirmation page after payment.

We are using the Facebook Tracking Pixel Drupal module (https://www.drupal.org/project/facebook_tracking_pixel) to add the base tracking for the website and for webform confirmation pages. Would someone be able to help inform me on using the same module for CiviCRM confirmation pages?

Thanks

You can add the code using one of the below method

Use buildform hook to add JS code using region method.
Add pixel code in CRM/Contribute/For/Contribution/ThankYou.extra.tpl in your custom template directory.

Note: Won't be difficult to make it generalized for each contribution page and also have it extended to event registration.


eWay Recurring - Which extension is the best? One of our clients would like to use eWay for recurring payments in CiviCRM. We have installed and are our testing the eWay recurring extension by ChrisChinchilla. However, while researching other options we also came across the eWay recurring by Agileware and Omnipay extension. It seems the Agileware and Omnipay extensions are receiving more support and updates as the last update for the eWay recurring extension was 2016. Does anyone have any recommendations which is the best option to use for autorenewals for memberships and if any are better for PCI compliance?

I think the agileware version is now updated to use for eWAY Rapid API with the Responsive Shared Page method. This method does not ask for any CC details on civicrm and navigates user to eway site for the payment.

We did hit some problems using it on drupal webform, but I think it is already handled https://github.com/agileware/au.com.agileware.ewayrecurring/issues/4


Event Registration - Duplicate Matching Impossible Our organizzation is running CiviCRM 4.6.8. We are setting up an event and participants can register online. while configuring the on-line registration page, we get the error:

  Duplicate Matching Impossible The selected profiles do not contain the
  fields necessary to match registrations with existing contacts. This
  means all anonymous registrations will result in a new contact.

We have specified a custom profile to register participants. The profile includes as mandatory field, the ID number of the person as per their South African Identity document or passport. This field will allow us to uniquely identify each participant.

We have also created a custom dedupe rule  (unsupervised) as follows:
Field -> ID Number
Length -> left this blank
Weight -> 30
Weight Threshold to Consider Contacts 'Matching': 30

Why do we get this error and how can we resolve it?
We need to ensure that a participant can register only once for this event, as it is a competition.

It seems your event registration profile form has no email field or last name field for duplicates checking, refer to this related post How to register for event without an email address?

Also refer to the following link for for more information on civi deduping:
http://book.civicrm.org/user/common-workflows/deduping-and-merging/


Insert svg file into mosaico mailing When I try uploading a svg file into a mosaico mailing, I get a message that this file type is not allowed.
Is there a way to change settings, that allows inserting svg files, and maybe other file types?

"Safe File Extensions" can be configured under "/civicrm/admin/options/safe_file_extension?reset=1" - you could probably add .svg there.
This should allow you to upload sch files in CiviCRM. I am however not sure if that configuration also applies to Mosaico and if Mosaico can handle svg-Images.


Getting error when using civix generate:module or civix generate:entity curly braces no longer supported in phar Getting this error when using civix to generate a module or an entity:
Fatal error: Array and string offset access syntax with curly braces is no longer supported in phar:///usr/local/bin/civix/vendor/civicrm/cv/src/BuildkitReader.php on line 38

Can anyone explain what could be causing this and what I could do?

UPDATE 2: The PR was merged so now the latest civix phar download supports php 7.4 (insert emoji yay! here)

UPDATE: PR submitted to update civix to update its version of cv: https://github.com/totten/civix/pull/200

Are you on php 7.4? You have an old version of cv within your civix phar. I'd download a new copy of civix.
i.e. https://github.com/civicrm/cv/commit/018c667429653ca06bc1dff6a93fdec87d9171bc


Recurring iATS contributions not creating civicrm_finanical_item records We are ramping up for online donations and use the Accounting Batches CSV export to get our Civi contribution data into our 3rd party accounting software.  A key piece of data from that report is the 'Credit Account' column since that tells our accounting software which fund the donation should go to.

We've recently started testing Recurring Contributions.  The contributions themselves are being processed correctly via iATS (we've done credit cards only thus far).  However, we did our first accounting batch export with recurring contributions yesterday, and the Credit Account column is blank for all subsequent recurring contributions.  The one-time donations and the initial recurring contribution for a contact show the Credit Account correctly.

After looking through the database to see where the disconnect might be, it appears that recurring contributions are not creating records in the civicrm_financial_item table.  I can track/match a completed recurring contribution through the civicrm_contribution, civicrm_entity_financial_trxn, civicrm_financial_trxn, and civicrm_line_item tables.  The civicrm_entity_financial_trxn table has the recurring transaction records with civicrm_contribution in the entity_table column, but that table does not have a corresponding record for the transaction with civicrm_financial_item in the entity_table column.

I found iATS Github Issue 134, but that was specifically asking about Civi 4.7, so I don't know if the same issue would apply (I'm going to cross post there as well).  I also don't know if I might have setup things incorrectly in the backend for accounting, so that's a possibility as well (and I'm not sure what to look for there).

According to CiviAccounts Data Flow:

  IPN payment processors processing a contribution do NOT create
  civicrm_financial_item, civicrm_financial_trxn, or
  civicrm_entity_financial_trxn records at the time the transaction is
  posted to the payment processor. They are only created at the time of
  the IPN call back.

Since iATS doesn't use IPN, I didn't know if that might be the reason for the lack of records in the civicrm_financial_item table.  The other tables in the above quote have records for subsequent recurring contributions, so I'm not sure if this applies to iATS.

For the sake of our Accounting Export, I don't see a way in the database to get the Credit Account for a contribution (civicrm_financial_account.accounting_code) for a recurring contribution without a record in the civicrm_financial_item table.

Does anyone knows how to either a) correct the recurring contributions not ending up in civicrm_financial_item table or b) how to query the database to get the Credit Account without the financial item record?  I'd sure appreciate the help!

Civi 4.6.14 (will be updating to 4.6.20 before go-live); Drupal 7.44; iATS Payments extension 1.5.3

Unfortunately, the issue here is that the api for this stuff is/was a bit sketchy (Eileen's been gradually migrating and cleaning up the old IPN callback code into a better place). We've been hoping that the most recent versions of 4.7 will work and have optimistically included the code here:
https://github.com/iATSPayments/com.iatspayments.civicrm/commit/3d7db087a45024d613e2475b94e6467aa7ab873a

You're welcome to try a modification of that patch and see if your version of 4.6 creates the accounting records you want.

Failing this - I do have a lot of iATS clients that care about bookkeeping, so it's possible what you need is available, but it's beyond my understanding.


How to Map Contacts? When you open a Group and select Group members, you can run a "Map Contacts" Action (which, I suppose, would locate those members on a map).

But when I try, I get a message which tells me that the Contact Address does not contain Latitude/Longitude of the Contact.

I have tried to activate the "Geocode and Parse Address" CRON Job, but I get errors (last one : "A fatal error was triggered: Aborting batch geocoding. Hit the over query limit on geocoder.")

I did not find any detailed documentation about that.

Any help is welcome

I finally succeeded :

Administer > Settings > Addresses > Address Editing with Latitude, Longitude, and Street Address Parsing enabled
geocoding=1 and parse=0 in the Geocoding Parameters of the CRON job


ACL for Contribution Page? I'm using Drupal 7.43, and civicrm 4.7.4.  Is it possible to limit access to a contribution page through Civicrm ACL's or Drupal roles?  I want to set up a contribution page for new members to pay an initiation fee, but I don't want members to see it once they pay.

I can set up a drupal block, and have the link to the contribution page in the block, and assign the block to a role of new members who haven't paid the fee yet, and have the block disappear once they do, but they can still go to the url and access the contribution page.

If your payment processor works with webforms possibly you could do it that way.
At least for our configuation we have much better control over the visibility of drupal content rather than civicrm forms.


Sign up with a different membership type overwrites existing membership I am working with an organisation that has several different types of membership.  Members sometimes move from one membership type to another, but it is important that we keep track of which membership they had when.

Unfortunately, when a member signs up for a different type of membership using the online payment form CiviCRM overwrites the old membership so that it looks like it becomes the new membership type.  We would like to keep the original membership record as it is and add a new membership for the new membership type.

Staff can do this in the backend by creating a new membership, but we want to be able to do this using the online sign up form.

We are using CiviCRM 4.6 on WordPress.

To illustrate my point, this is an example of what we would like:

Existing membership before sign up

Membership 1

Type = Silver
Status = Current
Join Date = 1 April 2010
Start Date = 1 June 2014
End Date = 31 May 2019

After sign up

Membership 1

Type = Silver
Status = Current
Join Date = 1 April 2010
Start Date = 1 June 2014
End Date = 31 May 2019

Membership 2

Membership type = Gold
Status = New
Join Date = 8 November 2018
Start Date = 8 November 2018
End Date = 7 November 2019

What we actually end up with after sign up is:

Membership 1

Type = Gold
Status = Current
Join Date = 1 April 2010
Start Date = 1 June 2014
End Date = 31 May 2020

i.e. the membership has been converted to 'Gold' and given an extra term

On the contact record's Activities Tab, there is an Activity of the Type: "Change Membership Type". Could you use that to determine the past/present Membership types?

Also, if you set up different Membership Types with a different 'Membership Organization' selected, I believe the record can have simultaneous memberships. I do not recall if this creates additional problems down the line, however.


Why is format returned for multi-select custom field API different for Contact vs. Relationship? I have contacts with an Alphanumeric/CheckBox custom field on, and I have relationships with an Alphanumeric/CheckBox custom field on. (The former is legacy and is copied into the latter.) These seem to be returned differently when using the getsingle API call. Why is this?

For example:

$ drush -u <uid> cvapi Contact.getsingle id=<cid> contact_type=Individual contact_sub_type=Student return=custom_42
Array
(
    ...
    [custom_42] => Array
        (
            [0] => Fundraise_Donate_for_specific_school_needs
            [1] => Apply_to_become_a_Governor
            [2] => Be on a poster displayed in your old school/college
        )
    ...
)

but:

$ drush -u <uid> cvapi Relationship.getsingle id=<rid> relationship_type_id=21 return=custom_112
Array
(
    ...
    [custom_112] => Array
        (
            [Fundraise_Donate_for_specific_school_needs] => 1
            [Apply_to_become_a_Governor] => 1
            [Be on a poster displayed in your old school/college] => 1
        )
    ...
)

CustomValue.get, however, returns the same format for the Contact and the Relationship field, and that format is more like the Contact one above.

If the custom fields are of the same type, i think you should log an "Improvement" issue in JIRA for this. It's not really a bug but i think Api should be consistent.


Sync custom first and last name fields in Drupal with CiviCRM We have an online training platform and had created custom first and last name fields to be used on their training certificates. Drupal asks for this information when they register for an account. However, this first and last name is not passed on to CiviCRM until they fill it out again during the subscription process.

How can I synchronize the first and last name fields in CiviCRM with the custom first and last name fields I created in Drupal? Thanks!

CiviCRM 4.7.15, Drupal 7

My answer is an alternative that was used in order to accomplish what was needed. Rather than sync Drupal fields with CiviCRM fields, I activated the ability for CiviCRM fields to be used in Drupal views, as well as created custom profiles in CiviCRM to render the fields during the Drupal registration process. Please go ahead an add an answer if it answers the original question.

Go to http://yourdomain.com/civicrm/admin/setting/uf?reset=1, replacing "yourdomain.com" with your actual domain. Copy all the code shown.
Edit your settings.php file and insert the code after the databases array, so it will look something like this:

$databases = array (
  'default' =>
  array (
    'default' =>
    array (
      'database' => 'drupal',
      'username' => 'user',
      'password' => 'password',
      'host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
);

/* Beginning of pasted code from CiviCRM */
Clear site caches and civicrm caches and you should be able to render CiviCRM fields in your Drupal views.

Source: https://docs.civicrm.org/sysadmin/en/latest/integration/drupal/views/ (Updated, thanks Aiden)


AGPL: Should sites provide public download links for CiviCRM extensions? I guess this question has a few parts:

Are CiviCRM extensions are considered to be modifications of CiviCRM?
Are custom file overrides considered to be modifications of CiviCRM?
If so, then under CiviCRM's AGPL license, are sites running extensions and custom file overrides required to make those modifications available for download to people who use the site?

For example, if custom code (file override or extension) modifies functionality of a public-facing event registration page, does that page need to contain links to download the modified code?

I'm certainly not a lawyer, but I've always assumed the answer to all three questions is "Yes".

That said, I haven't made a comprehensive effort to do so - though my current policy is to post all extensions on Github (and I only use overrides within an extension framework).  I wouldn't want to make my clients post a link, but in theory my Github page would be a single point of download.

To date I don't believe the AGPL has been tested in court though - so I'd expect lawyers to make the argument, perhaps successfully, that the AGPL isn't (always) binding.  Given that many nations' jurisdictions have upheld similar arguments against the GPL, that argument would have an uphill climb.

My take is that the main beneficiaries of the AGPL are the organizations who use CiviCRM vis-a-vis developers they hire.  It's a very powerful tool against vendor lock-in!


Where do I adjust the auto logout duration for administrators? This is my first time asking a question about CiviCRM and am not sure if I am even in the right place.

User access is done by CMS so it isn't really a Civi question. If you are on WP, you can use this https://wordpress.org/plugins/inactive-logout/. If other CMS, post on their forum.


wordpress edit multi-record profile fine when logged in but not retaining checksum for anonymous user civicrm 4.7.24 wordpress 4.9.5
When logged in I can access, edit and add to a multirecord profile
eg

When not logged in, using identical link (domain.org/civicrm/?page=CiviCRM&q=civicrm/profile/edit&gid=20&reset=1&id=NNNN&cs=c1ae6c62c8b56de0b98cc786cb7e96dc_1523257945_720)
the profile is displayed for the correct user (so the checksum is respected at this point) however the [view][edit][delete] buttons appear as 2 4 8
and (add new record) gives permission error
eg

The only way I can get it to work is by enabling "edit all contacts" for anonymous users. No thanks!
Please note that it works fine when logged in as admin so please no suggestions relating to the format of the link or multrecord profiles
I am unable to test on demo site as mail is disabled so I can't generate checksum

I was having a bugger of a time troubleshooting a similar problem with the checksum capability for anonymous users.  After trying and identifying many different potential causes such as:

cid versus id for the contact
the order of the checksum or contactid tokens
ACL permissions
whether SSL or non-SSL made a difference
update to CiviCRM 5.0 (currently on CiviCRM 4.7.30 with WP 4.9.5)

What fixed it was having %2F instead of the '/' in the query parameters of the URL.  I needed to explicitly put the '%2F' (without the single quotes) in the URL instead of the '/'.  For instance, in your example above the URL section:

  &q=civicrm/profile/edit

should be changed to

  &q=civicrm%2Fprofile%2Fedit

NOW my mailings work with checksums!  Wahoo!  Hope this helps someone else on WordPress.


Remove User Login from Event registration I am creating an event for my organization and its showing the enter a username
 as require. I want to remove this as this is a public event and it complecate things for people. I went and found where to go to allow anonymous user to register and did the anonymous role change on the dupral access but still Im getting the username thing.

You will need to turn off the setting for profile that you have used in Event registration.

HTH

Pradeep


DB Syntax Error: CiviMail Drupal 7.69, Civi 5.23.0

A colleague just had an issue with CiviMail. She was trying to send a mail to Group "Volunteers" but exclude people in Group "Garden Volunteers". Instead of saying the number of recipients, it just froze on "Estimating..."

It still says estimating even if saving the draft and exiting.

When we try to submit the mailing, it gives a DB Syntax error.

I checked the Drupal error log and saw two relevant errors.

Pastebin link 1 | Link 2

I ended up fixing this by just creating a new mailing with the same settings and it worked fine, but would love to work out why the initial issue happened so I Can fix it pre-emptively in case it happens again in the future.

Flushing cache did not solve it.

Cheers!

--

EDIT It's happened again, looks like it's just an issue with one particular smart group. We've definitely mailed to this smart group in the past though.

Someone previously asked what I see when clicking on the spanner icon:

The DB error looks to be caused by this clause: (civicrm_email.location_type_id != )

I don't know why that is occurring but check anything related to location types.  Are you using flexmailer/Mosaico?  Do you have any extensions installed that relate to mailing or email address locations?


Finding contacts in Group A AND Group B? It seems like there must be a way to search for (and hopefully perform group operations on)contacts that are in both Group A AND Group B but I can't find it.  Suggestions?

You can use Search Builder (Search > Search Builder) to search for contacts in a group A and add another search field for contacts in Group B. See screenshot from demo.


Deprecated function CRM_Core_Config::defaultContactCountry error In the ConfigandLog directory, this error is produced every minute:

[warning] Deprecated function CRM_Core_Config::defaultContactCountry, use CRM_Core_BAO_Country::defaultContactCountry.
Array
(
    [civi.tag] => deprecated
)

What configuration do I have wrong that is making this occur?

On Civi 5.24.4 / Wordpress 5.4.1. Multisite.

Looks like cividesk.normalize based on the pastebin.

Actually looks like it's already patched in master: https://github.com/cividesk/com.cividesk.normalize/commit/221562b8bf4fb56fe677eaaf9122d3af5c3cce74


I want someone BCCd to an email genearted by a System Workflow Message I want to add a CC or BCC email to an email generated by System Workflow Messages. For example, when the "Memberships - Signup and Renewal Receipts" message gets emailed to a donator, I want another person BCCd on that email. Where do I go to configure how, who, and when those System Workflow Messages get sent?

On a Contribution Page on the Receipt tab, you can add CC and BCC


Is it possible to create a progress bar/widget for a contribution page? Prior to CiviCRM, I used to use the give donation plugin which made a cool little progress bar for our fundraising campaign pages.  Looking to create something similar with CiviCRM, I came across the CiviWCI extension, but it only supports CiviCRM 4.4 and has not been updated in some time.

Is there a built in functionality or an alternative extension that I could use?

Many thanks!

We published a small extension that makes it easy to display the progress bar directly on the same contribution page: contributeprogress.

The README.md has more details, but the short version is that once this extension is enabled, you can enable the widget and tweak a few colours. The widget will be displayed directly on the contribution page. Not all of the widget settings are relevant (for example, we do not display the widget title and text body, because it's often redundant with the page introduction text).

The default design is also a bit different that the widget preview, because we wanted something a bit more modern looking (and we wanted to propose something that works out of the box, without requiring a designer).

Credits: Roshani Kothari helped with the visual design picking some of the best elements of how progress bars are displayed on different websites, and Plastic Pollution Coalition helped to fund this work. We welcome feedback to refine and improve it further.


How do I setup an online contribution page linked to Mogiv? We are using Mogiv for our online giving portal.  How can I link my online giving transactions from Mogiv to my contacts in CiviCRM?

You can export from Mogiv and import them in to civicrm using an External Identifier to match the contacts, or match on eg First + Last + Email by choosing the right 'matching rule' when you do the import.


Multisite warning Undefined variable After the update 5.6.1, for a user role with non-admin permission, I noticed a warning concerning Multisite that indicate an Undefined variable :

Notice: Undefined variable: type in multisite_civicrm_selectWhereClause() (line 229 of /var/data/sites/reveal/public_html/sites/default/files/civicrm/ext/org.civicrm.multisite/multisite.php).

This might be linked : any request for let's say the list of contact in a group gives a 500 Internal Server Error. The Recent log messages always indicate the Undefined variable Notice.

As a non admin and to fully benefit of the Multisite setting, the permission for this role doesn't include view and edit all contacts.
How can I dig in this ?

==> I found the trouble : that was in the role setting : Multisite: view/edit/list all contacts in domain was not selected for this role… I my case, all the site share same user and roles along the sites. But the actual setting needs to be defined in each site. Therefore the warning was indeed accurate and indicating a wrong setting for the role.


DKIM - configuration question - HOW? I'm trying to setup DKIM. Where does the private key get input?  I've searched docs, and not finding anything.  Using my hosting companies mail().

All good on SPF setup, creating keys, setting in DNS, but... can't find where to put the DKIM private key.

Thanks in advance!

Clark Hodge -
Chase the Music

You probably have to ask your hosting provider to do this.

CiviCRM doesn't have an interface to provide DKIM keys; OpenDKIM runs as a separate process alongside the MTA on your hosting environment.

Your key will most likely end up in /etc/opendkim, but that really depends on your hosting environment. DigitalOcean have a pretty straightforward DKIM HOWTO for Debian, if you have control of your server.


Where is the exact path to the ConfigAndLog log *file*? In the latest awesome pattern we can now locate our log service easily:

Civi::log()->info('Hello, log!');

And then we can tail the log which is in our ConfigAndLog directory. Chris has enumerated the other log files around and Jon has described where to find the directory in different CMS's but I need to have a one liner to point me directly at the current log file.

For me, right this second, it is:

/opt/buildkit/build/dmaster/sites/default/files/civicrm/ConfigAndLog/CiviCRM.e6449e3815b7721f267195e2.log

How do I find this next time without having to go hunting around? Ideally I'm after a cv based one-liner.

Found it!

The log file is named by CRM_Exception::generateLogFileName($prefix);  in civicrm/CRM/Core/Error.php.


Using  tag for pdf printing I have made a html-template in CiviCRM consisting only of this kind of html tag:
<div style="position: absolute;">

This works perfect for selecting a template for pdf printing, when printing only one page. Then I have the opportunity to place certain elements at the appropriate place on my letter.

The problem arises, when selecting a bunch of contacts, and then creating pdf-s to all of them at the same time. Then it only prints all on one single pdf-page, instead of one page pr. contact. I want the CiviCRM-template to print the <div> tag on one page pr. contact.

Is there a trick here I don't know? And if so, please explain...

(My site is using wkhtmltopdf to generate the pdf-s)

I figured it out on my own.
To print
 on different pages, it needs to be positioned relative.

So, I ended up putting all the existing
 with position absolute into a
 with position relative.

However, that is not sufficient enough, I also needed to fill in a simple
 tag as well.

This worked:


How do you handle searching and reports on contributions with line items from Webform CiviCRM Webform CiviCRM for Drupal 7 allows one to set multiple line items with different financial types for one contribution. In this case, a charitable donation and a non-charitable event ticket.
If I set the charitable donation as the primary contribution and the event ticket as the additional line item, this works fine to set the tax receipt correctly for only the amount of the charitable donation (if the non-charitable event ticket is primary, you can't send a tax receipt).
What I don't understand is how to handle contribution searches or reports in this case. If I want to know how much we received in donations last year, I would normally use a search or a report. However, I believe these would both now be incorrect as they would show a $X+Y donation, when I actually have a $X donation and a $Y event ticket. Does this mean I can only use line item reports and can't use regular contribution reports or contribution searches if I have contributions generated in this way?
Is there a way to create two separate contributions instead?

Have a look at the Extended Report extension
It offers new reports like Extended Report - Price Set Line Items


Organisation membership with Drupal user account I am running Drupal 7 with Civi, both on the latest version. I would like a user to be able to register to become a member on behalf of an, which creates an account for a user in Drupal core, who can then edit the organisation details.

I've setup the process so far using CiviCRM Profiles and Webforms. Here is my current setup:

User applies for an account using profiles and Drupal core using logintoboggan to control this part.
User account is accepted, and an email is set to a webform link

webform: Number of Contacts: 2

1: Organisation

2: Individual (here I have linked the Individuals Current Employer to the Organisation and added them to a group – which is used in a rule to active the user in Drupal’s core, so the user can login after completing registration)

Users are then prompted to pay . This workflow works, mostly anyway.

A couple of questions:

1: Is using the method of adding the Individual to a group which activates the Drupal core user the best method? I feel that this is messy, especially when the organisations membership is due for renewal and if the organisation doesn’t renew how is the individual account deactivated? Is there a better way?

2: How do I allow the user to edit the organisations details?

I have many other thoughts/questions. But this enough… for now :)

Thanks for your help!

SJ

One comment is that it would be more common to have Contact 1 set as the Individual (current user) and Contact 2 as the Organisation.

In terms of if an Org does not renew - if you have the Individual 'inheriting' the membership, and hence getting added to a Drupal Role via MemberSync then when the Org fails to renew then the Individual will lose any Roles other than Sync.

An alternative would be to use Drupal Rules based on Membership Status and hence Block the user if their membership Expires but that seems unnecessary imo if you give the Authenticate role no extra permissions.

The Individual needs to be given 'permission' over the Organisation via the Relationship, this will allow the Individual to edit some details via their CiviCRM Dashboard, though I would suggest you give them a Drupal Views block linked to a Webform and let them edit the Org details that way.

HTH


Is there a way to send an email about security updates? In Drupal there is an option to have an email sent periodically when there are updates (in general, or only security updates) available:

I know CiviCRM already checks for updates and obviously has some pretty complex email functionality.

Have they been tied together in a similar way -- for example, to allow an email address or group to receive an email if a security release is ready?

There is a security notification civicrm group that you can subscribe to on civicrm.org

https://civicrm.org/advisory/subscribe

Security updates and notifications have not been tied as yet. Definitely this would be a good addition to the project


System Slow - Event Registration with Payment On events which require payment, the system takes up to 2 minutes to generate the second page of the registration process, which is the page titled "Confirm Your Registration Information".

What is the problem, and what can I do to bring the performance up to acceptable levels?

The site runs quickly on every other page, including other CiviCRM tasks. It is only this process which is slow.

If I'm looking at the right site, it looks like the second page of your event registration has a consistent 60 second delay added on top of the usual page generation times, and that the delay is introduced before the user is asked for payment.

Unless your payment processor requires communication before the transaction, this suggests that the issue is within CiviCRM or your hosting environment.

An additional 60 or 120 second delay is often a timeout, for example when a webserver attempts to get reverse DNS during the request and fails. However there's no way to be sure without looking under the hood, so I'll provide general advice on how to proceed also :)

Use tools like http://www.webpagetest.org or http://fpt.pingdom.com to ensure your site performs well generally - enter the URL of your registration pages and make sure the entire page is delivered to the visitor within a few seconds.
Ensure your hosting environment is capable of delivering your content in a reasonable timeframe.
Disable configurations which add to request time, eg reverse DNS lookups.

I suspect this issue is not related to your payment processor at all.


Still getting "ERROR: You need to send a valid key to execute this file" when running cronjob With a Joomla 3.4.8 and CiviCRM 4.6.14 setup, I have been unable to run a simple cronjob. Upon suggestion from my host support team I generated a new site-key [following instructions on https://wiki.civicrm.org/confluence/display/CRMDOC/Managing+Scheduled+Jobs]. I replaced the old key with the new one in both civicrm.settings.php files and ran the following cronjob on Terminal - curl -s http://ashguild.ca/home/administrator/components/com_civicrm/civicrm/bin/cron.php?name=username&pass=password&key=key but I am still getting the same error message. Any help would be appreciated.

Check that the user in your cron-script has superuser access in Joomla.


Roles for specific event registration I have 10 events that i only want authenticated users to be able to register for. I also have one event that anyone(unauthenticated user) should be able to register for. Drupal Permissions are forcing me to choose one way or the other (authenticated user or unauthenticated user). Because of duplicates i am only wanting one event to be opened for unauthenticated users to register?

There's an extension for a very similar scenario: Member Only Event.  If your authenticated members have memberships this will do the trick.  There are similar options here: Is it possible to restrict event registration to members?  Ultimately, if none of these meet your needs a small extension might be in order.

One other option is to use Webform CiviCRM integration to make either your authenticated events (or more likely, the single unauthenticated event) a webform, which you can then restrict access to separately from your other event signup pages.


how to find contacts who have paid for their membership? Civi 5.15.1, WP 5.3.2

My organization manually enters all memberships and membership payments using the Civi UI (we don't expose this functionality on our website). I need to create a smart group of contacts for whom the membership record has been created AND the Member Dues payment is Completed. However, I can't find any payment-related fields in the Advanced Search form used to add contacts to a smart group, except for Pay Later, which does not appear on the New Membership form anyway (perhaps we disabled it in some settings somewhere).

I've also tried searching for the Member Dues financial type, the Completed payment status, any payment type, and any date received, using Find Contribution, Search Builder, the Custom Searches, and all the available Contribution and Membership reports. Either no results return or those fields are empty.

The Civi documentation implies that any membership that has not been paid for is in Pending status, so maybe I could search for membership statuses that are not that, or even create a new one to do the trick? Alas no -- any new membership we create starts out in Current status (we disabled New), I believe because we're entering it manually. And the membership status rules are based solely on Member Since and start/end date, not payment status. Nor is the Pending rule editable.

So, is there any way to find payments the way we can find contacts, memberships, events, contributions, etc? If not, are my only options to figure out how to get Pay Later on the membership form, or to create a custom field that essentially duplicates payment status? Thanks!

You can use Advance search to get the contacts that have membership and have paid for their membership.

Navigate to CiviCRM >> Search >> Advance search
Expand Contribution accordion
Select Contribution status to Completed and other filters if required
Expand Membership accordion
Select 'Membership is a Test?' to No and other filters if required
Hit Search.

The result should only list contact having membership with its payment.

HTH

Pradeep


Access denied after contribution (thank you page denied) I let my users register on my wordpress website using a contribution page on CiviCRM. It used to work fine but last time I tried to register a new user, instead of the thank you page, I get this access denied message :

" 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.
You do not have permission to access this page.
Return to home page."

After hours of investigation, I finally found out the problem came after I changed the default role for new subscribers to a custom role I had added from my function.php called "Pending". If I turn it back to "Subcribers" then it works fine again.

Do you have any idea how I could grant access to this page to users with "Pending" role ??

Thanks a lot !

Here is the log :

Sep 22 19:33:21  [info] $Fatal Error Details = Array
(
    [message] => You do not have permission to access this page.
    [code] =>
)

    Sep 22 19:33:21  [info] $backTrace = #0 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm/CRM/Core/Error.php(385): CRM_Core_Error::backtrace("backTrace", TRUE)
    #1 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm/CRM/Utils/System/WordPress.php(397): CRM_Core_Error::fatal("You do not have permission to access this page.")
    #2 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm/CRM/Utils/System.php(76): CRM_Utils_System_WordPress->permissionDenied()
    #3 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(231): CRM_Utils_System::__callStatic("permissionDenied", (Array:0))
    #4 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(85): CRM_Core_Invoke::runItem((Array:15))
    #5 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(52): CRM_Core_Invoke::_invoke((Array:3))
    #6 /home/gemmemedxe/www/wp-content/plugins/civicrm/civicrm.php(1392): CRM_Core_Invoke::invoke((Array:3))
    #7 /home/gemmemedxe/www/wp-content/plugins/civicrm/includes/civicrm.basepage.php(365): CiviCRM_For_WordPress->invoke()
    #8 /home/gemmemedxe/www/wp-includes/class-wp-hook.php(286): CiviCRM_For_WordPress_Basepage->basepage_handler(Object(WP))
    #9 /home/gemmemedxe/www/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters(NULL, (Array:1))
    #10 /home/gemmemedxe/www/wp-includes/plugin.php(531): WP_Hook->do_action((Array:1))
    #11 /home/gemmemedxe/www/wp-includes/class-wp.php(750): do_action_ref_array("wp", (Array:1))
    #12 /home/gemmemedxe/www/wp-includes/functions.php(1105): WP->main("")
    #13 /home/gemmemedxe/www/wp-blog-header.php(16): wp()
    #14 /home/gemmemedxe/www/index.php(17): require("/home/gemmemedxe/www/wp-blog-header.php")
    #15 {main}

Ok, thanks a lot Demerit but I could not get what I should do in there and finally found the solution.

So the trick was with the capabilities.
I installed user role editor and found out that by default, a subscriber is granted way more capabilities than just "read", which are :

access_all_custom_data
access_civimail_subscribe_unsubscribe_pages
access_uploaded_files
make_online_contributions
profile_create
profile_edit
profile_listings
profile_view
read
register_for_events
sign_civicrm_petition
view_event_info
view_public_civimail_content

So basicaly if your custom roles are not granted those capabilities, users will get denied the access to some civi page at some point.

So in wordpress I just went Users > User role Editor and updated my custom roles with the right capabilities.

Hope it helps !


Fixed - Why can't I display some Civi contact fields through CivCRM Entity in Drupal 8? I've got a development site running using Drupal 8.7.7/Civi 5.17.5 and CiviCRM Entity. I want to set up some Views to display Civi data. Some fields are being displayed fine (e.g. first name, last name), but other fields from the contact record appear to be empty, when I know, by looking at the CiviCRM contact records, that these fields are populated.

As an example, I want to display the Birth Date field. I have nearly 200 records where this field is populated.

If I look at the CiviCRM Entity display of the contact record (e.g. www.example.com/civicrm-contact/xxx (where xxx is the contact ID) I can see some of the fields in the contact record but not Birth Date, despite the fact that www.example.com/admin/structure/civicrm-entity/civicrm-contact/display indicates that this field is not disabled.

How can I get CiviCRM Entity, and Views to display this field correctly?

Graham - I've reproduced that. Not seeing the date of birth field either. Seeing lots of other dates though. Not sure what's going on. Could you please open an issue here: https://github.com/eileenmcnaughton/civicrm_entity/issues

Update: this is now top of the list for D8CE.

Updated: this is fixed now as of https://github.com/eileenmcnaughton/civicrm_entity/pull/190


Rich text in form pre-help? I'm putting together a terms agreement using custom data, as a part of a new member signup profile.  I have a single required checkbox to agree, but I'd like to put the content of the terms in the from pre-help area.  Is it possible to put HTML here?  It's a huge mess as plaintext.

Thanks

Yes you can paste HTML in but guessing you tried that before asking so perhaps there is something else happening on your site. Here is a link to a field on demo where i just used  to prove case.


Server Error 500 when cron runs I am running Joomla 3.4.7 and CiviCRM 4.6.9.  I am getting the following error when my cron runs automatically.

--2016-01-05 08:00:01--  http://www.sitename.org/administrator/components/com_civicrm/civicrm/bin/cron.php?name=loginid&pass=password&key=c12121212121212121212121
Resolving www.sitename.org... 188.143.132.180 Connecting to www.sitename.org|188.143.132.180|:80... connected.
HTTP request sent, awaiting response... 500 Internal Server Error
2016-01-05 08:00:01 ERROR 500: Internal Server Error.

If I run the cron manually, I get the following 500 Server Error:

The website encountered an error while retrieving http://www.divingrebels.org/administrator/components/com_civicrm/civicrm/bin/cron.php?name=loginid&pass=password&key=c121121212121212121212121. It may be down for maintenance or configured incorrectly.

The cron which is running in CPanel is a wget cron.

I contacted my webhost and they sent me the log which shows the cron running, but the email I get after the cron runs shows the 500 Server Error.  I have a 100 emails per hour limit and have the mailer batch limit in CiviCRM set to 99.

I have enabled debugging and backtrace in CiviCRM, but have no idea where to find the info or how to read it.  Any help would be greatly appreciated.

I ran an update to Joomla 3.4.8 and it resolved the issue. There must have been a bug in Joomla 3.4.7 which caused the cron issue.


Stop scheduled reminders for an event after the event is finished We occasionally have participants get registered for an event by our back-office staff while the event is in progress or even after it is finished.  Our events have scheduled reminders set for 1 day and 1 hour before the event.  These people who are registered during or after the event do get these scheduled reminders sent to them and it is both confusing to them and spammy of us to send them.
Six years ago someone asked if there was a way to turn this off.  I'm hoping that in six years maybe there has been some progress or changes.
Is it possible to get scheduled reminders that are set to "XX time before the event starts" to not fire once the event start time has passed?
Thank you

There is a outstanding PR's for the fix which needs some feedback on test,

https://github.com/civicrm/civicrm-core/pull/20432
https://github.com/civicrm/civicrm-core/pull/19973


Need to change default text on Credit Card area I am using civi 4.7.29 on wordpress 4.9.1
Please see the screen shot.  I am using PayPal Payments Pro and I need to remove or change the marked lines.  Can you tell me which file to edit?
Also I would like to change the color of the Contribute button if possible. If anyone knows where I can do that, please let me know.
Thank you.

Navigate to:
Administer => customize Data and Screens => Word Replacements

This should do the trick.

Also please try the same for "Contribute" it will work but this will replace all the contribute buttons - so please test it

I guess this helps !!!

Thanks


How to make the City field a dropdown selection depending on the county selected? Basically what it says in the title. Currently, the City field in the Address is a free text field. Is it possible to make it dropdown or even auto-complete from a set of predefined cities?

I am not sure what you mean by 'is it possible'? My answer would be: yes it is possible but not without coding. You would have to make a small extension that would enable this.


Cases appear on my dashboard "My Cases" but no cases appear on CiviMobile App (android) I can't see any Cases in the mobile app. Running Drupal core 7.69, CiviCRM 5.20.2, CiviMobileAPI 4.2.1. The account I'm using has administrative privileges.

When I login to my website a view cases I can see the following:

But when I view cases on the mobile app I don't have any cases.

Has anybody else seen this? Any tips on resolving? I am able to see case activities.

Thank you.

Have you found a solution to this?

It appears that the only cases that populate the "Cases" page in the mobile app are those in which you are the client, rather than the case manager or any other case role...


Why do CiviCRM URLs have 'reset=1' in the query string? Most CiviCRM URLs have reset=1 in the query string.

E.g. http://[yoursite.com]/civicrm?reset=1

What does this do and does it matter if you don't include it?

I only ask because URLs look nicer without it.

reset=1 clears the current local session variables as well as the smarty cache.

For instance, if you have a form that is getting reused, reset=1 will clear the form's fields (whereas, without it, the form may contain values carried over from it's prior invocation).

If you don't use it, and it's a public, anonymous facing page, I suspect you may get away with it. Try it and see how it works for you.

If the parameter is necessary, you could add it as a redirect to your installation.  For instance, in your .htaccess file include something like:

Redirect 301 /contribute https://[yoursite.com]/civicrm/contribute/transact?reset=1&id=5

Which would allow https://[yoursite.com]/contribute as a valid link to the ultimate contribution page.


CiviCRM Event - Event Confirmation EMail I am looking for the possibility to translate and modify the Event Confirmation EMail.

Installation:
Wordpress 5.3
CiviCRM 5.19
Thanks Felix

Welcome to Stack Exchange!

You can edit any emails that are automatically sent from the System Workflow tab on this page - /wp-admin/admin.php?page=CiviCRM&q=civicrm%2Fadmin%2FmessageTemplates&reset=1

You're able to edit any email templates that are generated from the system such as event emails, membership emails and contribution emails.

Hope this helps!


Running scheduled jobs from wp-cli doesn't work Running scheduled jobs using wp-cli doesn't work, whereas CiviCRM's cli.php does work.

I'm running CiviCRM 4.6.8 on Wordpress.

When I try to execude scheduled jobs using wp-cli:

sudo -u www-data /usr/local/bin/wp --user=my_wp_login --url=https://www.mysite.pl --path=/home/www/wordpress civicrm api job.execute auth=0

I get the following result, although the mailings are not sent (remain in Scheduled state).

Array
(
    [is_error] => 0
    [version] => 3
    [count] => 1
    [values] => 1
)

The same goes for running wp civicrm process-mail-queue

However, using old cli.php I can run the jobs.

usr/bin/php5 /home/www/wordpress/wp-content/plugins/civicrm/civicrm/bin/cli.php -s www.mysite.pl -u cron -p passord -e Job -a execute

What am I doing wrong?

In looking into this a bit further I have failed to get the job to run via the wp-cli by specifing mail_report and instanceId=x, however, this answer works well with wp-cli civiCRM Cron only run one mail_report scheduled jobs?

By setting a scheduled job and setting the parameters, wp-cli triggrs the job just fine.

I am curious if drush exhibits the same behavior


Memberships ending a day early before auto-renew I have an issue where all monthly auto-renew members expire on the day that they will be charged.  The payprocessor charges on the same day of the month that the membership was created. eg.  01/08/16, 02/08/16, 03/08/16 etc. but it may happen at 11pm....it's never the same time of day per customer.  This leaves the members in an expired state since Civicrm api job process_membership expires the membership on that same day, the "end_date".  I'd say that's clearly unwanted behavior for an auto-renew member!  Civi calculates the end_date by incrementing the month by 1. But the end_date should be padded by a day if a member is to get a whole month of uninterrupted membership.

Is there a way to define a month, or otherwise work around this within the UI?

end_date seems like an unfortunate choice for field name, since it falls within the date range of membership but apparently is definitely not being treated like the other days in that range.  IMHO, valid_through makes a lot more sense since it's more clear as to how it should be treated.

It seems like there are two options. 1) redefine the monthly membership period as month++ day++ or 2) reconceptualize end_date as valid_through and expire when that day is over.   Even though I think #2 makes more sense, I think #1 may be easier.  I've tested the daily member and it doesn't expire on the "end_date",...I'm thinking there's a check to see if the end_date is equal to the current date or start_date.

We set our memberships to and end date of 30th June then add a Grace period of 1 month to allow for collection of member fees. You can set grace periods and define the length of that period. Maybe this will assist you. Essentially for us our members are current as at 30th June then on 1 July they fall into a status of Grace, then if renewed they are current again or after 31 July they fall into expired member status.