Aggregate Contributions Reports and fiscal years (and households, too) We have a client with a July 1 to June 30 fiscal year. To filter by a timeframe, the CiviReport system for aggregate contributions insists on grouping by a time period, which is NOT a fiscal year (Year, month, week, or day). If I filter by an aggregate amount, it then it does not include those who gave less in a calendar year even if they gave the required amount in a fiscal year. (It also displays them in separate lines.) How can I get true aggregate reporting in the timeframe I require?

ALSO: Any way to get this to work on the HOUSEHOLD level? I really need to group giving by any member of a household together without requiring people to enter gifts only to the household.

Thank you!

P.S. We need to upgrade, so these comments are for version 4.4.6

I believe this extension will provide the aggregation you're looking for: https://civicrm.org/extensions/aggregate-household-contributions-report

I'm also the main person working on CRM-16195 that Lobo mentioned - I'm trying hard to make time for this (unpaid) work to get it into 4.7, but time is tight!  However, your use case is listed on our notes sheet: http://wiki.civicrm.org/confluence/display/CRM/Notepad+for+CRM-16195


How do I connect a Drupal content type to CiviMail? CiviRules? I'm still getting my head around CiviCRM, and also only have admin access (but not sftp) so if I need to get into the code I'll have to ask our external support team.

I want to be able to take the HTML from a certain type of content when posted on our Drupal 7 site (Media Release) and automatically send it to a CiviCRM Mailing List group.

CiviRules out of the box only allows CiviCRM events as triggers; is there a robust way to link it to Drupal events? Is it only possible through code rather than a UI option somewhere?

Addendum: I've started playing with com.pogstone.contenttokens to get drupal content across, but am not sure how to get the full version rather than a teaser.

We built a solution that uses Drupal Views and a you can then use a token to deliver the content of that view in to a CiviMail. That may be useful to you or it may at least put your 'external support team' on to the job. There was a discussion on the old forum about this here


Civirules can't add activity parameter "CiviCRM_API3_Exception: "Expected one OptionValue but found 2 wordpress 4.9 civi5.22 civirules 2.1

Add an action "add activity to contact"
Then try to add condition (ie activity type) produces error ""CiviCRM_API3_Exception: "Expected one OptionValue but found 2"
no choice but to return to home page.

A popup then confirms that activity parameter is saved (and it is added to civirule_rule_action table)

The rule does actually work but can no longer be accessed - any attempt to edit results in same error message. Also can't be deleted.

backtrace and full error as follows:

CiviCRM_API3_Exception: "Expected one OptionValue but found 2"

#0 /home/domain/public_html/wp-content/uploads/civicrm/ext/org.civicoop.civirules/CRM/CivirulesActions/Activity/Add.php(103): civicrm_api3("OptionValue", "getvalue", (Array:3))
#1 /home/domain/public_html/wp-content/uploads/civicrm/ext/org.civicoop.civirules/CRM/Civirules/Form/Rule.php(387): CRM_CivirulesActions_Activity_Add->userFriendlyConditionParams()
#2 /home/domain/public_html/wp-content/uploads/civicrm/ext/org.civicoop.civirules/CRM/Civirules/Form/Rule.php(282): CRM_Civirules_Form_Rule->getRuleActions()
#3 /home/domain/public_html/wp-content/uploads/civicrm/ext/org.civicoop.civirules/CRM/Civirules/Form/Rule.php(258): CRM_Civirules_Form_Rule->createUpdateFormElements()
#4 /home/domain/public_html/wp-content/uploads/civicrm/ext/org.civicoop.civirules/CRM/Civirules/Form/Rule.php(34): CRM_Civirules_Form_Rule->createFormElements()
#5 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/Form.php(570): CRM_Civirules_Form_Rule->buildQuickForm()
#6 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/QuickForm/Action/Display.php(92): CRM_Core_Form->buildForm()
#7 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Controller.php(203): CRM_Core_QuickForm_Action_Display->perform(Object(CRM_Civirules_Form_Rule), "display")
#8 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/packages/HTML/QuickForm/Page.php(103): HTML_QuickForm_Controller->handle(Object(CRM_Civirules_Form_Rule), "display")
#9 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/Controller.php(351): HTML_QuickForm_Page->handle("display")
#10 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Utils/Wrapper.php(113): CRM_Core_Controller->run()
#11 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(283): CRM_Utils_Wrapper->run("CRM_Civirules_Form_Rule", "Rule", NULL)
#12 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(84): CRM_Core_Invoke::runItem((Array:13))
#13 /home/domain/public_html/wp-content/plugins/civicrm/civicrm/CRM/Core/Invoke.php(52): CRM_Core_Invoke::_invoke((Array:4))
#14 /home/domain/public_html/wp-content/plugins/civicrm/civicrm.php(1246): CRM_Core_Invoke::invoke((Array:4))
#15 [internal function](): CiviCRM_For_WordPress->invoke("")
#16 /home/domain/public_html/wp-includes/class-wp-hook.php(286): call_user_func_array((Array:2), (Array:1))
#17 /home/domain/public_html/wp-includes/class-wp-hook.php(310): WP_Hook->apply_filters("", (Array:1))
#18 /home/domain/public_html/wp-includes/plugin.php(453): WP_Hook->do_action((Array:1))
#19 /home/domain/public_html/wp-admin/admin.php(224): do_action("toplevel_page_CiviCRM")
#20 {main}

I have recently (with the latest CiviRules version) succesfully used this rule in combination with the same condition. My first step would be to check your activity types and make sure there is not a double one in there (with the same name rather than label)


CKEditor can only edit user driven message templates If I edit a user driven message template, then CKEditor works nicely. If I try to edit a system message template, the template fills only into a textarea, without CKEditor.

Since it's done as site admin having all the permissions, and these symptoms are the same on dmaster.demo.civicrm.org for system templates and for user templates, I guess this is a bug.

Do you have any workaround here?

My install is on Aegir 3.17.3 with Drupal 7.64 and CiviCRM 5.10

Jaap's comment is correct.  It's unfortunately not possible to use a WYSIWYG editor on system templates because they're not (just) HTML, but contain Smarty code as well.  Not only would Smarty break CKEditor, but CKEditor would break the Smarty code.

This unfortunately makes editing system templates difficult to do.  However, one trick that makes it easier is to copy the text into software that understands Smarty templates.  I use Netbeans IDE for this.  While this may be overkill for most uses, Netbeans can recognize both HTML and Smarty tags and the tag that closes a section.  So it's easy to use code folding to identify and hide the sections that don't concern you.

I work in Netbeans, then paste the text back into CiviCRM and press "Save".  It's relatively quick to iterate this way.


Members are being charged early CiviCRM 5.35.1
WordPress 5.7
We noticed last week that our members who set up recurring payments via Credit Card with the iATS processor are being double charged or even triple charged in some cases. All of sudden 100s of recurring transactions are being triggered at the same time when they should not be triggered.  For instance, someone who should only be recurring once a year, was charged twice We have no idea what is going on. This just recently started happening.  Please see screenshot below for example.  As you can see, all these transactions are happening at the same time on the same day.  This is not normal and people are being double charged.

This screenshot shows contributions for an ANNUAL membership that is not due to be renewed until January 30th 2022, but it was renewed on March 30th.  This is just one example.  We have hundreds of instances of this happening over the last 5 or 6 days.

In the screenshot above -> I don't see any double charges. Every Contribution in the screenshot belongs to a different recurring series (the id = numbers are different).
As far as at the same time on the same day -> if cron has not run for some time on your site -> then this is exactly what you would see. Every recurring series that has a next_scheduled_date in the past would be due as soon as iATS Payments Recurring Contributions (Daily) is triggered by your system cron.
As far as double charges -> there are safe guards in place for that -> it can really only happen if that cron job is triggered by two crons at the same time and/or if you have a production and a development set up and you have cron running on both.
PS - Make sure you are on the latest iATS Extension update (1.7.4)
On timing -> which recurring contribution series should create a new contribution  to be submitted for processing to iATS -> is solely governed by the Next Scheduled Contribution Date in the Recurring Series Record.
In this report -> /civicrm/report/com.iatspayments.com/recur?reset=1 you can filter Next Scheduled Contribution Date -> next week so see what's going to happen next week. For this client -> they will have two series transact on April 09 and one on April 10.

It sounds like your recurring series definitions/dates are not in line with your membership dates.
Also very important - do not switch ON Recurring within your iATSpayments.com account itself as then you have both civicrm and iats trying to control the schedule of your payments.
So go into one of your recurring series records (for example id = 578 you have in your second screenshot) -> and view all variables re: time -> i.e. next scheduled date + frequency


How to insert a CiviCRM query link into Drupal main menu with Clean URLs enabled? How do you add a CiviCRM query link such as:

index.php?q=civicrm/member/search&force=1&qfKey=0&reset=1

Into a Drupal main menu with Clean URLs enabled?

With Clean URLs enabled, Drupal will strip out the ?q=, breaking the link.

Desired outcome:
Drupal main menu.
Menu item "Members".
URL to "civicrm/member/search&force=1&qfKey=0&reset=1"

You can find further info here, but I'd recommend setting up a Redirect (using this module) and using that URL in the menu. For example, the redirect URL could be member/search and then it redirects to civicrm/member/search&force=1&qfKey=0&reset=1.


How to export members addresses into spreadsheet for a mailout? How do I extract members' addresses in our system onto a spreadsheet for a mailout?  Thank you so much!

You can use find contact search or Advance search or find membership search. Perform search and then select the contact you want to export and from task drop down select export, and select 'Export PRIMARY fields' or 'Select fields for export' if you don't want all fields.

Ref: https://docs.civicrm.org/user/en/4.6/common-workflows/exporting-your-contacts/


How to automatically create/import some 4000 groups in bulk from a csv file We are considering data migration to CiviCRM. We have two CSV files, one has the details of thousands of "individuals" and another has a list of over 3000 needed "groups".  Importing process for "individuals" appear to be well documented, but how do we import/create "groups" (including group properties) from a CSV file beforehand.

Welcome to SE!
You could import the groups with the API CSV importer extension
3000 groups is a lot: there may be better ways to represent your data in CiviCRM.  How do you want to use these groups?


Configuring CiviCRM for 1and1 email limits 1and1 hosting says: Using the 1&1 mail server, you can send a message with no more than 100 recipients at one time and no more than 200 within five minutes. Please allow 10 seconds between sending e-mail messages.

The 100 batch can be configured in CiviMail, but is there a way to configure "no more than 200 within five minutes" ?

At Administer > CiviMail > Mailer Settings (civicrm/admin/mail) you can configure how many mail go out in each mail run. Limit the batch to 100 per run.

Combining your cron schedule with Administer > Settings > Scheduled Jobs (civicrm/admin/job), you can control the Run Frequency for task  Send Scheduled Mailings. The options for the this are "every time" or "hourly" (or larger intervals), so you probably want to set "every time" here, and then configure the cron task to be called every three minutes or more.

Scheduled jobs in CiviCRM (documentation) are triggered by an external task, for 1and1 customers via SSH to the hosting account. This is where you'll most likely dictate the frequency at which your scheduled jobs may be run.

With all that done, your CiviMail should stay under the limits ... unless additional emails are generated as well. What happens if you hit that limit - say if your CRM is partway through a mailout - and a donor's receipt or password reset email gets trashed for being email number 101 or 102? It might not be likely, but only your org can decide if it's acceptable, and you'll never know for sure how much buffer to allow.

So, the above configuration can mostly avoid hitting 1and1's limits. But ... please see my other answer :)


How to update latest.civicrm.org? There's a file http://latest.civicrm.org/versions.json which isn't up to date - it's missing a few betas, but most notably, it's missing CiviCRM 4.4.14.  This is the source data for CiviMonitor, which uses it to check if a version is up-to-date.

Is this file generated by hand, or with code?  If by hand, is there a git repo I can submit a PR against?

You are correct that latest.civicrm.org/versions.json is the canonical source for CiviCRM version information.

The file is quite new and the release-publishing script has not yet been updated to write to it (an issue has been filed for this), so at the moment it must be updated by hand.

I agree that the file should be under version control.

If anyone is available and interested in helping with either task, get in touch on #civicrm IRC channel, or by email to coleman at civicrm)


How to catch Fatal error in civicrm? I'm getting below error message while exporting csv file of 40k record.

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 65552 bytes) in /var/www/html/crf-git/modules/syslog/syslog.module on line 115.

How to catch or handle this kind of error?

Thanks & Regards,
Sachin

You need to increase your PHP memory limits.

This is the recommended approach if you have access to the server's php.ini. This will not be possible in some shared hosting environments, though your host may be able to adjust it for you. Note that this change will affect all websites and PHP scripts on the server.

Locate the php.ini file used by your web server.

Edit the memory_limit parameter in the php.ini file (usually in a section called Resource Limits). Make sure you use M to specify the number of megabytes (not MB).
memory_limit = 256M ; Maximum amount of memory a script may consume (256MB)
If there is no section already for this, place the above line at the end of the file.

Restart Apache.

Credit: https://www.drupal.org/docs/7/managing-site-performance-and-scalability/changing-php-memory-limits


How do I edit email template for Events confirmations I am trying to override the default email template for civicrm Events, which will be sent when registration is complete. I made changes on this file CRM/Event/Form/EventFees.tpl but the changes are being shown on email. I tried clearing cache but this doesn't help. Am I doing something wrong here?

You can customize the style and wording of events email messages in workflow messages here civicrm/admin/messageTemplates?reset=1


Is there a way to update the contact.addressee field in batches? I have about 50,000 contacts to update and I have a scheduled update greeting job set up (based on this post Update addressee values for all contacts after modifying Addressee Type Options - thanks Sean!)

If I run the scheduled job, it never completes (it hits a max execution time limit.) I did find that I can limit the number of contacts (to say 2500) with the limit parameter, and the job will complete. But my assumption is that if I run the job again it just updates my first 2500 contacts over again. Is that a correct assumption?

Is there another way I can update the contact.addressee token in batches to avoid hitting the max execution time?

There are several solutions.  I'll go from least to most work - though the "least work" solutions generally need a level of expertise that the "most work" solutions don't.

You can edit your max_execution_time in php.ini.
The default execution time when running from the command line is unlimited.  So you could run cv api Job.update_greeting or the equivalent using drush or wp-cli if you don't have cv installed.
Greetings are updated whenever a record is updated.  An easy way to batch update records is to import a list of all the contact IDs you want to update with no other info.  This will force an update and thus a greeting update.
You can delete all your addressee values that need updating (or all of them!) through MySQL/phpMyAdmin, then use "Update Greetings" with a limit of 2500 and set force equal to 0.  With force equal to zero, only contacts without addressees will be updated, so you won't do the same 2500 every time.


How to export website field for a contact where website is specific website type? I select some contacts for export. In my field mappings, I add Website but it does not give me the option to choose a specific website type. Is there any way to do this?

I have a website type called Twitter Website, for storing Twitter "handles". Each website/handle contains 'twitter.com' (i.e., like www.twitter.com/joemcl )

So using Search -> Search Builder, I search for Contacts Website Like %twitter% , then select all search results, select Actions, then Add Contacts to a Group (or better perhaps, choose New Smart Group) to create a new Group of every contact who is a Twitter user.

The same can work for Facebook as a website type.

Obviously this won't work for type 'Work' or 'Home', which won't be in the website name, which is what I think you actually want.


Problem with sorting civievent_widget custom_filter by startdate DESC and for past dates I am trying to sort by start_date descending but it doesn't seem to be working.

What change would I make to the below to get it to work?  I am using CiviCRM 4.6

[civievent_widget title="Sorted Events" admin_type="custom" custom_filter=custom_filter='{"is_public": 1, "options": {"sort": "start_date DESC"}}']

Also I am trying to display only past events by date (ideal would be before "today") but this doesn't work either.  Do I have a format incorrect or is this not possible to do?

[civievent_widget title="Past Events" admin_type="custom" custom_filter='{"start_date": {">=": "2018-06-01"}, "is_public": 1, "options": {"sort": "start_date ASC"}}']

I figured out why the second one wasn't working -- CiviEvent widget only shows UPCOMING events.

I still am not able to figure out why I cannot see the events in DESCENDING order.


How do I add the timezone field to a profile? Timezone is one of the fields in the address table. I'd like to add it to a data entry profile but it's not listed in any of the dropdown menus. How can I add it to the profile even if it's not in the dropdown?

This is not supported by CiviCRM but you can do a small change in your existing CiviCRM file as shown below and clear civicrm cache, the profile form should then should allow you to add timezone field of address.

diff --git a/CRM/Core/DAO/Address.php b/CRM/Core/DAO/Address.php
index b1e00a83dc..ee9bf2d945 100644
--- a/CRM/Core/DAO/Address.php
+++ b/CRM/Core/DAO/Address.php
@@ -731,6 +731,7 @@ class CRM_Core_DAO_Address extends CRM_Core_DAO {
           'table_name' => 'civicrm_address',
           'entity' => 'Address',
           'bao' => 'CRM_Core_BAO_Address',
+          'import' => TRUE,
           'localizable' => 0,
           'html' => [
             'type' => 'Text',


Authorize.net does not allow query strings for silent post URL? We are unable to get authorize.net talking back to CiviCRM in regards to recurring payments.

In talking with authorize.net folks and they pointed out that query strings are not allowed to be used in the Silent Post URL: https://support.authorize.net/s/article/Why-Are-My-SIM-Relay-Response-Transactions-Timing-out-After-Submitting-the-Request

However, CiviCRM docs say for Wordpress you need to use a query string? https://docs.civicrm.org/sysadmin/en/latest/setup/payment-processors/authorize-net/

We've checked the logs and see that authorize.net is not communicating back to CiviCRM. The transaction ID's for recurring payments are missing.

So who is right here and are people successfully using WP and Civi with authorize.net?

We have checked that are servers support connections via TLS 1.2.

On WP 4.9.4 and Civi 4.7.30

The culprit was the iThemes Security plugin. Here are the settings you should disable to avoid getting a 403 forbidden error that prevented the IPN from registering.

Under Banned Users

Hack Repair Default Blacklist

Under System Tweaks

Suspicious Query Strings
Long URLs

I also enabled Enable XML-RPC under Wordpress Tweaks. I had encountered failed IPN's from PayPal before so I assume this would be wise to enable as well.


'Household member' relationship type can't be (re?)activated through the interface? Somehow I seem to have deactivated the type of relationship 'Household member' (is a member of what household) through the interface while configuring a fairly new CiviCRM. As a result, I don't seem to be able to associate individuals to households. Nothing has been changed in code, so I must have just clicked on something. On the relationship types page, this relationship (is a member of) is of course still there (it can't be deleted through the interface, afterall), but doesn't allow itself to be actived (though other options like 'child of' or 'spouse of' can be activated and deactivated). I'm the only person who's been configuring the site, so I don't see how it can be a permissions issue (it must be a problem that I created).

Any ideas what I need to do to re-activate this basic relationship type?

Thanks very much!

Steve Baird,
Citizen's Action Committee of Verdun

Do you have any extensions that might have disabled it? Otherwise I'm not sure how that would happen either but if you want to live on the edge you can use phpmyadmin or equivalent to do:

UPDATE civicrm_relationship_type SET is_active=1 WHERE name_a_b = 'Household Member of';

You can also do it with api explorer (/civicrm/api3) and choose:

Entity: RelationshipType

Action: Create (yes, create - it means update)

Remove the suggested parameters and add a parameter Relationship Type ID = 8. You can confirm the id by hovering over the View link in the Relationship Types listing screen and looking at the url at the bottom of the browser, but it's always 8.

Then add a parameter Relationship type is Active = Yes

Click Execute.


Restricting access to a group of contacts I've done some searching, but can't seem to hit the right keywords.  I'll pick on the major donor group for this question, though it would apply in other ways.

Most of our users should have access to almost all of the contacts.  However, there is a small group who deal with major donors.   This group is only group who should be able to see the major donors.

Currently we are using a group for major donors, and a smart group for anybody who is not in the major donor group.  The majority of users are in a user group that allows them to edit anyone in the unrestricted contact group.  This works great, except when adding a new contact.

When the new contact is not in the major donor group, the majority of users still can't see the new user until the cron job runs to rebuild the smart group cache.  This messes with people's process and they loose where they are and what they are doing.

Is there a better way to restrict the group?  Can I set an ACL so that it's looking at anything that's NOT a part of a group, rather than a part of a group?  Anybody else doing something similar with a better way of doing this?  Can I set all new contacts to automatically be a part of the unrestricted smart group by default?

No, ACLs are about including groups you can see, not about excluding the ones you can't.

What we did for a case like you was to automatically add any new contact into a "visible by everyone" group and remove it if/when they are added to the "VIP" group. So what you do with smartgroups, but because we add/remove directly, it was faster as no need to wait for the cache to rebuild. It was a very long time ago, so probably nothing I can share anymore, but with two hooks in a small extension, it should be possible

Have a look at civirules, it might even be possible to do it without code.


Upgrading a CiviCRM System We have a CiviCRM system that hasn't been updated for 5 years and the guy who used to do this has left.  Now I do have a lot of IT knowledge but am lost with this.  Please, can someone advise how much of an easy task this is and if not anyone who can do it for us?

Thank you :)

Upgrading is not exactly simple, but it can be done with a lot of IT knowledge. You can find information about the upgrade at https://docs.civicrm.org/sysadmin/en/latest/upgrade/ .

If you need an expert to help you search in the partner list: https://civicrm.org/partners-contributors .


Wordpress - Civicrm 5.16 upgrade to 5.30 issue - Notice: Undefined index query in /wp-content/plugins/civicrm/civicrm.php on line 483 When upgrading our site from Civi 5.16 to the latest 5.30, when I point my browser to run the upgrade at:
http://example.org/wp-admin/admin.php?page=CiviCRM&q=civicrm/upgrade&reset=1
I get the to the update page, which has the following:
The database will be upgraded from 5.16.0 to 5.30.0.
Then long list of warnings about default copies of message templates etc.
At the end of this, when I click on the "Upgrade Now" button, I get this message and nothing else happens:
Notice: Undefined index query in .../wp-content/plugins/civicrm/civicrm.php on line 483
I'm running Wordpress 4.9. No our site is down and I need help to resolve this upgrade issue.

Comment out line 391 of that file - so that it reads like this:
// add_filter( 'heartbeat_settings', array( $this, 'heartbeat' ), 1000, 1 );

Then try the upgrade again.


When to use CiviCampaign vs Financial Types/Accounts I'm managing CiviCRM for an organization that has the following kinds of accounts in Quickbooks:

General Fund: undesignated donations
one account per staff member, for donations towards each staff members salary
one account for each project/campaign, for donations towards a particular purpose
accounts for sales of products

Initially, I captured each of these as a different campaign using CiviCampaign. These means we can do things like have a Campaign dropdown on a CiviContribute page, e.g. to donate to the general fund or particular project or to support a particular staff member. This means it's easy to get reports or filter searches based on how each campaign is doing.

However, now that we're working to fully integrate CiviCRM with Quickbooks, I'm running into a problem. CiviCRM accounting codes are contained under financial accounts, but don't offer the same functionality as CiviCampaign. For example, is it possible to have a dropdown to pick which fund a donation goes to on a donate page if the funds are captured as Financial Accounts instead of CiviCampaigns? It seems every Financial Account requires a Financial Type?

And it doesn't seem to be easy to add Financial Accounts as staff come and go, compared to captured these accounts as campaigns. It also seems awkward: the financial type is really donation for all of these contributions, but the donations just go to various funds/accounts/campaigns. Is there a way to capture this in multiple Financial Accounts without having to have multiple Financial Types?

My options seem to be:

Use CiviCampaign, and figure out a way to modified the data before import to Quickbooks
Use Financial Accounts / Financial Types, and figure out another way to get the functionality we want in CiviCRM and potentially deal with a proliferation of Financial Types (which just doesn't feel right)

I'm leaning towards the first option, because CiviCampaign seems to be the right tool. But for extensive use of CiviCRM and accounting integration, what is the best way to capture multiple destinations for donations? When should I use CiviCampaign and when should I use Financial Accounts?

A few points:

The system creates a financial account automatically when you create a financial account, so there's not much extra effort. You will want to edit the financial account to put in the QuickBooks chart of account information.

The general advice regarding Chart of Accounts (in QuickBooks or similar software - it's actually an accounting best practice) is that you don't want to be removing them regularly. I'd suggest having a parent account for something like Donations - Staff Salaries, and then sub-accounts Donations - Staff Salaries - Joe, etc. While the subaccounts will remain, their amounts will be conveniently summarized in QuickBooks into the parent account. After creating the subaccounts  as Financial Types in CiviCRM, edit associated the Financial Account that was automatically created, then make sure to configure the fields as appropriate for QuickBooks. I believe if you export your Chart of Accounts from QuickBooks (for many versions of QB Desktop File > Utilities > Export > Lists of IIF files, select Chart of Accounts) then open it in a low-level text editor like Notepad you will be able to see the data you need to exactly match the account name and 'Account Type Code'. In particular, the subaccount will have a name with a colon in it separating the parent account name and this account's name. You need to enter that exactly correctly (cut and paste!) in order to have things work correctly when you import the .iif from CiviCRM into QB. Remember to backup QB before trying the import...it usually takes several finicky checks to get everything perfect and not creating duplicate accounts.
You can create a price set and associate different financial types with different select widget options pretty easily:

HTH


Including Member Login to a CiviCRM Site I am just starting to configure a CiviCRM/Wordpress implementation for my organization. As well as a tool for the club's administrators to keep track of membership, I also want the members themselves to be able to keep track of their own membership.

CiviCRM seems incredibly powerful for administrators, board members, and other roles within the club to manage members, payments, events, etc. However, I would like members to be able to login and maintain their contact information, pay their dues, be able to make donations, sign up for events, etc. I'm having a hard time finding anything built into CiviCRM to allow this functionality. A nice login widget/plugin/feature with the option to sign up would be ideal. From there the user could manage their account.

As a stretch objective CiviCRM would know if a user has donated or participated before creating their account, and recall all that information for the member.

I see this question how the members can login to civicrm alludes to a plugin. A single plugin doesn't seem too hard to manage, but I don't want to have to install 20 different tools just to facilitate this functionality. Is that the only way?

Finally, could CiviCRM keep all user interaction on the front-end site? Or because I'm using Wordpress, would all member interaction happen in the Wordpress back-end? If that is the case, I'd hope some functionality would be hidden to members without sufficient permission. A confusing interface for the club members would render CiviCRM ineffective for my organization.

You have a few questions here so I will try to address them individually.

The login and user accounts are handled by WordPress. CiviCRM syncs with the WordPress user accounts so when a WordPress user is logged in it connects to a CiviCRM contact. If that user then goes to register for an event, make a contribution, etc. the form will populate with their current information and changes will be saved to the CiviCRM database.

There is a WordPress plugin called "Members" which allow you to create custom user roles and has a nice login widget.

You can use a combination of profiles & the user dashboard to allow logged in users to view and change their engagement with your organization through WordPress front end pages.

This plugin https://civicrm.org/extensions/civicrm-wordpress-member-sync will change a user's role based on their membership status. So if a you have restricted content or discounts based on membership and a membership for a contact expires the user's role will change to reflect their new status and content will be restricted.

There is a lot here but with some planning it is all doable.


Is there a recipe for converting fields to select2? Examples ...

Create event - add location - it's hard to find locations with the existing dropdown
Search builder - Contact Tag(s) IN - dropdown gets hard to use with many tags

I'd be happy to supply patches for these but I'm not happy I understand the scope of such a change.

Is there a PR that shows how this should be done? A good example of a field being changed to select2?

In general, a field can be made into select2 simply by adding the css class "crm-select2" to it.

Here is a PR to add it to the existing location field you mentioned. Please try it out and leave a comment on the PR to say you've tested it and how it works for you - that will speed along the review process and we'll be able to get that merged into the next release of CiviCRM.

Search builder is kinda it's own thing. Changing it to use select2 is certainly possible but would take some doing, you'd need to alter the javascript code somewhat.


How to empty the trash? (permanently delete) I know you can permanently delete a deleted contact from the contact's screen, but how can you en-masse delete all the deleted contacts or "Empty Trash"?

Ideally delete all things trashed over 30 days ago would be fab.

It's especially needed for my client because deleted contacts still show up in Constituent Summary and other reports

Go to Advanced Search, tick the box, 'search in trash'. hit 'enter/search' - that should give you all those in Trash (and ONLY those in Trash) and from Actions you can then choose 'permanently delete'


How do I prevent blank fields on a profile from overwriting existing data when using the profile to register or donations from existing contacts? I've setup a contribution page and made a link to it.  I include a profile that includes things like address.  The matching is set to update.  If someone who already in civi goes to the donate page and only fills in the name and email address, leaving the street address blank, it will match and then null out the address that was there.

I'd like it to only update the fields if the user enters something in the field.

I don't really want to give everyone a drupal login and make them login first.  We want to make donating as easy as possible.

We're using paypal so a lazy person who knows that and that they'll login to their paypal account and that it will pull up their address info, won't bother to enter it on the donate page.  Interesting, if they do that either paypal doesn't send back the address info or civi doesn't do anything with it.

civicrm 4.5.8 (testing 4.6.11)

Created jira CRM-20731.

This problem also sort of exists with creating a new contact without an address.  The contact will get an address record with only the country and state province. I included this in the jira as well since it's likely the same core code.


How can I limit the number of participant roles? We are using CiviCRM to coordinate volunteer registration to work events. As such, the event form has the "Participant Role" field. Is there away to limit the role of, say, "Lighting Designer," to one member and have it not be an option once the role is filled?

If there's a better way of doing this please let me know!

You should use CiviVolunteer to manage and track volunteers for your event. Your requirement works our of the box with CiviVolunteer

https://civicrm.org/extensions/civivolunteer


post hook edit entity We have a post hook that sends some data to an external api when a participant is created or edited.

function kavo_civicrm_post($op, $objectName, $objectId, &$objectRef) {
  if (($op == 'create' || $op == 'edit') && $objectName == 'Participant') {

Based on the response of that api a custom field on the response of that API a couple of custom fields on the participant should be set. This is done using the php api, but results in a loop with the post hook being called, even when following the add_callback instructions in the post hook documentation.

try {
               civicrm_api3('Kavo', 'createparticipant', ['participant_id' => $objectId]);
               $successState = CRM_Kavo_Status::KAVO_ATTENDED();
               CRM_Core_Transaction::addCallback(CRM_Core_Transaction::PHASE_POST_COMMIT, 'set_kavo_state', [$objectId, $successState]);
            } catch (CiviCRM_API3_Exception $ex) {
               $contact = $worker->getContact($participant);
               CRM_Core_Session::setStatus($ex->getMessage(), ts("Failed sending participant %1 to KAVO.", [1 => $contact['display_name']]), 'error');
               $failedState = CRM_Kavo_Status::KAVO_FAILED();
               CRM_Core_Transaction::addCallback(CRM_Core_Transaction::PHASE_POST_COMMIT, 'set_kavo_state', [$objectId, $failedState, $ex->getMessage()]);
            }

function set_kavo_state($participant_id, $state, $message='success'){
  $kavo_status_field = CRM_Kavo_Field::KAVO_PARTICIPANT_STATUS();
  $kavo_message_field = CRM_Kavo_Field::KAVO_PARTICIPANT_MESSAGE();
  civicrm_api3('Participant', 'create', array(
    'id' => $participant_id,
    $kavo_status_field => $state,
    $kavo_message_field => $message
  ));
}

The kavo create_participant call does our call to the external api
 Is there another way to edit the participant being edited in a post hook?

The participant create in set_kavo_state() triggers your post hook again which then calls set_kavo_state() etc.  You need to determine whether the post hook is being called just to update the $kavo_status_field and $kavo_message_field fields - and therefore not set up another callback to set_kavo_state().

Do you actually need to call your external API for participant edits?  If you could limit the post hook to only trigger on 'create' you would avoid the loop.


What are the different cache clearing mechanisms relevant when developing? When doing developpment, i sometimes found it difficult to clear all the cache in a way i'm sure everything i have done is taken into account.

Let's take some examples :

in an extension, i do an override of some core .tpl file (i know i shouldn't do that but sometimes difficult to avoid) - will it work out of the box or do i need to clear some cache ?
in an extension, i create a new page or form with a custom menu xml file - what do i need to clean ?

What are the different level of caches involved ?

Is there a way to clean all caches in one shot like the drupal Flush all caches / drush cc all ?

For the first example, you need to 1. clear the compiled Smarty templates cache. In the second case you need to 2. rebuild the menu system using your xml file. 3. There are some db cache tables you sometimes need to clear out using mysql or a link in the UI. 4. Caching in the CMS can also affect CiviCRM pages.

a) One way to do this is to go to Admin > System Settings > Cleanup Caches and Update Paths (civicrm/admin/setting/updateConfigBackend?reset=1), then click Save.

b) A more convenient method during development is to be able to append arguments to the url you are debugging to have the cleanup done automatically. Go to Administer > System Settings > Debugging and Error Handling.

Click to Enable Debugging. At this point you can add a key-value pair to your URLs to clear the compiled Smarty file cache under templates_c, and also if you want the upload file directory:
Directory Cleanup -Empties template cache and/or temporary upload file folders.
To empty template cache (civicrm/templates_c folder), add &directoryCleanup=1
To remove temporary upload files (civicrm/upload folder), add &directoryCleanup=2
To cleanup both, add &directoryCleanup=3

You might also want reset the session, since that caches various values:
Session Reset - Resets all values in your client session. To trigger, add &sessionReset=2

a) Enter the appropriate one of the following urls to rebuild the menu system, which also clears various caches:

Drupal sites: http:///index.php?q=civicrm/menu/rebuild&reset=1

Joomla 1.5 sites: http:///administrator/index2.php?option=com_civicrm&task=civicrm/menu/rebuild&reset=1

Joomla 1.6 sites: http:///administrator/index.php?option=com_civicrm&task=civicrm/menu/rebuild&reset=1

Wordpress sites: http:///wp-admin/admin.php?page=CiviCRM&q=civicrm/menu/rebuild&reset=1

This action also resets the IDS (intrusion detection system) file.

b) As explained in @Tim Otten's answer, this can be done conveniently from the commandline as well, using a better named wrapper for the same actions:

In Civi-Drupal, the analogous command is:
$ drush cvapi system.flush

In Civi-Wordpress, it's:
$ wp civicrm api system.flush .

Or alternatively, in Firebug's CLI: CRM.api3('system','flush'))

There are other sorts of caches that may occasionally need to be reset.
a) At Contacts > Manage Groups, it is possible to reset the caches for contacts that are in Smart Groups by clicking near the top left of the page the Update Smart Group Counts link.

b) More generally, depending on the area of CiviCRM you are working on you may need to truncate any of the CiviCRM tables that have cache in their name:

mysql> show tables like '%cache%';
+-------------------------------------+
| Tables_in_clubcdn_civ_new (%cache%) |
+-------------------------------------+
| civicrm_acl_cache                   |
| civicrm_acl_contact_cache           |
| civicrm_cache                       |
| civicrm_group_contact_cache         |
| civicrm_prevnext_cache              |
+-------------------------------------+
5 rows in set (0.00 sec)

Use TRUNCATE civicrm_acl_cache; or similar queries on the command line or in phpMyAdmin to clear these tables.

CMSes have their own caches that can often cause grief when developing in CiviCRM. For example, in Drupal 7, go to Configuration > and in Development set of modules click on Performance. Click to purge the caches. You might also want to disable caching of pages for anonymous users, caching of blocks, and / or aggregrating and compressing css and javascript files.


Disabling system workflow messages I'm trying to disable a particular system workflow message from being sent out - "Events - Pending Registration Expiration Notice". I've had a look in the event configuration and have found nothing that would indicate being able to disable this message per event. Is there another place that this can be disabled?

Use the hook civicrm_alterMailParams.

Inspect the $params that are passed in, and if you don't want the message sent, set $params['abortMailSend'] to '1' (or any non-empty value).

See lines 71-77 of CRM/Utils/Mail.php to see how this is processed by CiviCRM. This doesn't work for CiviMails but works for other emails sent by CiviCRM.


Is it possible to upload a default image for a field While creating a Personal Campaign Page, there is one image upload field (see attached screenshot). Is it possible to attach a default image in case a user does not wish to upload one?
Screenshot:

Thanks!

The issue of default values for PCPs has come up a few times but there are no options currently to do this so it will require some development work.


Display Preferences Bug? we just tried to edit some of the display preferences (unticking various things we don't need) but upon clicking 'save' the changes do not hold, even though the green message box says "changes saved".

Is this a known bug? Is anyone having the same issue or know a solution?

Can you try to increase php variable post_max_size in php.ini or using php function ini_set().


Search for cancelled Paypal recurring contributions We want to see reports on how recurring contributions through Paypal are being lost (e.g. due to cancellation, or card expiry). Using the Search function on civiCRM 4.6.38 I set the parameters as follows:

"Contribution is Recurring" Yes: returns 208 contacts

then search again with:
- "Contributions Status" is "Cancelled": returns 0

then search again with:
- "Contributions Status" is "Failed": returns 0

We receive reports from Paypal which confirm that recurring contributions are failing, so there should be some way to search for people who's Recurring Contributions stop. Any ideas?

There are several things things at play here:

Before v 4.7, when recurring contributions failed, an installment was not created - this behavior was changed as of 4.7 as described HERE, so this explains why you aren't finding any failed contributions in your system
Using basic searches on contributions will result only in the installments (i.e. individual contributions) - not the actual subscription, so unless you edited an installment and marked the status as "Cancelled", this explains why you aren't finding any cancelled recurring contributions in your system - there is a report that will allow you to search on and view the status of the subscription itself in CiviCRM, but not sure as of which version the report was made available - check to see if you have a "Recurring Contributions Report" available to you under Administer > CiviReport > Create Reports from Template > Contribution Reports
Even if you do have this report, other than the initial creation of the recurring contribution, no further information is communicated from CiviCRM to PayPal, nor are changes to the recurring subscriptions directly on PayPal reported to CiviCRM - you would need to update the corresponding recurring contribution manually in CiviCRM to reflect the those changes (being sure not to toggle the "Notify PayPal" option when doing so b/c this will return an error since it has already been cancelled on PayPal)
There was a point in time where cancellation of a recurring contribution from CiviCRM was not communicated to PayPal, and I'm not sure if this was ever resolved, so to play things safe, if you cancel a recurring subscription in CiviCRM first and toggle the "Notify PayPal" option, log into PayPal to confirm that the corresponding recurring subscription was indeed cancelled
You need to login directly to PayPal to make changes to the payment amount, card, frequency, etc. for those to take effect - you are also able (if memory serves me correctly) to make those changes in CiviCRM, but again, these changes are not communicated to the payment processor

Hope this helps!
Tamar


Cron Wordpress 4.7.14 - will not send scheduled emails I schedule a job through mailings.  The Cron job looks like it picks it up, and the mailing is marked as running, but it never gets sent out until someone manually runs scheduled jobs (administer>system>scheduled jobs).
The process is running every 15 minutes on schedule, the jobs logs, has two entries at the time it should pick up the scheduled job.
The first just has the time/date and
Summary
Starting scheduled jobs execution
the second has the date/time the jo
Entity: Job Action: process_mailing
Summary
Starting execution of test job schedled -
Details
Parameters parsed (and passed to API method):
a:1:{s:7:"version";i:3;}
Full message:
Starting execution of test job schedled
but once it picks up a scheduled job it never completes, it will just generating the starting execution message.  Also as a result of this I get the system message that Cron is not running after a bit.   I've tried Civihosting support and they said to post it here.

Is there any output from the cron job?  (On Civihosting, you can configure the cron job to mail you the output.)  If it is starting but not completing, it could be running out of memory.


No displayName after editing or creating Since the last CiviCRm version 4.7.21 to 4.7.23, I have the display_name empty. There is also the trouble for the sort_name.

I found the report of  SarahG (FountainTribe) here https://forum.civicrm.org/index.php?topic=33928.msg143820#msg143820
It states that :

  The return value from "CRM_Utils_Address::format" is returning an
  empty string for the display name and the sort name. Those empty
  strings cause the calling function to use email address instead.

I applied her solution :

In the file /CRM/Contact/BAO/Individual.php (around 210 -215)
I replaced the line:
Code:
$displayName = CRM_Utils_Address::format($formatted, $format,  FALSE, FALSE, TRUE, $tokenFields );

New line:
Code:
$displayName = $firstName." ".$lastName;

Did similar replacement for the $sortName variable.

This solved the trouble. But as she stated, it is only a temporary solution.

Does anyone still encountered this issue with CiviCRm version 4.7.23 ?

After upgrading to 4.7.24 then to 4.7.25, I observed that the issue with the No displayName after editing or creating came back.
This is strange that Release Candidate CiviCRm version 4.7.24 was the only fix.
Does-it concern other people and other installation ?


Fatal Error on Advance search When running a CRM advanced search. If we try Adv Search>Display results as'Realted contacts' and choose and Rel type. The hit search we get the DB error.

CiviCRM: 5.13.4

I think this is now fixed in 5.14. You can try applying patch from here or upgrade CiviCRM to 5.15.1.

Thanks

Pradeep


Accessing CiviCRM contact data from external page I have a civi instance installed on WP and would like to access and display a contact's data on a different (non WP) site.

Tried to embed the whole civi page and pass the contact ID using this url format but since cross origin framing is not allowed it didn't work:

http://myserver/wordpress/wp-admin/admin.php?page=CiviCRM&q=civicrm%2Fcontact%2Fview&cid=**XXX**

How can I fetch and display a contact's details on an external page?

The best way to do that is to make use of the CiviCRM REST API.

It can be used via PHP or via JavaScript.

With that method you collect the data you need, and then you can display it as you like.

Much more information can be found:
https://wiki.civicrm.org/confluence/display/CRMDOC/REST+interface


Can't translate year(s)word for recurring contributions in CiviContribute Recurring Contributions I can't translate the Year(s) word. I don't find it in PoEdit files. Word replacing doesn't work. Any ideas?

This is a longstanding problem with no easy solution. See for example https://lab.civicrm.org/dev/translation/-/issues/53


Non-administrators unable to tag contacts using Tags tab More specifically, when they click tag checkboxes they get the message "API permission check failed for EntityTag/create call; insufficient permission: require access CiviCRM and edit all contacts". However, they are able to tag users after clicking the "Edit" button.

The solution offered by the error message (enabling, in Drupal, the ability to edit all contacts) is not practical for me since it also allows them to view all contacts (which is against our internal policy).

A little more info on my permission structure in case it's relevant: My ACLs allow users to view and edit contacts that are members of certain groups. Ex: A user named "Bob" is in the group named "Staff". Those in the group named "Staff" are allowed to view and edit contacts in the group named "Universe".

As admin, I don't have this problem. But when I log in as a lowly user I do.

Drupal version: 7.37. CiviCRM version: 4.6.3. Thanks in advance for any help.

I suspect this is because acl permissions is not consistently applied across all aspects of civicrm. In this case the API permission check is a lot more granular.

At this point, I suspect your options are to either live with the status quo and/or (ask your developer if you have one to) take a look at the code to see if you can improve the API to make the permission checking incorporate ACL's also. You can look at the code on the main contact edit page (CRM/Contact/Form/Contact.php) to see how this is done.

You could also consider using the Paid issue queue service offered by the core team if your org has the funding to do so.


Contribution Page-Amount page options now showing 0
down vote
favorite

Greeting, When I add new Contribution Page then chick on "Amount" option in CiviCRM, In the "Amount" options page all checkboxes and radio buttons except PayPal Standard checkbox will disappear also Minimum Amount and Maximum Amount text boxes not showing .

I open the page in 4 different web browser and I cleared the cash and flash my Drupal website and still these options now showing. I am using Drupal 7.41 and CiviCRM 4.6.10.

Please advice how to fix this problem.

Regards,

Check it after deleting the civicrm temporary files (../files/civicrm/templates_c). If this will not fix your issue, then check your civicrm log file (../files/civicrm/ConfigAndLog). Here your will get more details about the error.


Adding images in CKEditor I can't browse images to include in CKEditor when using CiviMail. When I click the browse button in the image window, the following pops up

[....]/civicrm/civicrm/packages/kcfinder/browse.php?cms=civicrm&type=images&CKEditor=crmUiId_1&CKEditorFuncNum=0&langCode=en

and get "500 - Internal Server Error" with suggestions that file permissions are not correct. Don't know what to check specifically, but all the resource URLS and directories are defaults and file permissions look generally OK.

I have WordPress 4.8.2 and CiviCRM 4.7.25. There are one or two similar posts about not being able to browse files, but none quite the same and answers not very specific about what what files to check permissions of. Nothing in the ConfigAndLog directory. Works fine on the demo WordPress site, but of course can't see permissions etc. I'm stuck!

I forgot to post an answer before, but am prompted to do so as someone has a similar problem.

I needed to set directory 755 and files 644 for wp-content/plugins/civicrm/civicrm/packages/kcfinder because the WP distribution didn't set permissions that worked in my hosting environment.

But since CiviCRM 5.2.2 this wasn't necessary.


making Registration End date relative I frequently have a problem when using CiviEvent that registration is not live because of problems with the end (or start and end) dates. Often this is caused by:

An event I copy and edit.
Repeating events
In both of these cases, if the end of registration could be RELATIVE to the event start time, this problem would not exist. These fixed (only) times cause me problems repeatedly!
Can this be fixed at my end? Can the code for this be change in future versions?

I feel this is very difficult to have it as part of Civi tar ball because there are many things we need to consider and come up with generalised solution. eg Algorithm to set start/end date when copying an event. How many org want this to change.
Instead i would just create an extension that would provide an option(pop-up) to set start date and end date (setting default value either today for start date and relative date to end date based on previous event dates or previous event start/end date) those field before a event is copied.


Update addressee values for all contacts after modifying Addressee Type Options I have updated the tokens in my Addressee Type Options (at Administer > Communications > Addressee Formats), and now CiviCRM is now generating my desired addressee values each time I save contacts.

This is great, going forward.

But how can I update the addressee values for all the contacts in my database, without having to go edit/save them all one-by-one?

Use the update_greeting scheduled job.

Go to Administer > System Settings > Scheduled Jobs
Click Add New Scheduled Job, and enter the following values.

"Name": "Force Update Addressee Values"
"Description": (blank)
"Run frequency": "Every time cron job is run"
"API call": select "Job", and enter "update_greeting" in the text field
"Command parameters":

ct=Individual,Household,Organization
gt=addressee
force=1

"Scheduled Run Date": (blank)
Uncheck "Is this Scheduled Job active?"

(This is important because you don't want your scheduled job to run automatically.)

Click Save.
Find your scheduled job in the list of all jobs, and click More > Execute Now
Find your scheduled job in the list of all jobs, and click View Job Log. Verify that you see "Success" in the log. Troubleshoot any errors.


How can I enable a user to renew a membership that has been cancelled? Here's what has happened so far: Membership fees increased at the beginning of the year. A user was able to renew prior to the increase being implemented in CiviCRM. The situation has been explained to the user, the payment refunded and the membership status set to cancelled.

When the user goes to the membership renewal page they see a message saying that as the membership has been cancelled it can't be renewed. I don't want to delete the membership because that would also delete the contribution record, so I'd lose the record of the fact that a payment was made and refunded.

What is the best practice approach in this situation?

One fudgy option would be to set it to 'override = Grace' then let them renew, then clean up by removing the override status

The fact that a Cancelled membership causes problems for people trying to then renew/complete have been raised in JIRA. See this and this


How to set a Task or Communication in Compucorp new CiviCase After creating new Activity Type either Task or Communication, I cannot see them in the Option for new Task or Communication. Even after the Caches cleared, the Task remains empty and Communication shows the 4 basic options (Email, Follow Up, Meeting and Phone Call).
Is there something to add in the database ?
Thanks for the help using this great new CiviCase ;-)

Silly of me. I forgot about the very clever and granular way that CiviCRM is built. Just creating a new Activity Type was not enough to have it activated in the right CiviCase.
After creating a new Activity Type (either Task or Communication), we must add these new Activities to the right Case Type that can be customised.
And voilà, it's set !


How can I create a single discount code that will work for multiple CiviEvent? I installed and configured CiviDiscount extension. When I created a discount code, I have not selected any events. Then I tried to use that code on adding participant to a event and it returns "Invalid Discount Code". On the same code, I selected one event. Then I tried to apply that code on that event registration and its worked.

I want to create a discount code that can be used for all the event registration. Please help.

Thank you!

If you are using the latest version of CiviDiscount Extension, then you should be able to see an option --any event-- on the Discount Form - civicrm/cividiscount/discount/add?reset=1.

If you select this option, you should be able to use the discount code on any event present on the site.


insufficient permissions during upgrade 4.5.5 to 4.6.10 Following the directions on this page.
WP 4.3.1, standard LAMP install. All plugins up-to-date except CiviCRM. The plugin is obviously active. Using putty.exe, I remove the civicrm directory and untar the 4.6.10 directory in its place. When I use the wp-admin/admin.php?page=CiviCRM&q=civicrm/upgrade&reset=1 upgrade URL, I get the insufficient permissions notice. I'm logged in as the user 1 administrator. Settings file is where it should be. No files have wonky read-write or owner perms. I'm at a loss as to why I am unable to get past the upgrade URL step. I'd be grateful for suggestions.

Andrei has not responded, so I will state the answer here. The problem was that I downloaded the .gz file for Drupal rather than the .zip file for WordPress. Once that was addressed, the install went as flawlessly.


Checksum to edit profile not working? I've been trying to test using checksums to access pre-filled Profiles, eg:

/civicrm/profile/edit?gid=1&cid=12&cs=12f12df65c25b4b31afb11726af4d5ca_1438265969_168

However it does not seem to be working in the current version of CiviCRM (4.6.x). The profile appears without any information filled, and there are no error messages displayed.

Using the same approach (same contact ID and checksum) to pre-fill an event form is working fine, eg:

/civicrm/event/register?id=442&reset=1&cid=12&cs=12f12df65c25b4b31afb11726af4d5ca_1438265969_168

Is anyone else experiencing the same problem? If so I'll submit a bug report.

Documentation for checksums at the bottom of this page: http://wiki.civicrm.org/confluence/display/CRMDOC/Tokens

I believe that for profile edit, you need to use id rather than cid for the contact id, as per the docs you linked to:

http://www.myorganization.org/civicrm/profile/edit?reset=1&gid=N&{contact.checksum}&id={contact.contact_id}


Add a contact to an organization through "profile" public form For now our public subscription form is handled by a "profile" that create/modify a contact.

I want to add the organization which the contact belongs to but I don't know how to it ?
Is it possible to have a public list the subscriber can have access to ?

I think that in pure CiviCRM all you can do is add the Current Employer field to the profile, which is then a text only field.

If you want that field to be an autocomplete then I think you should try the Public Autocomplete of Organisation Names extension. There is also a blog written about it here


Problems setting up cron Civi 5.14 on WordPress 5.0

Hello,
I have installed and am configuring Civi for a new client.  He is on Inmotion Hsosting and civi is installed in a subdomain.   I am having problems getting cron to run. It is not running by itself at all.  Am I am missing a step somewhere or is my command line missing something? The wordpress user password is only numbers and letters, no other characters.

Cron Command line:

php -q /home/username/secure.domain.org/wp-content/plugins/civicrm/civicrm/bin/cli.php -s domain.org -u wordpressuser -p wordpressuserpassword -e Job -a execute > /dev/null 2>&1

Thank you

UPDATE

I just finished talking to Tech Support for the host and they said that cron job has been running every 5 minutes without fail. Yet in Civi it says it has not run since June 29th, 2019 3:46 PM.

On another note. I just tried a test scheduled mailing. I set it to send 5 minutes later.  It still has not sent. The server host shows that my cron command is running every 5 minutes but it is clearly not doing what it should be doine. Civi says the resource URL is wrong and cron is not running. could this be related?

I prefer the wp-cli method to all other methods.   Can this work at your host?  https://docs.civicrm.org/sysadmin/en/latest/setup/jobs/#wp-cli

If you do not have Command line access, but the host provides a cron interface and wp-cli you can create a shell script to call:

#!/bin/bash
/path/to/cli/php /path/to/wp --user=<cron user> --url=https://<site> --path=/path-to-web-root --timezone="<php timezone>" civicrm api job.execute auth=0

In your example calling just php may be the issue as cron may not now the path to the cli php executable.


Custom Field Multiple Choice Through the API? We'd like to retrieve a filtered list of the multiple choice options for one of our custom fields through the API, with the output being both the Label and the Value for that field (so we can use it in a dropdown).  Is there an API call to get all multiple choice options for a specific custom field?  Or do we need to write a query directly against the database table?  Thanks.

Yes, if you visit your api explorer you'll be able to play with this in detail, but the api call you probably want is:

civicrm_api3('contact', 'getoptions', array('field' => 'custom_123'));

where 123 is the id of your custom field.

By the way, you haven't said how/where you are developing this form, but if it's on your own site with access to the ajax api, then a big shortcut for you would be to simply drop in an entityRef field (entity type = "option_value") and given the correct option group it will do everything else for you.


Multiple PDF in one CiviRule Is it possible to generate and send several .pdf files with CiviRules "send PDF" function? I want to send an invoice and a certificate that have different templates.

I could send several emails but one email with 2 attachments sounds better. :-)

regards,
Guillaume

This is not so much a CiviRules question but more a PDF API question. At this point it time I do not think this is possible. But I know we have 1 party interested in this, you might want to contribute too?


How to fix it? By pressing “Print Summary”, there are 2 extra blank pages printed By pressing "Print Summary", there are 2 extra blank pages printed. One of them is before the content and the other is after. How can I make them disappear? I'm using CiviCRM version 5.10.4. Thanks.

There is CSS that is adding the space. When I remove the height for the following it will not print blank pages.

crm-container div.form-item {
height: 100%;
}

I would create an "extras.css" so that you can override some of the built-in CSS. You can specify a custom CSS file under Administer > System Settings > Resource URLs: Custom CSS URL.
Note: the path to the CSS file should be accessible from a web browser.

If you add the following to the extras.css then it will fix the print of extra pages:

#Print1 div.form-item {
    height: 0;
}

When you go to print summary you can cancel the chrome printing pop-up and then inspect the CiviCRM page (it has the "print" and "done" buttons). You can further refine the print style using the Chrome Dev tools.


Get "Unable to extract symbolic link" error message when trying to install civicrm 5.19.1 module in Drupal I installed Drupal 7 and when I try to add the civicrm (version 5.19.1) module into it, I get next error message on the web interface of Drupal:

  Unable to extract symbolic link
  {temporary://update-extraction-0a20b282/civicrm/vendor/pear/log/README.rst}

and the module is not installed. I would like to know how to solve this.

UPDATE: This is now fixed in 5.31.

I see what you're saying. Thanks for reporting. I've never used that alternative before. I believe it's coming from this line where it excludes the docs folder so the symlink is no longer valid.
https://github.com/civicrm/civicrm-core/blob/5.19.1/distmaker/dists/common.sh#L166
I've made a ticket at https://lab.civicrm.org/dev/core/issues/1393


Can not find Civicrm.settings.php Excuse me I am new to Civicrm and got stuck, I installed Civicrm-drupal from github, I wanted to check if the configurations are correct so I ran the command "civix civicrm:ping", but I got this exception:

[Exception]
  Failed to locate civicrm.settings.php. By default, this tool searches the p
  arent directories for a standard CMS (Drupal, WordPress, etal) and standard
   civicrm.settings.php. Symlinks and multisite configurations may interfere.
   To customize, set variable CIVICRM_SETTINGS to point to the preferred civi
  crm.settings.php.
civicrm:ping

I searched for this exception and found out that I need to change the directory where the civicrm.settings.php is, and usually it is in this path: sites/default/civicrm.settings.php.

Now the problem is that I can not find Civicrm.settings.php anywhere, not in the above path nor anywhere.

Please advise me.

Regards

Normally you don't install from github you would get it from https://civicrm.org/download and then follow the instructions at https://docs.civicrm.org/sysadmin/en/latest/install/drupal7

If you are looking to do development it might be easiest to start here instead: https://docs.civicrm.org/dev/en/latest/tools/buildkit/


Upgrading from 4.7.12 to 5.1.2 on Wordpress Its been a while since we performed and update on our site. Would there be any issues upgrading to the latest version from such an old version?

Not particularly. We have nursed upgrades through from 4.4 and 4.6 (yes we inherit some shockingly old systems occasionally) without significant problems. On that scale 4.7.12 doesn't seem to be 'such an old version'.

If you backup code and db and give it a try and you hit issues then just roll back and come back on here with some details of problems you encounter.

(Edit to incorporate Ramesh's helpful comment)

Refer this link docs.civicrm.org/sysadmin/en/latest/misc/switch-servers also you can refer to docs.civicrm.org/sysadmin/en/latest/upgrade/drupal7


Best Way to Track Logs I am running into two separate issues that I need to address with logging.

I am having trouble with the MailChimp extension and turned on logging and I do not know the best way to get the logs.

I am having an upgrade fail and I need to know where the logging for this.

Thanks,
Josh

I recommend you install https://civicrm.org/extensions/civicrm-log-viewer - it provides a way to view the main CiviCRM configandlog from within the CiviCRM GUI. Look for it under Manage Extensions -> Add New.


Wordpress Installation Bug? Anyone has experience installing CiviCRM in Wordpress? I tried to follow the installation guide but I come with this problem, Google doesn't offer much help. It comes with an error in the database name "The database name provided is not valid. Please use only 0-9, a-z, A-Z, _ and - as characters in the name."
Any help or direction to get help will be appreciated.

For whatever reason, Civi requires it to have at least one letter (lower case or upper doesn't matter).
See https://github.com/civicrm/civicrm-core/blob/5.29.1/CRM/Core/DAO.php#L2992


What is the correct way to import fields with line breaks? I've noticed that CSV files containing "\n" will import these characters literally. That makes sense for single-line text, but what is the correct way to handle for note fields?

I believe if your csv includes a "real" line break (not a backslash and an "n" but the actual line-break character) then it will be imported as such.


Civicrm Failed upgrade Have Civicrm 5.12.4 and wished to upgrade to 5.14.0
On running database upgrade part failed right at the end with:

An error has occurred. 0 Class 'CRM_Sparkpost' not found

When checking sparkpost with Civi menu:
Super User->Configure CiviCRM->System Settings->Outbound Email(SparkPost)
failed to take me to the SparkPost menu
So, disabled and then re-enabled the SparkPost exstension. Now the SparkPost menu above works.
Although the above seemed to work, CiviCRM still complained about needing an update to 5.14.0, despite it reporting that version at the status line at the bottom.
So, decided to test upgrade again from scratch, using a copy of today's live database - this time disabling SparkPost extension first.
Now the database upgrade just stops immediately with message:

[Executed: Cleanup old files
CiviCRM is now broken!

Tried again from scratch without first disabling SparkPost - same problem.
Any ideas?
ubuntu server 16.04.1
php 7.1.30
Joomla 3.9.6
CiviCRM 5.12.4

To confirm this is now fixed in the latest version available of the sparkpost extension available here: https://github.com/cividesk/com.cividesk.email.sparkpost


List members of organisation belonging to sub-types I have my organisation split between local sport clubs.
I'm looking for a best way to list all members of particular clubs - should I use Drupal Views or Civi search'es or reports?
Thnx
R.

Partly depends who needs to see the report but we tend to build all such results in Drupal Views.


"Groupings" of Option Values: are they actively used? When editing an Option Group directly (from Administer / System Settings / Option Groups) (but not when editing the options for a custom field), I can fill in a "Grouping". There is a corresponding column "grouping" in civicrm_option_value.

The grouping isn't displayed when looking at a list of option values in the option group, or when editing a custom field on a contact.

Is there anything that makes use of the grouping within core? I'm encountering a situation in my work where it may be useful, depending on what it actually does (long list of school subjects, grouping by qualification system).

Feel free to use it, some other extensions (eg. CiviHR) are using the grouping field as well as the core

+-----------+-----+
| grouping  | t   |
+-----------+-----+
| NULL      | 872 |
| Absence   |   3 |
| Avery     |  11 |
| Closed    |   1 |
| Opened    |   2 |
| Timesheet |   9 |
| Vacancy   |  11 |
+-----------+-----+


failed to open stream after PHP upgrade to 7.3 Started getting this error on some Civi pages after upgrading PHP to 7.3 on  server running php-fpm and nginx.

Works fine after restarting php-fpm but need to restart every morning to get around with these issue. Has anyone come across this issue?

Warning: include(/var/sites/drupalsite/files/civicrm/templates_c/en_GB//%%30/307/307241E0%%Extensions.tpl.php): failed to open stream: No such file or directory in include() (line 1911 of /var/www/drupal759civi5192/sites/all/modules/civicrm/packages/Smarty/Smarty.class.php).

May be a stupid question but have you purged caches / cache folders entirely? e.g. Clear the templates_c folder?


Can a person inside a group be granted ACL Access to the group? I've been trying to set up ACL's for a number of different chapters in a national organization's civicrm.  The idea is that the secretary for each chapter would be able to access members in that chapter and update their information.

So I
1.) Keep track of who is a member in the chapter through relationships between the members and the organization contact record for the chapter.
2.)Created a smart-group that generates a list of members who have an active relationship with the organization's contact.
3.) Created an ACL group and added the chapter's secretary
4.) Created an ACL Role for the Chapter
5.) Assigned the ACL group for the chapter to it's ACL role.
6.) Created several rules (view the group (which in this case is the smart-group based on the relationships), edit the group, edit custom fields)

However whenever I login as the secretary for that chapter, I am unable to view the members of the chapter, or my own civicrm contact page.

When I do the same with a 'test' login, it works.

I suspect that there is something weird happening because the contact for the chapter's secretary is in the smart-group that I am assigning them to have these ACL rules over.

Has anyone else had this problem?  Am I just doing it wrong, or is this some kind of bug?

Thanks,
Matt.

Ah, ok.  So I had to enable the " CiviCRM: view my contact" and "CiviCRM: edit my contact" fields under Drupal People -> Permissions.  Then if they are in the smart group I'm giving access to, they can see themselves.


CiviVolunteer Stopped Working with upgrade to 4.7.29 I upgraded CiviCRM from 4.7.28 to 4.7.29. CiviVolunteer is at 4.7.21-2.2.3. I have active projects but the "Manage Volunteer Projects" screen comes up blank. The "Search for Volunteer Opportunities" reports "No results found".

I can create a new project, but it also doesn't show up. I see the projects in the database (civicrm_volunteer_project), although I noticed the new project I tried to create is listed in three identical records.

I have Angular Profiles 4.6-1.0.2 and am on WordPress 4.9.1.

I tried "cv flush" as described in https://issues.civicrm.org/jira/browse/CRM-21210.

I'm not sure this was the problem, but the default PHP interpreter was at 7.1. I noticed CiviEvent was also not working (error message about "pass by reference"). I set PHP back to 5.6 and both CiviEvent and CiviVolunteer seem to be working.

The CiviCRM status screen is giving notice "PHP Out-of-Date: This system uses PHP version 5.6.32. This meets the minimum recommendations and you do not need to upgrade immediately, but the preferred version is 7.0."

Update July 3 2018: Currently at CiviCRM 5.2.2 with CiviVolunteer 4.7.31-2.3.1 and was able to move to PHP 7.1.18 with no issues.


Unable to CANCEL or DELETE a Scheduled Mailing (Mosaico is installed) With either a Send Now or Scheduled mailing (Mosaico created) I unable to Cancel or Delete the Mailing in the Find Mailings page.

Using WordPress 4.9.4, CiviCRM 4.7.30 and the following related extensions:
Angular Profiles (org.civicrm.angularprofiles) version 4.7.31-1.1.0
FlexMailer (org.civicrm.flexmailer) version 0.2-alpha5
CiviCRM Bootstrap theme (org.civicrm.shoreditch) version 0.1-alpha16
Mosaico (uk.co.vedaconsulting.mosaico) version 2.0-beta3.1512698300

When I click Cancel for the Scheduled mailing on the Find Mailings page, I received the following dialog:

And then the following dialog:

Then it returns me to the Find Mailings page with no change to the mailing.  I've tried to refresh the screen also to see if there was a delay.

April 4/22/2018 Update:

Providing the following additional information to this problem as it might be related.  I am also unable to delete a mailing using the DELETE action on the Draft / Unscheduled Mailings listing.  I AM able to delete the mailing if I click CONTINUE from the listing page and then select DELETE DRAFT when viewing the individual mailing.  The link that the DELETE action is posting when on the listing page is:

http://myorganization.org/wp-admin/admin.php?page=CiviCRM&q=civicrm/mailing/browse&action=delete&mid=16&reset=1&confirmed=1

and the page says that the Link has expired:

If you use the Events Manger plugin try navigating to https://yoursite.com/wp-admin/edit.php?post_type=event&page=events-manager-options&action=update&update_action=timezone-backcompat if you see a description about the timezone settings with a button to Finalise Upgrade on that page, it's likely the issue is caused by a non completed update of the Events Manager plugin.

Click on Finalise Upgrade, after the upgrade is completed you should be able to cancel/delete scheduled/unscheduled mailings.


CiviMobile local timezone When I create activities etc. on CiviMobile in my Time Zone I am in it displays as 9 hours later.  Currently I am -7 GMT and when setting an activity on the app it automatically changes it to +2 GMT (9 hours ahead of my time zone). When I look on CiviCRM, the activities I created in CiviMobile are 9 hours ahead there too. I’m using the latest CiviMobile on and iPhone. How do I get CiviMobile to use the time/time zone on my phone?

Jerry, Welcome to CiviCRM stackexchange, your civicrm database stores certain fields with data-type "DATETIME". To improve timezone support, you may want to change these from "DATETIME" to "TIMESTAMP".
For further discussion, please visit https://github.com/civicrm/org.civicrm.doctorwhen


Read only fields for interviewing I'm setting up a walklist for volunteers to interview people through civicampaign/civisurvey. While they are conducting interviews, I'd like it so that there is a read only field, address, that is listed. I made it a custom profile that includes address as a read only field, but when conducting a survey, only some addresses are read only, but others are editable. I'm unsure why some are read only and some aren't. Can anyone give some advice? Thanks!

I found out the issue. The reason that some of them were read only and some weren't was due to a bad import. It seems like the Contacts that were having those issues, had more than 1 empty Supplementary Addresses. There would be 1 Main Address with it geocoded and filled in, but there would be like 4 empty address entries. Removing all the invalid supplementary addresses fixed the issue. Not too sure why those addresses would mess up the results but hey, at least it got fixed!


Getting an error while viewing an activity. How to resolve it? `

Blockquote
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 are not authorized to access this page.
`

The logged in user doen't have permission to view the activity. Does the activity type belong to Case? Or Non-Contact component? Do the user have edit all contact permission?


Civicrm webform to edit membership custom fields I am trying to create a webform using the Webform Civicrm Integration module.  The form would allow users to edit custom fields associated with existing memberships.  Our members are required to attend an orientation sometime after signing up for their initial membership.  I would like to create a form that would allow users to enter the date of a Member's orientation session, which is a custom field associated with Memberships.  I can't figure out how to do this for an existing, already previously created membership.  Is this possible with Civicrm Webform?

If not, would it be possible using a membership directory profile instead (haven't been able to figure out a way to include the Orientation date custom field for a profile either, since it would involve combining Contact and Membership fields).

Any suggestions?

I am using Civicrm 4.7.29 in Drupal 7, with Webform CiviCRM Integration 4.21.

Absolutely possible with Webform CiviCRM! A few thoughts:

upgrade to CiviCRM 5.3.1 or above (a security update)
by giving members logins or by using the checksum token you can make it such that their all ready exisiting in the database details (Name, Address, Membership Type) are displayed to them - you decide if you want them to be able to update those
of course in addition to filling out the blank Custom fields on the Membership;
look to enable the custom fields on your Membership in the CiviCRM tab for your webform -> Membership section (on the left) -> at the bottom of it. Here is an example: that Checkbox ALM is a CiviCRM custom field on the entity Membership in this example. Look here to expose your custom date fields to your Webform.


Drupal CiviCRM Entity in Rules: How to loop over all members of a group? I am using civicrm_entity-7.x-2.x-dev to build a rule using Rules module. I want to use the action "CiviCRM Contact Send Email" to send an email to all members of a CiviCRM group.

So I need to loop over all of the contacts in a group and fire this action. The problem is that I don't see a way to provide a list of group-member contacts as a Rules loop.

I tried "Fetch CiviCRM entity by property" which can fetch a group using the Group ID. That works fine. However once this group entity is fetched, there is no variable like fetched_group:list-of-member-contacts - I only get a chain that leads to the contact who created the group or the contact who last updated the group. No "list of contacts in group"

Any pointers on sending CiviCRM mail with Rules to existing CiviCRM Groups/mailing lists?

You can use the Views Rules module: https://www.drupal.org/project/views_rules

This will provide a Views Loop: from the project page: "A view loop is similar to a regular Rules loop, but allows looping over rows of view results."

So enable that module, and then create a view that lists contacts that are in the group you desire.

Some basic instructions from the Views Rules project page:

Install the module (and make sure Rules UI and Views UI are both enabled)
Configured Views
    Add a view (with some fields)
    Add a "Rules" display
    Configure row variables
    Save
Configure Rules
    Add a rule
    Add the "Collect view result rows" action or add a view loop
    Select the "Rules" display
    Configure the parameters and variable names
    [Do what you want with the newly available variables]


How do you import (custom) relationship fields? I am  prototyping and testing import from M$ Access. Up to now I could quite easily import relationships, but I am missing the way to import also the relationship core Start date and custom fields I created in some relationship types. It seems like contact import is not prepared for this, right? So the only other way would be writing custom import scripts using the API? Any hints or documentation are appreciated!

From what I can tell this functionality is not available in core imports, which allow relationships to be imported as a side function (e.g. when importing contacts, you can specify relationships on the side).

There is an extension available called "CSV GUI Import to api" which allows more targeted imports, including one directly to Relationships.

I think you need to use Internal Contact IDs (I tried to find how to do it with external IDs and couldn't manage it), as well as having other info specified:

In the screenshot above (from the second field matching step), "Year" is a custom field that I added to a certain relationship type, and which can be imported to in this way. You can see the core date fields are also available.


What's the best way to take a 'snapshot' of membership counts at a point in time? I want to create a graph of current membership counts at various intervals - weekly, biweekly, monthly, annual. What's the best way to do this?

This is a tricky one - see these questions for a variety of approaches:

Is it possible to get point-in-time membership data?

How can I see the number of memberships at a given date in the past?

Membership Status Report


Found typo causing error in CRM_Utils_System_DrupalBase->formatResourceUrl() On CiviCRM System Status page I get a permanent error message on the top of the page.

Warning: file_exists(): open_basedir restriction in effect. File(/var/www/clients/client5/web16/websites/default/files/civicrm/persist/contribute/dyn/angular-modules.aa49fb2433945dcf4a451bb96fb1a0e9.js) is not within the allowed path(s): (/var/www/clients/client5/web16/web:/var/www/clients/client5/web16/private:/var/www/clients/client5/web16/tmp:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin) in CRM_Utils_System_DrupalBase->formatResourceUrl() function (/var/www/clients/client5/web16/web/sites/all/modules/civicrm/CRM/Utils/System/DrupalBase.php line 126.).

In CRM_Utils_System_DrupalBase->formatResourceUrl() function, in line 126, I think there is a typo: if I use if (file_exists(DRUPAL_ROOT .'/'. $file)) {
the error message disappears. In the original text the '/' is missing: if (file_exists(DRUPAL_ROOT . $file)) {

Is it a bug, or I made some mistake?

Your code path is slightly different from your files path:

code: .../web16/web/sites/...

files: .../web16/websites/...

That looks like a typo - check your directories and resources settings at Administer > System Settings > Directories and Administer > System Settings > Resource URLs


Installer says cannot create triggers but I can with phpMyAdmin Any suggestions how to get the civicrm installer to recognize that I have permission to create triggers. The installer says I don't, but my host says I do.
I can create triggers with phpMyAdmin.
I am using MySQL - it is a new site, but I don't know the version number.
I have asked. Will enter it when I know.

Here I am substituting the word username for my real username.
I logged into WordPress with user: username, and
logged into phpMyAdmin with user: username
I ran the query you suggested and got:
Your SQL query has been executed successfully.
SHOW GRANTS FOR 'username'@'localhost' GRANT USAGE ON . TO 'username'@'localhost' IDENTIFIED...
GRANT ALL PRIVILEGES ON username_site.* TO 'username'@'loc...
GRANT ALL PRIVILEGES ON username_civi.* TO 'username'@'loc...

I found getting SUPER privileges by the host was necessary.
After that the warning about Triggers disappeared.


Comptability support New here, trying to know more about CiviCRM !

Is CiviCRM (and/or its extension)providing any support in terms of accounting for NGOs ?
If we already have a website on wix, is it possible to integrate some features (online donations, memberships forms, newsletter suscribers database etc..) ?

Is there a technical assistance (phone, email..) in the CiviCore Team available to respond to urgent matters, bugs, etc if need be ?

Thanks a lot for your precious help and comment !

Inès

Trying to provide some answers:

Depends on what you mean by support for accounting, can you define that in a little more detail? CiviCRM can store contributions, event fees and membership fees and will store them with a specific financial type, linked to a financial account. For each of those contributions, event fees and member dues it will also generate financial transactions. You can assign those transactions to an accounting batch, which you will be able to download in CSV format (or IIF out of the top of my head) which you can then import in your financial system.
It is certainly possible to communicate with CiviCRM from any type
of website using the API. So it will also be possible to create
online donations etc. If you want to use some of the standard
generated pages, you can probably do some by including the page in
your Wix website. But it will require some consideration about what
you want exactly, what the alternatives are and what the pros and
cons of each alternative are. Some of the NGO's I work with want
their public website and CiviCRM on separate servers for
security/privacy considerations (and it makes sense IMO). But the
consequence is that some of the nice and easy-to-use form modules
that allow easy access to CiviCRM data need some adaptation.
There is certainly technical assistance from a CiviCRM partner in
your region. There is as far as I know no Core Team technical
assistance because that does not fit into our community model. It
would mean having a big Core Team, while we have a small one
focusing on the core product and a large group of partners focusing
on supporting partners. So check where your nearest partner is
here. All of the contributors and partners you will find on
this list are active in the community and know their stuff when it
comes to CiviCRM. You can obviously also try to find another
organization that is not on the list that says they know about
CiviCRM, but you run a little more risk then with the listed
contributors and partners.


"does not equal" operator not working We're trying to set up a search that includes contacts with one tag but excludes ones with another tag. Yet the "does not equal" operator does not appear to be functioning. Any ideas what the issue could be?

You have to watch out using the search builder when your search involves related entities.  Searching for does not equal X on something doesn't exclude contacts with a related entity with a field's value as X, it searches for contacts who have that related entity so long as the value doesn't equal X.

In other words, searching for contacts where tag name does not equal Prospect doesn't exclude all prospects; it finds all contacts with tags so long as those tags aren't Prospect.

Although it seems foreign in the context of tags, groups, and some entities, it makes lots of sense regarding addresses: if you search for people where the state does not equal Alabama, it'll exclude people who only have an address in Alabama, but it'll include people who live in Alabama but have a work address in Georgia.

To reliably exclude contacts, you either need a specialized search like the include/exclude search, or you need to run a search with the criteria you want to include on, tag those contacts, run a search with the criteria you want to exclude on, and remove the tag from those contacts.

For example, to find everyone in Baltimore who has not attended an event in the past year, run a search (Advanced Search is easiest) for everyone in Baltimore, and use the "Actions" drop-down to tag all the results with a new tag called "Baltimore - no events".  Then, run a search for participants at events in the past year, and use the "Actions" drop-down to untag all the results, removing the "Baltimore - no events" tag.  (It doesn't matter that your second search will catch people in Glen Burnie or whatever who never had the tag in the first place.)


HTML_QuickForm_Controller: Unhandled action "_qf_Main_reload" in page "Main" Contribution page with membership signup enabled get HTML_QuickForm_Controller: Unhandled action "_qf_Main_reload" in page "Main" error once the form is submitted from main page
CiviCRM : 5.35.1
CMS: Drupal

Could you please confirm if you have CiviDiscount extension enabled and on latest 3.8.2 version?
Similar issue was recorded for CiviDiscount on gitlab.
HTH
Pradeep


Counties - US ones but based in UK I have created an event and want to collect the attendees address including the county.  Although based in the UK, the available options registering on the event page only offer a couple of American ones.  Can this be changed to UK ones?  There are UK options when you create a new contact on CIVI.

I tend to avoid using the drop down field for counties in the UK since - unlike States in the USA, or Departments in France, for example - there is no one true definition for them (is it London, Greater London, Islington, etc.).

Instead, I remove the county drop down and add another supplemental address line if required.

Although there are some forms on the web that use a drop down for counties, I suspect more than half just use a standard text field.

Flippant side note: the important thing to collect for UK addresses is the awesome UK postcode. As soon as you have that, everything else pales into insignificance :)


Missing information when Importing Contributions via API I want to import a list of contacts from a csv file (specifically: the Contact IDs), and create a Contribution via API for each one of them. Purpose: These contacts are all ordering the same articles, but have not yet ordered via the CiviContribute system, so we need to import the data.
I wrote a PHP script for that, which is saving the new Contribution correctly on each Contact. It contains the following API call:
civicrm_api3('Contribution', 'create', [
        'financial_type_id' => 11,
        'receive_date' => 20201008150000,
        'total_amount' => 11.15,
        'contact_id' => $civicrm_id,
        'contribution_status_id' => "Pending",
        'payment_instrument_id' => "Überweisung",
        'is_pay_later' => 1,
        'price_set_id' => 25,
        'skipLineItem' => 1,
        'api.line_item.create' => [
          '0' => [
            'price_field_id' => 55,
            'qty' => 1,
            'label' => 'article name example 1',
            'line_total' => 8.57,
            'unit_price' => 8.57,
          ],
          '1' => [
            'price_field_id' => 56,
            'qty' => 1,
            'label' => 'article name example 1',
            'line_total' => 2.05,
            'unit_price' => 2.05,
          ]
        ]
      ]);

But it makes two mistakes:

The value in the "Item" column in the Contribution View and the Invoice is a default value "line item". I manage to solve this by adding the article name into the code ('label' => 'article name example 1'), but it should be automatic.

The tax is not added in the Contribution View and the Invoice. I think this shows that the new Contribution is not properly connected with its Financial Type (or Price Set?), because the tax is calculated automatically depending on the Financial Type, I think. I added the 'financial_type_id' to the api Call, but the problem persists.

Any hint anybody?

This should work
civicrm_api3('Contribution', 'create', [
    'financial_type_id' => 11,
    'receive_date' => 0201008150000,
    'total_amount' => 11.15,
    'tax_amount' => 0.53,
    'net_amount' => 10.62,
    'contact_id' => $civicrm_id,
    'contribution_status_id' => "Pending",
    'payment_instrument_id' => "Überweisung",
    'is_pay_later' => 1,
    'skipLineItem' => 1,
    'api.line_item.create' => [
        'entity_table' => 'civicrm_contribution',
        'contribution_type_id' => 11,
        'financial_type_id' => 11,
        'price_field_id' => 55,
        'label' => 'article name example 1',
        'tax_amount' => 0.53,
        'unit_price' => 10.62,
        'line_total' => 10.62,
        'non_deductible_amount' => 0.00,
        'qty' => 1.00,
      ]
  ]);


Integration with Facebook Lead Ads Someone knows or has made some integration between Facebook Lead Ads and CiviCRM?

I'm looking for a custom integration as described on https://developers.facebook.com/docs/marketing-api/guides/lead-ads/

Is my Facebook Conversion Tracking Pixel extension what you're looking for?


Redirect to page after Event Signup We'd love to build custom 'Thank you' pages for our events using Drupal 7x., instead of using the WYSIWYG editor field on the CiviEvent page. Is there a way we can use Rules or CiviRules to immediately direct someone to a custom page after they sign up for an event? We can't use Webform CiviCRM because it does not offer price set support.

If you're interested - backstory: We want to have better social media integration, "share this event", contact us info, maps, etc. on this page. It seems somewhat limiting to use CiviCRM templates for creating this functionality when our page editing tools in Drupal are wonderful and easy.

Does https://github.com/eileenmcnaughton/nz.co.fuzion.frontendpageoptions work on 4.7?

Drupal 7.x, CiviCRM 4.7.x

https://civicrm.org/extensions/front-end-page-options is a likely solution and yes it works on 4.7 according to my list of which of our clients sites is using which extension ;-)