Having issues updating to civiCRM 5.32.2 So I've downloaded the file to update to civiCRM 5.32.2 and I'm on WordPress 5.6.  When I upload the file to the plugins page it tells me that I need to overwrite the other version.  Cool no problem.  When I tell it to do that it tries for a few minutes and then it gives me a 503 error.

Service Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try
again later.
Additionally, a 503 Service Unavailable error was encountered while
trying to use an ErrorDocument to handle the request.

If I then try to activate the new version of civiCRM the whole site crashes with a fatal error that says the following.

Warning: include_once(/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/includes/civicrm.users.php):
failed to open stream: No such file or directory in
/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/civicrm.php
on line 623
Warning: include_once(): Failed opening
'/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/includes/civicrm.users.php'
for inclusion (include_path='.:/opt/alt/php74/usr/share/pear') in
/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/civicrm.php
on line 623
Fatal error: Uncaught Error: Class 'CiviCRM_For_WordPress_Users' not
found in
/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/civicrm.php:624
Stack trace: #0
/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/civicrm.php(379):
CiviCRM_For_WordPress->include_files() #1
/home/enaosj1vvfz0/public_html/wp-includes/class-wp-hook.php(287):
CiviCRM_For_WordPress->setup_instance('') #2
/home/enaosj1vvfz0/public_html/wp-includes/class-wp-hook.php(311):
WP_Hook->apply_filters(NULL, Array) #3
/home/enaosj1vvfz0/public_html/wp-includes/plugin.php(484):
WP_Hook->do_action(Array) #4
/home/enaosj1vvfz0/public_html/wp-settings.php(420):
do_action('plugins_loaded') #5
/home/enaosj1vvfz0/public_html/wp-config.php(89):
require_once('/home/enaosj1vv...') #6
/home/enaosj1vvfz0/public_html/wp-load.php(37):
require_once('/home/enaosj1vv...') #7
/home/enaosj1vvfz0/public_html/wp-admin/admin.php(34):
require_once('/home/enaosj1vv...') #8
/home/enaosj1vvfz0/public_html/wp-admin/plugins.php(10):
require_once('/home/enaosj1vv...') # in
/home/enaosj1vvfz0/public_html/wp-content/plugins/civicrm/civicrm.php
on line 624 There has been a critical error on this website. Please
check your site admin email inbox for instructions.
Learn more about debugging in WordPress.

I have all of my other plugins deactivated so I know it's not a conflict there.  I've tried using multiple themes so no conflict there.  I've even addressed caching issues as described in another thread (Errors involving /wp-content/plugins/civicrm/civicrm/CRM/Extension/ClassLoader.php)
The only other suggestion my hosting company had was to unzip the file myself and replace the files manually which just seems like a good way to screw up my data.

You can't use the WordPress plugin update system. You must do it via either ftp or SSH. You will find the full documentation at https://docs.civicrm.org/sysadmin/en/latest/upgrade/wordpress/
While complete and accurate, the comprehensiveness of that doc can be a little overwhelming. I created a checklist for myself to cover the bases on my server. It may be helpful to you. You can see my CiviCRM upgrade on WordPress summary here: https://kapn.net/support/civicrm-upgrade/
Some bits are very specific to me but they should be obvious. If it looks like gobbledygook to you then ignore it and focus on the official docs above.


CiviEvent: Public link for events of a specific type Running CiviCRM 5.10.4 and Drupal 7.65.

We have several different event types in CiviEvent (e.g. PD Workshops, Volunteer Trainings, etc)

I'd like to be able to have a page on our website which automatically displays all the active events in specific event types. So then e.g. on our Volunteer page, rather than manually updating the page with the event links of upcoming  training dates, I could link to another page which lists all the upcoming events that have the event type "Volunteer Training".

Is this possible?

You should be able to do this using a drupal view - You might need to enable the civicrm entity module.

You'll want to create a view that lists Civicrm Events then filter down the criteria you are using.


Why would bounce processing put all emails into CiviCRM.ignore mailbox? I did a first mailing and then got the bounce processing job working.  It just moved all the bounce responses (about 100) to the ignore mailbox and did not mark any of my contacts.  How do I tell what went wrong? There is no info in the log other than saying that it rand the job successfully.

Also I got emails of the form:
To: u.68.3087.7ed8aa555f763f19@californiacalvary.org
iOS Mail sent this email to unsubscribe from the message “One Week To Go!”.

Should these get processed?

It looks like CiviCRM uses the domain specified in the bounce mailbox settings to generate a regex to match incoming bounce messages.

From the info in your question, I suspect CiviCRM is directing bounces to a (subtly) different domain name. As a result, it doesn't think the bounces are intended for CiviCRM to process, and moves them to the ignored folder (as CiviCRM would with other "not for me" email).

See your mail account settings (Admin > CiviMail > Mail Accounts).

Try ensuring both the return address and site domain match, and see if the problem persists.

Once correctly configured (or, temporarily misconfigured to match the misspelled inbound address!), you can move those messages back from the CiviCRM.ignored mailbox to the INBOX, and re-process them.


Failing to create Wordpress account with user name provided in profile on contribution page Initial situation
We have a contribution page to purchase a membership. A profile is used to collect address data. Furthermore, this profile is configured to also create a Wordpress user account: The user can enter a Wordpress user name and also check its availability. And the user can enter the desired password in the two boxes.
The issue
Until recently, everything was working as expected. Upon confirming the contribution, the Wordpress user was created with the given name and the user was automatically logged into this account at the end of the transaction.
Now we have a changed behavior:
The transaction completes without any error, but the user is not automatically logged into the newly created account any more. It is NOT possible to log into the account with the entered username and password.
In Wordpress, a new user is created, but not with the entered user name. The username is instead derived from the address information (e.g. mr-frank-smith) and an unknown password is assigned. So the user has to use his e-mail address for login and initially he has to go the "forgot password" route to request a new, known password.
System information
CiviCRM 5.34, but the behavior was probably also present with 5.32.
Wordpress 5.6.2 with the most recent Member Sync and Profile Sync plugins.
Additional Information
Setting up just a page with a profile to enter an e-mail address and create a Wordpress account does work as expected. Upon completion of the form, the account gets created with the given username and the user is automatically logged into the account.
So, somehow the problematic behavior is linked to the contribution page/signup process.
I tried it with the Stripe payment processor as well as with the dummy processor and the issue occurred in both cases - so it is probably not related to a particular payment processor.
The Question
Can this changed behavior also be observed on other installations? Wondering, if some settings etc. might interfere. If this is a known issue: Are there any good workarounds? Asking new members to request a new password after they entered one during sign-up is not so ideal...
Edit: Further investigation
On a newly created virtual server I set up the lastest Wordpress without any plugins and also the latest CiviCRM (5.34) without any plugins. I experience the same behavior:
A profile with settings to create a Wordpress account does create this account, if it is used standalone on a page. If it is used on a contribution page, the Wordpress account does not get created. Seems to be a bug most likely introduced in one of the latest versions of CiviCRM.

It is indeed a confirmed bug in CiviCRM 5.34 which is now tracked under the following issue: https://lab.civicrm.org/dev/wordpress/-/issues/94


Google Apps bounce processing - is the wiki current? I'm fairly savvy with civicrm in general but bounce processing seems to always stump me.  Trying to use Google Apps for the return channel, I saw this post on the wiki: Step-by-step+Return+Channel+on+Drupal+-+Google+Apps+-+CentOS, which is referenced here: CiviMail+Installation.

Is this still the best practice to get the return channel to work?  If so, I'm confused by the reference to return@domain.org. If the organization sends from info@domain.org can't one simply use the info+return@domain.org as the return channel or does this example expect the sending address to be return@domain.org?

The return address does not change at all if I enable/disable VERP setting in civicrm mail component settings.  I have used return+ in the "localpart" and have Return Path blank.  I assume that it is automatically generated.

Also, the wiki says that there are "There are four possible solutions for handling of the return channel." but lists only 2.  Furthermore it says " Second, some SMTP services (notably google) insert their own Return-Path address headers, superseding the headers set by civiMail and effectively disabling bounce tracking."  Does that refer to "Gmail" or "Google Apps"? When using an outlook client, it does let me change the Reply to address.

I'm using IMAP and after executing the bounce processing job manually I see the mail moved to "label:inbox-civimail-ignored".

Any delicious google app recipes or updates to the wiki appreciated.

BTW - I've had similar problems with SMTP bounce processing using Mandril so I'm sure I'm doing something dumb,

So first, the VERP setting you see is about processing replies, it isn't the same as the VERP used for the bounces, that are always in.

For the bounces, you need to create a mailbox dedicated for that purpose, (eg. return@domain.org) that is different than your normal sending email (info@domain.org). You could in theory use info@domain.org, but that's likely to create problems for your org.

To test if it works, create a contact with an invalid email address, send a civimail mailing to a group with that address and verify that the bounce email is properly into the return@domain.org mailbox. If it is, you are almost there, as your cronjob seems to be properly setup to fetch that mailbox.

As for the label:inbox-civimail-ignored, it is simply that you have an email in your "bounce/return" mailbox that isn't a bounce. One of the many reasons to keep your info@domain (where recipients might reply to) separated from your return@domain (where only the mail servers are supposed to reply to when there is a bounce).


Why can't I create a new report from a template? I am trying to create a dynamic event report from an existing standard template.  I go to Administer, click Civireports, then Create new report from template, choose Participant Report, then change all the columns and filters and get the results I need.  I rename the report from the Title tab.  I preview the report, and everything looks how I want it.  But then I have no option to save it anywhere.  Very frustrating.  Help please!

Sounds like you may need to ask for (or give yourself - if you can) more permissions.


CiviEvent link Parents with Child participants during registration I am trying to create a registration form for events for children where the parent fills in there contact details (mail/phone) and the name & birthday of the children they want to register for the event.
I have created a Child & Parent Individual in civiCrm with custom fields, I also created a parent of/child of relationship and registering works fine both the parent & the childs are created. But I can not find out how I can automaticaly link the Parent & Childs when the parent registers for the event.

I am using Civicrm 4.6.34 on Drupal.

I also found someone who used a WebForm to solve this, but I don't know how to link this WebForm with an existing CiviEvent : https://civicrm.org/blog/sarahgladstone/recipe-for-handling-youth-registration-with-civicrm

I dont think registering for an event and creating a relationship using the standard CiviCRM event registration pages.

So if you use CiviCRM with Drupal I would go for the webform solution.

There is also a third possibility and that one is using the form processor extension in CiviCRM and then use the CiviMRF to submit you the webform data to CiviCRM. I wrote an example instruction in this blog post: https://civicrm.org/blog/jaapjansma/using-civicrm-form-processor-extension-to-handle-form-submissions-from-an-external

The pro of the form processor solution is that you can create a webform on a remote website. Or in other words, if your website and crm are not on the same site this solution will also works. The con is that it requires a bit more knowledge to set it up.


problem upgrading php I updated to CiviCRM 4.7.28 (on Wordpress). However, I have not been able to update the PHP to the 5.6 version. In fact, after much searching, I don't seem to be able to come up with the correct way to update the PHP. Any help would be much appreciated.

You would need to contact your host to check that php 5.6 is available.  It very likely is in which case there is probably a facility in your cpanel or equivalent to activate this.  I recently upgraded my setup to php7 on wordpress without any problems and in fact things are working quite a bit faster.

Hope this helps.


Contact ID 1 is an organization and causing errors I did a fresh install of Civi4.6.4 on Drupal 7.38 and ran into something I haven't seen before. An organization was set up as ContactID 1. Now when I logout and then login I receive the following:

Session opened for "Drupal User 1"  (Drupal uid: 1 is now CiviCRM
contactID: 2) - then the errors:
Role Publish Events (11) should be held by user  (1) because they are part of group 5 (contactID: 2)
Role Publish Jobs (13) should be held by user
(1) because they are part of group 7 (contactID: 2)
Initial roles: @roles, roles to add: Array ( ) , roles to remove:
Array ( ) , final roles: Array ( [2] => authenticated user [3] =>
administrator user [11] => Publish Events [13] => Publish Jobs [15]
=> View Maint [23] => Publish News [24] => View Connects )

Is there a way to change the organization to an individual (though that doesn't seem be a solution based on other questions)? ...is there another way to fix the problem? ...and how did the "organization (default organization)" create the groups?

The messages about roles are verbose output from the CiviGroup Roles Sync module (civicrm_group_roles) which are logged in Drupal watchdog. Are you seeing these on screen? They don't indicate a problem, they just record which roles a user is being sync'd with and why.

I don't think it's problematic in itself that contact id 1 is an organization or that user id 1 is linked to contact id 2. The user id will not in general be the same as the linked contact id. The link is initially established based on email address and is then stored in the civicrm_uf_match table in the CiviCRM database.

Re:

  how did the "organization (default organization)" create the groups

The messages from civicrm_group_roles are saying that user 1 gets certain roles (Publish Events, Publish Jobs) because the contact that it's linked to, contact id 2 - which I assume is an Individual - is in certain groups (group ids 5, 7).


Civicrm Event Info Page has Register, iCal, and iCal feed buttons too close to each other I'm using CiviCRM with wordpress for first time, but the same "issue" exists with Drupal. The bottom "Register Now" button on the info page for an event is very close to two more buttons for downloading iCal info for event, and accessing iCal feed for the event.
We're finding that fat-fingered folks on tablets are hitting one or the other of these buttons, then getting confused and giving up. Is there a setting in the UI to either not have these buttons, if I just want to provide more spacing, do I need to edit something in the backend? If the latter, could someone point me to the particular file?
(and is this a smarty template modification that I need to make and then keep updated?)

OK, it is easy to do with minor edits to the code (a template). I edited the following smarty template:
wp-content/plugins/civicrm/civicrm/templates/CRM/Event/Page/iCalLinks.tpl
I commented out lines 10 to 16, which is the entire executable for this file.
This gets rid of the two badges under the edit button, and solved this problem for fat-fingered folks.
I still wonder if there's anything in the CiviCRM UI that would do the same thing without editing the template..
Thanks All in advance.
WordPress 5.6, CiviCRM 5.32.1


Why are locations deleted when an event that uses them is deleted? If you delete an event and that event is the only one that uses a particular location, then the location is deleted as well.

If you then want to use that location for another event, you have to recreate it - seems a bit unnecessary?

or have I misunderstood something?

well after a bit of experimenting the answer is.. they just are.

Here's a workaround that worked for me.

1 create new location type "location only"
2 make new events of type "location only" and give the title the same as the location you want to manage eg if the location is "Town Hall" then the name of the event will be "Location Town Hall" and the venue will be "Town Hall"

now it doesn't matter what happens with other events that might have used "Town Hall" as their location.. "Town Hall" will survive


Is it possible to make Case Resources a smart group? I discovered via http://forum.civicrm.org/index.php/topic,35204 that the Case Resources available in CiviCase pull from the Case Resources group.  Is there any way to make it use a Smart Group?

If not, my best workaround idea is to create the Smart Group I want, then run a script daily to synchronize that Smart Group with the Case Resources static group.

It uses whatever group is defined in
    <custom_templates>/CRM/Case/xml/configuration/Settings.xml

Just note that it needs to match the "name" field in the database in civicrm_group, which is usually different from the label that appears on screen. So if you create a group in the admin pages called "Ant Exterminators", the name might actually be "Ant_Exterminators_37". This would be true even if you deleted the current Case Resources group and recreated it - it might be "Case_Resources_43".

I tried it and it works with a smart group (at least on a slightly older CiviCRM version).


Why doesn't anything happen when I select a search action from the CiviCRM search results? I'm in CiviCRM 5.5.0 and everything works perfectly - except that nothing happens when I select a search action like "Add an activity".  There are no errors in the Javascript console.  What's happening?

The cause was that I had the "Select2" Drupal module installed, which was adding a second Select2 widget to my search actions, breaking them.

To resolve:

Go to Drupal Configuration menu » User Interface » Select2.
Click the Exclusion Rules tab.
Under Don't load Select2 for specific pages, enter civicrm/* and save your changes.

This should fix your search actions.


Can't use function return value in write context in ... civicrm.php on line 342 (5.8.1, WordPress) After manual installation of the plugin in Wordpress (5.0.1), PHP (7.2.12), mySQL (10.1.36-MariaDB). I can't activate it.

I receive this info:

Fatal error: Can't use function return value in write context in .../public_html/CRM/wp-content/plugins/civicrm/civicrm.php on line 342

It sounds like you may be using an unsupported PHP version.  CiviCRM 5.8.1 requires PHP 5.6 or higher.

If this solves your problem, please mark it solved; if not, please edit your question to indicate your PHP version?


Why does the html snippet for a profile not include the url of the site for linked Jscript and css files? When our users create an html snippet for a Profile, it requires a lot of editing to get the references to work. I don't understand why it's written that way.

For reference, here's a snippet of the code for a form that just has first name, last name and email address.

<script type="text/javascript">
var CRM = {"config":{"ajaxPopupsEnabled":true,"isFrontend":""}};
</script>
<script type="text/javascript" src="/sites/all/modules/civicrm/packages/jquery/jquery-1.11.1.min.js?r=ogWA8">
</script>
<script type="text/javascript" src="/sites/all/modules/civicrm/packages/jquery/jquery-ui/jquery-ui.min.js?r=ogWA8">
</script>
<script type="text/javascript" src="/sites/all/modules/civicrm/packages/backbone/lodash.compat.min.js?r=ogWA8">
</script>
<script type="text/javascript" src="/sites/all/modules/civicrm/packages/jquery/plugins/jquery.mousewheel.min.js?r=ogWA8">
</script>

These snippets are used on different websites than the one where CiviCRM is installed, so the local (non-absolute URL) src="/sites/all/... references don't work correctly.

NOTE: The Help text does indicate that this snippet should work on "ANY website":

I found this deep in the recesses of Jira: Standalone Form HTML for Profiles has relative URL. So it was fixed back in 3.0 but must have reverted at some point. As best I can follow, Resources.php builds this via addScriptFile, which calls addScriptUrl, which calls getUrl, which creates the URL by running through the extension manager (CRM/Extension/system.php). I'm not sure of the "correct" place to add the base URL and fix this, but I'm guessing it's in the extension manager system file.


Database error when saving CiviCRM event: “Row size too large” I'm using CiviCRM in multilingual mode. I can generally create events (and other objects) fine. However, I often run into update problems at some point. The interface will "spin" and never save.

Looking at the CiviCRM error log reveals a database error:

nativecode=1118 ** Row size too large (> 8126)

I have looked at this clearly related case: Database error when using CiviCRM admin UI: "Row size too large"

I have tried (with some trepidation because I haven't worked on the Civi backend yet and don't know where the pitfalls are) to change the ROW_FORMAT of Civicrm_event_en_CA to Dynamic, but am told that it is not a base table.

I'm not really clear as I am more of a db user than a programmer, but assume that this table is somehow subsidiary to civicrm_event.

That table is set to ROW_TYPE=COMPACT. I'm game to change it, but it seems drastic enough that I am wondering:

Is it safe to do so WRT to CiviCRM operation?
Will it persist through a CiviCRM upgrade or will it revert (and potentially throw away data)?

this might be a mariadb config issue.

# enable large indexes and Barracuda
# for utf8mb4
innodb_file_per_table=1
innodb_file_format=Barracuda
innodb_large_prefix=1

might also change the tables to
ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED
see this post for much more info on this front https://stackoverflow.com/questions/15585602/change-limit-for-mysql-row-size-too-large

but do not follow the suggestion there to alter the tables to use MyISAM instead of INNODB, that's a really bad idea.


Database upgrade fails updating to CiviCRM 5.22.1 to 5.28.3 We were still running CiviCRM 5.22.1 when Wordpress updated to version 5.5, which broke our donation pages because of changes how wordpress redirects.  I updated to CiviCRM 5.28.3, but the database upgrade fails - all I see is blank dashboard page an empty pair of brackets and a 'retry' link that does nothing.
Does anyone know how to fix this other than perhaps installing a previous version of Wordpress and CiviCRM 5.22.1 on a development server, importing the current CiviCRM database tables, upgrading to CiviCRM 5.28.3, then importing upgraded CiviCRM database tables to the live server?

The problem with updating to version 5.28 was apparently due to some of my civicrm sites having been originally installed with version 4.7. I edited the settings file by comparing to a version 5 setting file. A critical line (~82) was commented out.
Un-commenting that line (and updating other sections of the setting file) allowed me to update all my sites, both live and on the dev server.
Also note that line 82 may be commented out on sites that were originally installed in the early days of CiviCRM 5.x.


Missing Custom Activity Field Data When the Activity is Filed on a Case. As the title states. Data that I enter into custom activity fields, is saved and

I can view that saved data from the Activities tab in the Contact Summary.

Like this:

But after the activity is filed on a case most of the data fields appear empty when the data is viewed from within CiviCase.

These fields were working fine up until I updated the system to 5.4. It continues after I updated to CiviCRM 5.5.1. on WP version 4.9.8.

How can I troubleshoot/fix this error? I am not able to duplicate this issue on the demo system found at https://dmaster.demo.civicrm.org/.

Not sure if it is related but I'm not able to create a Public Profile to share as that is getting an error, "Identity is invalid, Certificate is Expired".

First check the log files (Where are the "ConfigAndLog" and "templates_c" directories?) and see if there's anything obvious happening there.

Otherwise if you can debug in CRM/Activity/BAO/Activity.php in the copyExtendedActivityData() function that should help track it down. That's the function that gets called from _convertToCaseActivity() in CRM/Case/Page/AJAX.php to copy the custom data and attachments.


Can custom Tokens for pledges be created? I need to include the amount pledged and the amount they need to pay (which are different values) within an email I'm sending from CiviMail to let our pledgers know when/how to pay and how much. This data is available under each contact, but I can't see anyway to add a new token so I can insert the necessary merge fields into my email and they aren't currently showing in the drop down list. Is this possible?

seems we have done work to create such a new token but it has not yet been contributed back to the civitoken extension. would you be able to help fund this to happen.

Also a colleague reminded me we have done some work so that you can generate a checksum with a link that will take the person through to a contribution page with the Pledge ID and Amount in the url so the form loads with the right data. Doesn't deal with your first request, but could be really useful if the reason for sending them the 'amount' is because you want them to pay, and to have an easy online way of paying that actually connects the payment to the relevant pledge


Quick search icon spins forever after upgrading from 4.4 to 4.5 The upper-left quick search box and the edit-in-place for contacts spin the loading icon forever but never do anything. Looking in the browser console, there is a JavaScript error. It worked just fine on 4.4 but stopped after the upgrade to 4.5. I'm using the latest version of Drupal 7 in a multi-site setup.

Since you're using multi-site Drupal, check the Image Upload URL in Civi to be sure it's not set to https://[domain]/sites/default/files/civicrm/persist/contribute/. In a multi-site setup there is no such thing as a 'default' site.

The quickest way to determine if this is your problem is to visit the CiviCRM dashboard and check the browser console for a 404 error on arrow.png. You will notice that the URL to the png file starts with https://[domain]/undefinedpackages/. Or try to use an ajax-powered feature and receive a JS error like "'back' is undefined".


Additional Fonts for TCPDF How do I add additional Fonts to CiviCRM, especially where wkhtmltopdf and dompdf aren't used?

This is the case when name Badges for an event are printed, and the font isn't capable of of special chars in names.

There is some information already here - but I had to puzzle and try and error a lot, so I decided to write question and answer a bit more conclusively here.

Fonts for TCPDF are generated, and are located in civicrm/vendor/tecnickcom/tcpdf/fonts/ in a format like this:

-rw-r--r-- 1 www-data www-data 1,9K Aug  9 14:44 robotoi.ctg.z
-rw-r--r-- 1 www-data www-data 8,6K Aug  9 14:44 robotoi.php
-rw-r--r-- 1 www-data www-data  78K Aug  9 14:44 robotoi.z

To generate the fonts, a static method from the library addTTFfont is called, and saved to the previously mentioned folder.

$roboto_italic             = TCPDF_FONTS::addTTFfont('/var/www/boell_testing/public/sites/default/files/civicrm/persist/fonts/roboto/roboto/Roboto-Italic.ttf', 'TrueTypeUnicode', '', 32);

After this call, the fonts should be available. The civicrm has to be told that there are additional fonts, which is done via a global settings array:

global $civicrm_setting;
$civicrm_setting['CiviCRM Preferences']['additional_fonts'][$roboto_italic] = "Roboto Italique";

In civicrm/CRM/Utils/PDF/Label.php --> public function getFontNames() the fonts are added to the menu and are available in the drop down menus for, in this case name Badges. But every other PDF generator using TCPDF should have the fonts as well.


Error after upgrade to 4.7.1 "Call to undefined method CRM_Utils_System::isUserLoggedIn" (WordPress) I've just upgraded from 4.5.2 to 4.7.1 and everything seemed to be working OK. I was able to use the system fine for an hour or so.

Then I was trying to re-assign some transactions from one user to another using PHPMyAdmin (by changing the contact id--I've done this before without problems) and suddenly I get a 500 Server error and nothing works.

Looking in the logs I find:

  Fatal error: Call to undefined method
  CRM_Utils_System::isUserLoggedIn() in
  /var/www/vhosts//httpdocs/wp-content/plugins/civicrm/civicrm/CRM/Core/BAO/UFMatch.php on line 98

I also can see some references to:

  Call to undefined method CRM_Utils_System::getUFLocale()

I can't see how a change in data can have caused this??

I re-imported the db (back to the 4.5.2 version) but I still can't access anything--I can't even run the upgrade script.

I put a clean install of the 4.7.1 plugin code and that's not fixed it either.

I'm stuck, it works fine on the test system but is totally broken on my live system now.

Thanks

Update 9th Feb:

I'm running:
PHP Version 5.3.25
MySQL Version: 5.5.32
Unfortunately because it's a shared hosted system, I'm not sure I can get the version of PHP updated.

A few possibilities:

You may have an old version of the file customised. Check in your custom PHP folder, or do a find on the name of the file that contains CRM_Utils_System::isUserLoggedIn to see if this is a possibility. You may need to update it to match the newer version of the file, while keeping your change (a consultant will happily help you here if it gets tricky - either myself john@civifirst.com or a partner organisation https://civicrm.org/partners-contributors).

Alternatively, are your resources and URLs set correctly in your administer tab?

Failing all of those, double check the site's URL in your civicrm.settings.php file.

Good luck!


How can we create memberships with two or more accumulated partial payments? We'd like to let individuals pay membership fees incrementally, e.g. four quarterly occurring payments of 0.25M (where M is the total membership fee). It looks like the devs sought to do something like this previously in the Civi core, and there may have been partial payment function deployed in 4.7 -- see this thread and this thread too. But I'm not seeing anything in our live install of 5.4.0 (running on WP 4.9.8) that supports creation of new membership once user has made two or more contributions of which the sum meets or exceeds the membership fee.

Am I missing something? And if not, is there any appetite for an extension or core enhancement that would enable both tracking of partial membership payments and creation of membership (or renewal of membership) once the membership fee is paid in full?

As of now, Partial payment is only possible through backend in CiviCRM. There is an open issue which extends it to be usable from live contribution page too. See https://github.com/civicrm/civicrm-core/pull/12319. To test/use this functionality, you need to perform the following steps -

Apply this patch on your site.
Create a pending/partially paid membership for a contact.
Select Default invoice payment page from civicrm/admin/setting/preferences/contribute?reset=1.
Navigate to user dashboard and you should be able to see a pay now link which points the user to complete this payment.
The pending amount is prefilled on the contribution page and user is able to complete the payment using this live contribution page.

ToDo - On the last step, there needs to be a changeable amount field which user can use and pay the membership fee in different installments.


Cron sending reports weekly Sending reports by email is a really nice feature in CiviCRM. This is done by creating a specific cron job for each report.

However, this will be sent only at the intervals given. And they are "daily", "hourly" or "every time cron job is run". I would love to send some reports on a weekly basis, or even monthly basis. Suggestions on the forum is to set the cron to run only once a week, but I need to run the cron every minute.

Is there any way to send, by email, specific reports automatically on a weekly basis?

You can set up cron jobs besides the main one driving all the scheduled jobs on the Scheduled Jobs page.  The way to do it is explained at http://wiki.civicrm.org/confluence/display/CRMDOC/Managing+Scheduled+Jobs#ManagingScheduledJobs-PHPclimethod

You might have your main job going every 10 minutes like:

*/10 * * * * php /path/to/civicrm/bin/cli.php -s site -u user -p password -e Job -a execute

You'll just need to add a new one for the report, let's say to send the report instance with the ID of 123 every Monday at 8:00:

0 8 * * 1 php /path/to/civicrm/bin/cli.php -s site -u user -p password -e Job -a mail_report --instanceId=123

You don't need anything in the main Scheduled Jobs page for this--this is 100% separate.

Back in the old days, this is how you had to do all scheduled jobs!  Uphill--both ways!


Contribution Detail Report- "contact name suffix" isn't showing up as one of the possible report criteria I'm trying to create a Contribution Detail Report and the "contact name suffix" isn't showing up as one of the possible report criteria. Please advise!

Allison, you're correct, neither prefix nor suffix is available (surprising)
Assuming that coding isn't an option.  There are several ways to can export the contacts prefix/suffix.  For example You can...

Create report you want and include civicrm "contact ID"

If you can also create a contribution search that returns the same contacts, then you can export the search results and include the suffix field.

If you can't create a contribution search, then you can do an import "Update" and add a "tag" that will identify the contacts in your report (match on contact ID) You can then run a search and export the suffix.

If you'd like the report to include suffix, you can submit a request to the paid issue queue and the Core team will give you an estimate on what it will cost to add suffix.  Seems like a good way to contribute back a function that others would like as well.


Maximum rcpt groups count in civimail When trying to compose an email via CiviMail addressing many groups it seems the interface smashes some groups when adding new ones. Our users can't see a reproducible pattern.

So my question is: Are there any limits regardarding the count of groups in the selector or the estimated recipients count?

Or do you have any other ideas what could cause this behaviour?

Does not appear to happen since upgrading to 4.7.7.


How can I view queued Scheduled Reminders? Is there a way to view Scheduled Reminders that are scheduled to go out the next time the job runs?

AFAIK Scheduled Reminders are not actually queued, they are selected when the Scheduled Reminders cron job runs. But if they are queued you should be able to see them in the civicrm_queue_item table.


Contribute Form on Multiple WP sites Total noob here.

My client has installed CIVI on their Wordpress Site, Site 1, using the CIVICRM WP plugin which they are using to collect contributions. They have three other WP sites, different servers, where they'd like to collect contributions using the same database as Site 1.

Is this possible? If so, what is the best way to go about this? Is there a way to embed the CIVI contribute form on other sites?

Thank you for your help!

Check out remote form.
https://github.com/progressivetech/net.ourpowerbase.remoteform
I use it on my WordPress site. It's very clean and nice.
If this answer helped please mark this as answered.
Thank you.


Api doesn't update record vu creates new I have a civicrm-application that gets updates trough an external rest-api call. But there's something odd happening.

Request:
```
api_key=76d9f1d3h4c87c2465a8a305b6fe&key=487e30c9219952143657f779&json={"first_name":"Sebastian","last_name":"Vyaene","birth_date":"01-01-1992","gender_id":2,"custom_5":"B380-A003-G164-W878","custom_6":null,"custom_7":null,"preferred_language":"nl_NL","phone":"0477745678","custom_8":{},"custom_18":[],"contact_type":"Individual","sequential":1,"custom_14":0,"id":420564,"custom_10":0,"api.Address.create":{"contact_id":"$value.id","street_address":" ","postal_code":"9000","city":null,"location_type_id":1,"id":396363},"api.Email.create":{"contact_id":"$value.id","email":"sebastian@marlon.be","id":426290},"api.Phone.create":{"contact_id":"$value.id","phone":"0477745678","id":101260},"api.Membership.create":{"contact_id":"$value.id","membership_type_id":1,"join_date":"2017-10-16","start_date":"2017-10-16","end_date":"2018-10-16","source":{},"custom_17":"B380-A003-G164-W878","id":362337}}&entity=Contact&action=create

```
this is an create action, but there's already an id present, so there should be an update. But as you can see in the response, the id is ignored and another contact is created, what is not the behaviour we want.

Response:

```

{"is_error":0,"version":3,"count":1,"id":481202,"values":[{"id":"481202","contact_type":"Individual","contact_sub_type":"","do_not_email":"0","do_not_phone":"0","do_not_mail":"0","do_not_sms":"0","do_not_trade":"0","is_opt_out":"0","legal_identifier":"","external_identifier":"","sort_name":"Vyaene, Sebastian","display_name":"Sebastian Vyaene","nick_name":"","legal_name":"","image_URL":"","preferred_communication_method":"","preferred_language":"nl_NL","preferred_mail_format":"Both","hash":"0326647eddd86831d8e1454926e8a2c5","api_key":"","first_name":"Sebastian","middle_name":"","last_name":"Vyaene","prefix_id":"","suffix_id":"","formal_title":"","communication_style_id":"","email_greeting_id":"1","email_greeting_custom":"","email_greeting_display":"","postal_greeting_id":"1","postal_greeting_custom":"","postal_greeting_display":"","addressee_id":"1","addressee_custom":"","addressee_display":"","job_title":"","gender_id":"2","birth_date":"1992-01-01","is_deceased":"0","deceased_date":"","household_name":"","primary_contact_id":"","organization_name":"","sic_code":"","user_unique_id":"","created_date":"2018-08-20 10:04:48","modified_date":"2018-08-20 10:04:48","api.Address.create":{"is_error":0,"version":3,"count":1,"id":396363,"values":[{"id":"396363","contact_id":"481202","location_type_id":"1","is_primary":"1","is_billing":"0","street_address":" ","postal_code":"9000","manual_geo_code":"0"}]},"api.Email.create":{"is_error":0,"version":3,"count":1,"id":426290,"values":[{"id":"426290","contact_id":"481202","location_type_id":"","email":"sebastian@marlon.be","is_primary":"","is_billing":"","on_hold":"","is_bulkmail":"","hold_date":"","reset_date":"","signature_text":"","signature_html":""}]},"api.Phone.create":{"is_error":0,"version":3,"count":1,"id":101260,"values":[{"id":"101260","contact_id":"481202","location_type_id":"","is_primary":"","is_billing":"","mobile_provider_id":"","phone":"0477745678","phone_ext":"","phone_numeric":"","phone_type_id":""}]},"api.Membership.create":{"is_error":0,"version":3,"count":1,"id":362337,"values":[{"id":"362337","contact_id":"481202","membership_type_id":"1","join_date":"2017-10-16","start_date":"2017-10-16","end_date":"2018-10-16","source":"Array","status_id":"2","is_override":"","owner_membership_id":"","max_related":"","is_test":"0","is_pay_later":"0","contribution_recur_id":"","campaign_id":""}]}}]}

```

Request Id:  420564
Response Id: 481202

I've looked at the call for hours and i can't find the problem. Anyone else who can help?

I'm currently on 4.6.36 and drupal 7.59. But as a test i upgraded to 5.2.1 and the same problem occures.

The snippet looks correct to me, Can you try using 'contact_id' instead of 'id' as sometimes it did work for me. I am having hard time to recollect the scenario why i had to use 'contact_id' over 'id'.

Cheers

Pradeep


Newsletter sign up tokens on Donation Form Error We are having an issue passing a check-sum from a donation and membership sign up form along with a token to sign up to join a mailing list.  We're implementing CiviCRM on a WordPress platform. The newsletter mailing list sign up token is not recognized by the system.

You might compare your checksum links against the examples in this post.

As for your mailing list signup form, I'm not sure what you mean by "not recognized by the system".  Is the token not transforming when sent, or is the link just not working?


Up to what version of CiviCRM is secure to upgrade on a Drupal 6 site? CiviCRM no longer officially supports Drupal 6.x. as of version 4.2 but seems that more than one is running versions above 4.1 with Drupal 6 site.

Up to what CiviCRM version I can upgrade my Drupal 6 site without suffering any incompatibility?

Pete is right that even recent versions of CiviCRM (certainly in the 4.6.x series) work with Drupal 6 sites.  The "no longer officially supports" issue is that the core team won't go out of their way to make D6-specific fixes.

That said, I have encountered problems with new installations on Drupal 6, but this has been for testing--why else would someone build a new site on Drupal 6?


Standalone CiviCRM? (no CMS) I was pretty excited to read about CiviCRM until I saw the requirement for one of the big 3 CMS systems. Is is possible to use/build CiviCRM without a CMS? All three of those CMS systems are massive overkill for my current needs (a very small organization with a generated/static website).

If not, can anyone recommend an alternative open source CRM system?

thanks!

No, CiviCRM must be installed within one of these CMS platforms: Drupal, Wordpress, Joomla, or Backdrop. But this doesn't mean you need to use that CMS for your organization's main website — you can install CiviCRM (within one of those CMS platforms) on a subdomain.

The CMS handles the part of the application which deals with users (i.e. "reset my password" and other such functionality). The fact that CiviCRM delegates this functionality to the CMS does make it a tiny bit more complicated — but tremendously more flexible! For example, perhaps in 10 years your very small organization will have grown to the point where it wants a CMS which can integrate with its CRM. CiviCRM leaves that possibility open.

Suggestions for you

Install CiviCRM with Wordpress (the simplest one)
Or, if the installation process feels daunting, consider hiring a hosting provider to set up and maintain a CiviCRM installation for you

Instead of viewing the CMS as "massive overkill" I would encourage you to think of it as only one small piece of CiviCRM itself. It just happens to be a modular piece. The size and complexity of an empty CMS actually pales in comparison to the size and complexity of CiviCRM itself.


Anonymous Users Cannot Contribute I have set up a donation page linked to Paypal. (https://contacts.network211.com/civicrm/contribute/transact?reset=1&id=6)

When I attempt to use the contribution form as a non-logged in user, I enter my donation amount and email address. When I hit Confirm Contribution, the system returns to the contribution form with all fields empty. No error message or indication of what is going on.
The contribution works if I am logged into civi as an authenticated user.

Settings

I am not asking the user for any additional information, ie. not using a profile
The form is set as active/online
Under drupal permissions, I have CiviContribute: make online contributions selected
I have looked in both Drupal and Civi logs and don't see anything that seems to point to the problem.

This is very frustrating!

(I asked the same question earlier with no resolution. How to allow contributions from non-members This link also yields no answers Why can't anonymous users make contributions?)

Further investigation on my site, which was exhibiting the same issue as that noted by Keith Sorbo, showed that there was no 'user 0' record in the Drupal users table.

This page - https://www.drupal.org/node/1029506 - offers various options about how to reinstate a 'user 0' record in the Drupal database.

Once I had a 'user 0' record the CiviCRM contribution page worked as expected.


RECURRING contribution and auto-renew membership I am trying to setup an optional but recurring donation/contribution on a membership signup Contribution Page. Ideally, the new member will also have an option to choose frequency of payment, but we can do without.

I have tried price sets with a second membership for a "dummy" organisation for the donation bit, but it doesn't seem to give me an option for BOTH to be recurring.

I have also tried activating membership contribution and Contributions Amount on the campaign page, (without price sets) but as soon as I activate recurring contributions, I get the following error:

When I then enable separate payments from the membership tab, I get the error

  You cannot enable both Recurring Contributions and Auto-renew memberships on the same online contribution page.

Has anyone got a workaround? Any help and guidance towards the right direction is much appreciated.

If you are on Drupal, then webform_civicrm can indeed mix and match different monies [Membership + Contribution + Event] and since recently construct a recurring series as well. There are some differences though compared to how each of these individual bits work using CiviCRM Core itself:

you will add up all components using webform elements -> to get a
Total $ amount;
you can then present to the user (or config them
yourself) - how you want these to be paid (now, monthly installments,
etc)
you end up with one payment - and since CiviCRM Core is not really expecting that this is possible, you won't see the distribution of that payment in the backend. So a $100 contribution + $50 Membership will show $150 payment both on the Contribution screen as well as on the Membership screen.


Disable select fields in a drupal webform I've created a webform for reviewers to make a decision on a scientific abstract which is a CiviCRM activity.

Their review is a second activity in CiviCRM, all linked within a case.

All is working as needed using the activity1=[id] parameters in the url.

However, I want reviewers to be able to see the details of the abstract activity to make their review decision, but not change them. Text fields / areas are simple as webforms allow you to disable (see image below), but select fields, this option doesn't appear.

Is there a way I can disable select fields / make them uneditable but visible?

When you are on the page for editing the form component, you can change the widget from select options to a textfield. Then the option to disable becomes available.

However, it will display the value of the select, not the label - for example I tried with Name Prefix and for "Dr" it put "4".

But if you are dealing with custom fields where you can set the values to be the same as the labels that shouldn't be a problem.

Where it might cause a problem is activity status - could you get away without showing that?


Searching by case - would like to sort by subject - greyed out When I search for Cases, the search results are sortable by clicking on any of the column headings except for Subject and Case Manager. I would like to order the results by Subject - either by clicking on the Subject column heading, or by editing the appopriate php or tpl file so that the results are ordered by Subject by default. Can someone please point me in the right direction for the file(s) which I should edit to change the sort order? Thank you.

I found an answer - by editing the file com_civicrm/civicrm/CRM/Case/Selector/Search.php.
I inserted the following line after line 427:

'sort' => 'case_subject',

This makes the Subject column clickable for sorting.


How can I create a user automatically when someone submits a CiviCRM-Webform? When someone submits a CiviCRM-enabled Webform, can I create a user for them automatically in Drupal or Backdrop?

Backdrop
The simplest way would be to use the Webform Registration module, which has been tested to ensure it works with CiviCRM email fields.
Drupal
This conversation came up on the CiviCRM chat. I have done this for a site previously -- following instructions from @petednz's blog post here. (Note that blog post also has some exported Rules that you can download to start with and maybe save some time).
But if you want to start from scratch, here's what you need:

Webform CiviCRM
Rules
CiviCRM Entity

Create a tag within CiviCRM, something like "Create Drupal User".
Set up the form, enable CiviCRM processing, and add a contact in the CiviCRM tab, customizing as you see fit.
On the "Tags and Groups" section for this contact, select the tag you created in #1.
Go to the Rules page (Configuration > Workflow > Rules) and click "Add New Rule"
Name the rule and choose the React on Event as "CiviCRM Entity Tag has been created"
As for Conditions, we first want to make sure there is no existing Drupal user for this contact, so we use the "Drupal User Account exists for Contact" and negate it (data selector value will be something like civicrm-entity-tag:entity-id-contact).
Then we do a data comparison on civicrm-entity-tag:entity-table to make sure that it is "civicrm_contact" (to be sure we are updating the right entity)
And as the final condition, another data comparison to make sure the tag that was created is the correct tag which should result in a Drupal user being created. Using the numeric tag ID from the tag you created in #1 (you can find this in the second column of the CiviCRM "Manage tags" section), we can compare to make sure that civicrm-entity-tag:tag-id equals this numeric ID.
Finally, under Actions, we can use the "Create Linked Drupal User Account" action on the data selector civicrm-entity-tag:entity-id-contact. There are a few other options within here which you can set related to whether to activate/auto-sign in/send notification email as well.


CiviCRM module "Group-Based Prising" doesn't work in Joomla the module Group-Based Pricing (com.zengenuity.civicrm_groupprice) can't be enabled in Joomla. I copy the files from https://github.com/zengenuity/civicrm_groupprice into the media/civicrm/files and the module is still red in the page "Administer->System settings->Manage Extensions". The civicrm was moved from the Drupal site into the Joomla.

Can you confirm that's the correct directory for extensions by going to Administer menu » System Settings » Directories and looking at the Extensions directory listed there?  It may also need to be updated from the Drupal location if you copied the database.  If there's a token like [civicrm.files] you can click the question mark in the blue circle in the text at the top of the page to see what that token resolves to.
If the directory is correct, it's likely a file permission issue.


I only want people to confirm their membership type (or choose another one) via a webform, but no membership to be renewed or created Is that possible via webform-civicrm?

I can think of just making it a webform only field, so no connection to CiviCRM, but then the user does not see his current setting.

I can also think of creating a custom module that gets the current value via API and placing it in the webform only field, but am curious if I overlooked something and whether this is possible without custom coding.

You could display a (read-only) Views block on your webform that shows the contact's Membership status.  Relevant links and details on how to get the info to pre-populate are here:

Displaying a Views block with a CiviCRM-enabled webform


After server migration, cannot add contacts Joomla vers 3.51 CiviCRM Vers 4.7.6

I´ve done a migration to a dedicated server. I did the copy of files and database with Akeeba Backup, then edited the usual files:
 /administrator/components/com_civicrm/civicrm.settings.php
 /components/com_civicrm/civicrm.settings.php
 /administrator/components/com_civicrm/civicrm/civicrm.config.php
 /media/civicrm/ConfigAndLog/Config.IDS.ini

I opened civicrm, cleaned all cache, and checked all settings.

Everything seemed to work ok: menus, contact browsing, mailing browsing, but when adding a new contact, there is an error (at the end of this message).

I did a copy in a test subdirectory, deleted all civi tables, uninstalled civicrm and did a clean installation of the same civicrm version.
Now I can add contacts without errors, all is ok.

Civicrm settings files are identical (besides the test subdirectory) between both installantions, so this is not the problem.

Any sugestions to find and resolve this problem?

#0 /var/www/clients/client562/web1961/web/administrator/components/com_civicrm/civicrm/CRM/Core/Error.php(182): CRM_Core_Error::backtrace()
#1 [internal function](): CRM_Core_Error::handle(Object(DB_Error))
#2 /var/www/clients/client562/web1961/web/administrator/components/com_civicrm/civicrm/packages/PEAR.php(931): call_user_func((Array:2), Object(DB_Error))
#3 /var/www/clients/client562/web1961/web/administrator/components/com_civicrm/civicrm/packages/DB.php(976): PEAR_Error->PEAR_Error("DB Error: unknown error", -1, 16, (Array:2), "INSERT INTO civicrm_contact (contact_type , contact_sub_type , do_not_email ,...")
#4 /var/www/clients/client562/web1961/web/administrator/components/com_civicrm/civicrm/packages/PEAR.php(564): DB_Error->DB_Error(-1, 16, (Array:2), "INSERT INTO civicrm_contact (contact_type , contact_sub_type , do_not_email ,...")

Any sugestions to find and resolve this problem?

Have you tried deleting everything in media/civicrm/ConfigAndLog and templates_c?


Version 7.x-4.7.24 I need to send letters to contributors that gives them detailed information on each donation they have made for the year I looked in several places.  One answer said to go to Find Contributions, actions, Thank-you letters for contributors, Group Contributions by contact.  When I follow those instructions I do not find a Thank-you letter in my actions.  Also, someone said that I may need to add an extension.  As I browsed through extensions under administration, system settings, extension, I wasn't sure which to use.

You don't need an extension to do end of year receipts - though there are some that can help.

If you're based in Canada, you can generate a CRS-compliant receipt with CDN Tax Receipts, which automates this whole process for you.  I believe a German equivalent exists as well.

Otherwise, there are instructions in the documentation called grouped contribution thank-you letters.  That will get you a table of contributions.

Note that it seems like some of the display options are a little buggy; I just did some testing and found "horizontal table" to be the one that displayed best.  If you really need to get the formatting perfect, you can ask your sysadmin to enable Smarty processing for mail templates.  This is explained in the docs.

Note that despite the documentation, you do NOT need the Smarty processing if the only thing you need is a total.  Instead you can use the Summary Fields extension.  It will give you a token called "Total Contributions this Year".  This is the easiest way to add a total to the receipt.

Finally - I can't speak to why you're not seeing a thank-you action.  It should appear per my first screenshot below.  Please post a new question (with a screenshot) if you're still having trouble with that.

"


Import Contact Issue I am importing CSV files, about 7000 contacts per import, about 20 fields per contact, about 800kb sile size.  DB size is about 55k, issue arose at about 20k.  Since then, it times out after 2000ish records.  The importation ultimately executes with fields and data appearing to correctly function thus far through testing.

Issue is the importation process freezes.  It seems to run about 4 to 5 minutes, then apparently times out.  Server demonstrates mysql processes, usually about 6-10, in sleep state when "time out" occurs.  Checking table in phpmyadmin, I can quickly see where to edit csv file to continue.

I am not deduping, though I am validating address data.  I suspect the address validation is causing the issue.   Does the USPS address validator have a "counter" on it that is now limiting my "per day/then/per session" usage?

I verified the processor, free memory, file size, etc are all way under utilized.

Rememdy is kill all user/application processes, repair database and continue forward.

But, if I can adjust a setting to enable better processing, without sacrificing security, pls share.

Thx

You have several options, which I detail below - but I think the most important thing to do is check your CiviCRM log.  It's likely to tell you what your problem is.

Past that:

One option is to adjust your php.ini settings to change the max_execution_time to zero.  You can also do this in civicrm.settings.php if you prefer.

Another is to import your data on the command line using the API CSV import tool - but this requires breaking up your data into separate entities (e.g. Contact, Address, Email, etc.).  This is very efficient on large imports but not worth it unless you can script it (e.g. with Pentaho Data Integration).

I agree that it's very likely that either geocoding or USPS address validation is likely a culprit - but the easiest way to test that is to disable, do a test import and check the result.

If you're a programmer and don't like using Pentaho, you could also try writing an importer that uses the advimport extension.


How to view CiviCRM Event Participants Custom Participant Fields? We have an event and need to track any special dietary needs for attendees. I have created a custom field 'Dietary Needs' for event participants. This works as expected.

HOWEVER, the only way that I can view the dietary needs is by viewing the event registration for a single individual. I need a way to view the attendees in a list along with any participant custom fields.

What is the best way to do this? Search views do not seem to work with participant fields (Participant can not be used as a Result Column for profile searches).

I was able to do this using the Event Participant Report (List) and selecting my custom field for display.


Add Email Follow Up to Meeting Completion When completing a Meeting Activity, at the bottom where you can Schedule Follow-up, would it be possible to add Email to the "Schedule Follow-Up Activity".
Thanks.

Emails aren't usually editable so they might not make good scheduled activities. Two alternatives:

Use the scheduled reminders feature (https://docs.civicrm.org/user/en/latest/email/scheduled-reminders/) to remind somebody to send the email at the future time, or to actually send the email, depending on what you want.
Add a new activity type called something like "send an email", and schedule that as the followup instead, just as a visual note.


Set max participants separately for male and female Is it possible to configure the maximum number of participants at an event separately for male and female attendees?

We are using webform to handle registrations for our summer camps and want to limit registrations to say 25 boys and 25 girls. Is there a way to do this?

If you use civicrm forms, you can do it using price sets and creating 2 options : male and female and limiting the amount of people per item.


Views not updating multiple records I upgraded from Drupal CiviCRM 5.2 to 5.5 recently. Prior to the upgrade, I had a Views page that listed a table of custom fields (multiple records). The views was based on a "CiviCRM Contacts", and then I added each Civi field into the Views page.

What I noticed today is that if I deleted a record in the multiple records field in CiviCRM, the Views page still lists that record in the table. Similarly, if I added a new record in the multiple records, it shows up in CiviCRM but not in the Views. Very strange. Is anyone else having this problem?

I've cleanup caches, update paths (in CiviCRM), cleared the views cache, and also in Drupal (Run cron, Run a database update, flush all caches). The only error I see right now is below, but I'm not sure this is related to problem (I know this bug has already been reported):

Warning: array_combine(): Both parameters should have an equal number of elements in CRM_Contact_BAO_Relationship::buildRelationshipTypeOptions() (line 2222 of C:\xampp\htdocs\sites\all\modules\civicrm\CRM\Contact\BAO\Relationship.php).

I realized that my Drupal database and CiviCRM were linked to different databases. I forgot to update the settings file during my testing.


Creating a public Members directory with CiviCRM in Wordpress using Profiles I'm trying to create a public Members directory with CiviCRM in Wordpress using Profiles.

First i created a "Smart Group" through Search that lists all the members filtered as i wanted - i've called this Smart group "Members Directory (Smart Group)" and set it's Visibility as "Public Pages".

Then i created a Profile called "Members Directory (profile)" and populated it with a few "Individual" fields like First & last name: each set with Visibility as "Public Pages and Listings", Searchable "YES", In Selector? "Yes". I linked this to my smart group.

Finally i put the CiviCRM shortcode [civicrm component="profile" gid="14" mode="view"] on my page.

However when i view my page it says...

(i) Permission Denied You do not have permission to view this contact record. Contact the site administrator if you need assistance.

See here...
http://phils07813188309.esy.es/membership/members-directory-from-profile/

Any ideas what is going on?
phil

I assume you are seeing this as an anonymous visitor to the site and it fuctions properly if you are logged in.  If this is the case, I think you'll need to add anonymous users as able to see the information for these public profiles.  In CiviCRM go to Administer > User and Permissions > Permissions (Access Control). Select the 'Wordpress Access Control'.

You can provide anonymous users (all visitors to the website who have not logged in) permissions such as:

create and edit profiles ( or profile listings and forms)

This is typically on by default, so someone might have turned it off.

See the Book for more details:

http://book.civicrm.org/user/current/initial-set-up/permissions-and-access-control/

Alternatively, if you cannot see the page properly as an authenticated user, or if this permission is given, something else may be amiss.

For a starting point, here are some unresolved forum posts with the same issues:

http://forum.civicrm.org/index.php/topic,34677.15.html

http://forum.civicrm.org/index.php?topic=30429.0

This could be a bigger bug that needs reported/fixed


Legacy SQL Activity and Contacts Dump Transfer Because of the excessive problem that happened to me on SQL, I had to create a new CiviCRM installation.

How can I transfer the existing Individual profiles and Activities in the old CiviCRM database to this new one?

I want to transfer legacy CiviCRM contacts and events to my new system.

Joomla! 3.6.5 - CiviCRM 4.7.17

For contacts and activities you could use the built in import functions If you want to migrate/import entities for which there is usually no gui (such as events), you could try this extension: https://civicrm.org/extensions/api-csv-import-gui

I am not sure if it works for profiles though. You could of course use the Rest API as well and for example code a script to import everything but the first time this would probably take a while to get your head around.


Is there any reason to not run the scheduled job Clean-up Temporary Data and Files every hour? I discovered some problems with Smart Groups that use IN search criteria for custom fields not showing counts. I have the scheduled job Rebuild Smart Group Cache running. However, only after running Administer -> System Settings -> Cleanup Caches and Update Paths, then selecting Update Smart Group Counts, was I able to see updated Smart Group counts.

It seems running the scheduled job Clean-up Temporary Data and Files should do the same thing as Cleanup Caches, since it "[r]emoves temporary data and files, and clears old data from cache tables". Is that the case?

Currently the scheduled job Cleanup Caches and Update Paths is disabled.

So - is there any reason to not run the scheduled job Clean-up Temporary Data and Files every hour?

Thanks so much!

Check how long it takes to run on your system. if it doesn't take too long, I don't see any reason not to run it hourly.


How to target a specific event registration form in an extension I'm trying to use a custom extension rather than using a template override (template_name.extra.tpl) to implement some jQuery on an event registration form (essentially to hide some form fields unless the right radio button is selected).
Jackrabbithanna's useful guide here (http://www.jackrabbithanna.com/articles/easy-jquery-modificaiton-civicrm-forms) has been most helpful in getting me much of the way.

That guidance talks about targeting a specific contribution page by using:

    function tctaextend_civicrm_buildForm($formName, &$form) {
if($formName=='CRM_Contribute_Form_Contribution_Main'){
     if($form->_id==2 ){
      CRM_Core_Resources::singleton()->addScriptFile('com.skvare.testextend', 'my_alter_contribform.js');
     }
   }
}

In my case I want to target a particular event. The form name is CRM_Event_Form_Registration_Register, so I thought I could do a straight replacement, e.g.:

    function myextension_civicrm_buildForm($formName, &$form) {
if($formName=='CRM_Event_Form_Registration_Register'){
     if($form->_id==1 ){
      CRM_Core_Resources::singleton()->addScriptFile('com.example.myextension', 'my_alter_eventform.js');
     }
   }
}

But that generates a php notice:

  Notice: Undefined property: CRM_Event_Form_Registration_Register::$_id in myextension_civicrm_buildForm()

And also throws a fatal error if I try to create a new contribution page, even though the hook function is aiming to impact only event registration forms.

If I remove the line

 if($form->_id==1 ){

Then no errors, but my injected jQuery will presumably impact every event registration form rather than just the event I want to target?
Where am I going wrong?

Digging into the hook reference documentation at https://docs.civicrm.org/dev/en/master/hooks/hook_civicrm_buildForm/ I can see that the correct approach is

if ($form->_eventId == 1) {


Membership not extended to all related contacts Because a membership type was in use, I wasn't able to edit its relationship properties via the CiviCRM GUI. So I did it in MySQL (by editing membership_type_id and membership_direction fields in civicrm_membership_type).

I thought I created all related records the civicrm_membership table (each contact needs their own, even if the membership is inherited), but I must have missed some or encountered a bug because after doing this edit, I had to go through and Edit then Save some membership records in CiviCRM itself to fix them.

However this didn't work for everybody, and records with multiple relationships only passed on memberships to one of the two related records. Again, this may have been the result of an oversight on my part.

The solutions below took place inside the CiviCRM GUI:

For most, I had to disable and re-enable all relationships and subsequently edit and save the membership.

In a few cases, even this didn't work. For those records, I also edited the membership and specified a number of allowed related records before saving (I also subsequently went back in and cleared out that number with no ill effects).


The requested Profile (gid = 9 ) is disabled OR not set to be used The requested Profile (gid = 9 ) is disabled OR not set to be used as
  'overviews' OR the Profile with this ID does not exist OR you do not
  have access to this Profile. Contact the administrator for further
  assistance.

I get an error as given in title for when I enable contribution form for membership renewal with settings "On behalf of" tick marked and I get that only when I view it as anonymous,but when I view it as logged in user ,I don't get the error

On the Contribution Page setup, below the checkbox to enable 'on behalf of' there is help text explaining that it uses the "On Behalf Of Organization" profile - unless you change it.  You are seeing an error relating to profiles when you enable the section that says it uses a profile, so that is a good clue as to the cause of the problem.

Let's step through the various causes suggested in the error message:

1) Is Profile (gid=9) disabled?

Go to Administer > Custom Data and Screens > Profiles  Click the Reserved Profiles tab.  Id 9 is 'On Behalf of Organization' in a default config (4.7) which corresponds with the help text.
 It is a reserved profile, so you don't have the option to disable it.  This is not the cause of the problem.

2) Is Profile (gid=9) set to be used as 'overviews'?

This is not obvious as there is no setting described as 'overviews'.  But since this is core behaviour and you can't change it, let's assume that is correct for now.

3) Does Profile (gid=9) exist?

Yes - we have just seen it in the listing. (Arguably this should be the first cause listed!)

4) Do you have access to the Profile?

This is the last of the suggested causes and also corresponds to the behaviour you are seeing that the problem depends on whether or not you are logged in.

Now we need to check permissions.  You don't mention which CMS you are using, but I'll use Drupal here.

Go to the Drupal People > Permissions page. In the CiviCRM section, look for settings relating to 'profiles' and see what permissions your anonymous users have.  It is not always obvious which permissions are relevant but we are using the profile to enter new data rather than view data so 'profile create' looks likely.

Is 'CiviCRM: profile create' enabled for anonymous users?  Probably not.  Enable it, save and try to view the contribution page again when not logged in.

Warning: Be wary of granting new permissions if you don't understand what they mean, particularly for anonymous users as you can inadvertently expose far more data than intended.  You can find confirmation that 'profile create' is appropriate in the documentation.


Contribution/membership receipt - unable to disable I did have a look around already but thus far without much luck.
We recently turned off the 'Email Receipt to Contributor?' option on a membership join page. I did check the ContributionPage settings and they show that the 'is_email_receipt' is off:
"values": [
    {
        "id": "5",
        "title": "Join xxx",
        "is_email_receipt": "0"

However new members joining are added as
 "contact_id": "14971",
    "currency": "EUR",
    "contribution_recur_id": "4696",
    "receive_date": "2020-07-06 00:51:41",
    "contribution_source": "Join xxx"

  "id": "4696",
        "contact_id": "14971",
        "amount": "10.00",
        "currency": "EUR",
        "frequency_unit": "year",
        "frequency_interval": "1",
        "start_date": "2020-07-06 00:51:38",
        "is_email_receipt": "1",**
        "contribution_type_id": "2",

Now I appreciate that for contacts that joined before switching off the receipts I would have to update the 'civicrm_contribution_recur' table to stop those but I cannot find a reason why new contacts are still being added with the  "is_email_receipt": "1"
We use Stripe as the payment processor and the 'Allow Stripe to send a receipt for one-off payments?' for settings is disabled.
We are also using the nz.co.fuzion.transactional extension so I can see the receipt that goes out on the contact record (the Civi one).
Can anyone shed some light for me?
Civi 5.24.4/Drupal 7
Thank you!

I'm looking right at the relevant line in the Stripe extension and I'm not seeing how to arrive in the state you're in.
The relevant line is in api/v3/StripeSubscription.php and reads:
    'is_email_receipt' => !empty($params['is_email_receipt']) ? 1 : 0,

Since 0 is considered "empty" in the line above, you should never have is_email_receipt set to 1 on your recurring contributions. I recommend placing debug statements above and below that line to ensure that a) this code is the correct code to look at, b) the values line up with what's expected.


Can I import a drupal block into a mosaico mailing template? I'd like to be able to pull in drupal blocks. e.g. index of latest news. Is that possible?

I think this Fuzion extension could provide what you need. Can't say i have tested it for a long time but it used to provide that functionality as a token to include in civimail so not sure why it couldn't do same in mosaico


Has select always included the label on drop down lists? Maybe I am just noticing things now but has select always included the label on drop down lists? I thought it used to say -none- when none was selected.
Example from dmaster demo

Yes that was one of the many changes in 5.31 related to screen readers and buttons and such. https://github.com/civicrm/civicrm-core/pull/17675
It also inadvertently made all my contacts appear to be from Afghanistan.


Smart Groups - Contacts by Adder My basic need is to allow a CiviCRM user to view and edit only the Contacts they have added.

It seems that to support that requirement, I need a Smart Group of Contacts, filtered by Adder.

I see that I should be able to filter Contacts using the Changelog "Added By" field. However, I am not retrieving the Contacts when searching "Added By" using email address, username, first/last name or even id. "Modified by" doesn't seems to work either. Changelog date filters do work.

The administrative user I am using for the search does have all rights to all Contacts.

It seems like first/last name is the intended input for the "Added by" Changelog search. Can someone confirm?

What else might I be missing?

I did notice that the first/last name search seems to lower-case my input. I spotted this in the Search Filter output confirmation in the results display. (So, "Test Marketer" changes to "test marketer"). Could this be why there are no matches are returning? I suspect not, but that's all I can spot so far.

Cheers!

Kathy

This is what I have discovered through further trial and error.

To search on Changelog by Added or Modified, use first name, last name, or last, first. Using both names separated by a space will not work.
The Changelog search actually makes no distinction between Added and Modified. Even if you select the Added radio button to restrict your search to Contacts Added by a particular user, it will still also return Changelog matches on Modified (which does include Added). In other words, whether you select neither radio button, or one or the other, you get the same search results, in which Added OR Modified contains the name you entered.
The case of the search name makes no difference in results returned.

The answers to my question, then, are that a Changelog search term may be in the formats of [first name], [last name], or [last, first] and that Changelogs are only filtered by Added OR Modified, despite the UI indication.

Also note the very helpful discussions here about using Webforms with Drupal do create many more options for filtering by contact Add and Modify history.

Kathy


Hiking Club Membership and Hike Recording We're a small hiking club in South Africa, around 150 members.  Our old software is no longer adequate and we're looking for something that will handle our membership as well as our portfolio of hikes.  Our current software generates reports that re what hikes members have done, distance covered etc.

Is CiviCRM the right solution or a bit of overkill?

I think CiviCRM would work well for your needs.  Obviously, you wouldn't need to use every feature.  In combination with a Drupal, Joomla, or WordPress site, you could have a signup form for new members and events for each hike.  In Drupal, you could use Views to display upcoming hikes, or in WordPress, you could use the CiviEvent Widget plugin (shameless self-promotion).

It's simple to see what hikes someone has participated in, either on their contact record or in flexible reports.  It's also straightforward to give multiple leaders access to administer the system--unlike other systems that charge extra for each administrator.

One note: in CiviCRM, the word "member" is used for someone who pays dues to get a membership that has a fixed term.  (There are free memberships and lifetime memberships, but those are generally used alongside paid and/or time-limited alternatives.)  Many organizations consider "members" to simply be people on the mailing list.  If that's how you all use the term, you can simply ignore or turn off the CiviMember features.


DB Constraint Violation in - possibly domain_id I have been presented with the following error on when using civicrm-webform and paypal standard:

CiviCRM_API3_Exception: DB Constraint Violation - possibly domain_id should possibly be marked as mandatory for this API. If so, please raise a bug report. in civicrm_api3() (line 45 of /home/shishukunj/www/www/sites/all/modules/civicrm/api/api.php).

Is this a site specific issue or something to do with the core or the module?

Happy to help fix in either case as we are now committed to using 4.7 but need to iron out the bugs as we using webform-civicrm, related permissions and paypal payments heavily.

This is NOT AN ANSWER but I am not allowed to comment since I only have 49 points. Seems ridiculous to me since I have been working with CiviCRM for over 8 years. Anyway I have the same problem as described above except that I am using eWay Payment processor.
Is anyone able to respond with advice on this issue?


CiviSEPA turns special characters of generated XML files into ASCII characters or question marks I have noticed that when using CiviSEPA to generate an XML file to be submitted to the bank for payment collection, no special characters get through. Some characters are converted into ASCII "equivalent" characters and some others into question marks ?.

I am using UTF-8 within CiviCRM. Also, the XML file generated starts with:

<?xml version="1.0" encoding="UTF-8"?>

So the XML file encoding seems to be capable of using UTF-8 characters. Some examples:

Name       | Turns into
---------- | ----------
Mónica     | Monica
Begoña     | Begona
Mª Dolores | M? Dolores

This seems to be a "feature" as some conversions seem to be getting the "closest" ASCII equivalent. But then the Transaction Message seems to be getting a worse treatment: La fundación le agradece su aportación turns into La fundaci??n le agradece su aportaci??n.

I have tried generating XML files mostly with the pain.008.001.02 PAIN version but it seems to be the same for the other PAIN versions.

So I would like to know whether the XML files may contain any UTF-8 characters (and the average bank will accept that). If this is so, do I have something wrong in the CiviCRM configuration? Is there a way to fix this?

I do recall having read the specification for sepa (don't judge me, I had to) that says:

the xml file is utf8 encoded
but can only contain ascii-7 characters

Did you try to upload the xml to your bank? I suppose they offer a test mode, you might want to try to check how it looks there


Dashboard hangs; forces apache restart This is in planning for upgrade to J!3. I have found no workable solutions here or elsewhere on the web.

CiviCRM 4.6.4
Joomla 2.5.28
MySQL 5.5.38-1~dotdeb.0
Apache 2.2.16
PHP 5.3.29-1~dotdeb.0
Debian Squeeze 6
Linux 2.6.32-5-amd64

On all virtual hosts before I updated CiviCRM (4.4.x and 3.5.x) the Dashboard shows up but the Ajax "Loading..." widget just keeps spinning and freezes the whole GUI. If I click on another CiviCRM link and restart Apache, it will go to that page and I can navigate around but going back to the Dashboard locks it up again. I then updated both instances to 4.6.4 to the same result. I've disabled all other third party extensions to no avail.

I get no unusual errors in Firebug. Under Net, just a bunch of GET 304 reports for a lot of CiviCRM jQuery and other Javascript libraries.

Turning on Debugging with backtrace produces no output. Clean page.

Any help would be greatly appreciated. Thanks in advance.

You are experiencing CRM-16035 - Dashlet refresh can crash server.

The default dashboard config is pretty close to maxing out the default Debian config for either Apache or PHP-FPM.

Depending on your server setup (question says just Apache which typically suggests via mod_php) you probably need to increase either the number of  connections Apache permits.

You could also remove some dashboard widgets for the affected contact - if the dashboard is currently inaccessible so not editable for you, you could do this by directly editing entries in civicrm_dashboard_contact in the DB.

If you are using Apache + php-fpm or fcgi, you might need to increase the max_children setting in your php-fpm config instead. For non-Apache users, other StackExchange will explain how to increase server limits for your php/webserver configuration.


403 Forbidden When Trying to Edit Contributions I am running Civi 4.5.5. with Drupal 7. I think this happened after the most recent Drupal update but I cannot be 100% sure when it started.

When trying to edit a donation I get this error "Unable to reach the server. Please refresh this page in your browser and try again." I already followed all the suggestions at http://forum.civicrm.org/index.php?topic=28718.0 but none of those worked.

I am getting two JS errors in the console.

    GET https:// www.site.org/civicrm/contact/view/contribution?reset=1&
action=update&id=52533&cid=6016&context=contribution&snippet=json 403
(Forbidden)m.ajaxTransport.send @ js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:136m.extend.ajax @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:136m.each.m.(anonymous function) @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:136m.extend.getJSON @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:136$.widget.refresh @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:1992(anonymous function) @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:143(anonymous function) @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:143m.extend.each @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:134m.fn.m.each @
js_i5iWWCnof58nOcdnrel29-OfwCcKR_GKWdqmdMYmb9Q.js:134e.widget.bridge.e.fn.
(anonymous function) @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:143CRM.loadPage @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:2098CRM.loadForm @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:2123CRM.popup @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:2285m.event.dispatch @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:135m.event.add.r.handle @ js_i5iWWCnof58nOcdnrel29-
OfwCcKR_GKWdqmdMYmb9Q.js:135view?reset=1&keyy=469e050135485c6c038247bb3e4b4c9a_7700&cid=6016:1
XMLHttpRequest cannot load https://www.site.org/civicrm/contact
/view/contribution?reset=1&action=update&id=52533&cid=6016&
context=contribution&snippet=json. No 'Access-Control-Allow-Origin' header is
present on the requested resource. Origin 'https:// site.org' is therefore
not allowed access. The response had HTTP status code 403.

I thought the problem might be my .htaccess file but I am using the same version of the file from before the Drupal upgrade.

Any help is greatly appreciated.

I upgraded to the newest version of CiviCRM and this appears to be resolved.


API call setvalue for is_primary does not make other values 'not primary' When using the CiviCRM API to make a field primary, other fields in the set do not have the 'is_primary' flag removed. This results in multiple 'primary' fields.

Eg: Address A is primary. The setvalue API call is used to set is_primary on Address B. Now addresses A and B both have 'is_primary'.

Is this the desired behaviour?

I can see that setvalue is intended to be quite a low level function, so you might not expect it to unset is_primary on other fields in the set. But if this is the desired behaviour we should probably document it.

There are lots of problems with the setvalue api. This is a good example of why everyone should stop using it.

The plan is to deprecate setvalue soon and remove it in a future version. See https://issues.civicrm.org/jira/browse/CRM-16643


What is formal title used for? Just noticed the last import an employee did - confused Job Title with Formal Title - we fixed it - but then the question arose - what is the field Formal Title used for - and I have no clue.

Its not in the user guide - not visible on contact dashboard - and not much discussion about it on SE - can someone shed some light on how formal title is used?

The formal title is used for an additional prefix. For example, in German someone might be called Herr Dokter Suchandsuch, where "herr" stands for "mister" and "Dokter" for doctor. So it can be used for those kind of cases.

If you want it to be visible on the contact summary you can switch it on with Administer>Customize Data and Screens>Display Preferences>


Bug with Check for Matching Contact(s) button Following the upgrade to 5.3.0, we are finding that the 'Check for Matching Contacts' button, which is in the edit contact screen, is not working. The screen refreshes and reloads the same contact, with no error message.

If you run the default supervised rule from the 'Find and Merge Duplicate Contacts' screen, it picks the duplicate up.  But the Check for Matching Contacts function has stopped working.  Is this a bug anyone else is seeing?

Thank you!

Robin

Drupal 7

Coleman recently pushed a fix for this on git. Can you please apply the patch and QA if it fixes your problem(if so please comment on PR about your QA result)

HTH

Pradeep


Invoking hook_custom_tokens and hook_custom_tokenValues in Joomla I have tried, in vain, to invoke hook_civicrm_tokens and hook_civicrm_tokenValues in a Joomla instance in order to add custom tokens (to be specific: relationship information).

I created a Joomla plugin to allow this, as this seems to be the recommended way to implement hooks in Joomla, to no avail.  I have been unable to discover how the mail form gets its list of tokens in case I need to prefix the call names with that module, e.g. Mailing_civicrm_tokens.  I've looked at:

Create Your Own Tokens for Fun and Profit
but it hasn't helped.  There is even a reference there to it not working in Joomla that no one has answered the question.

Any suggestions?

Here's info about using CiviCRM hooks in Joomla:
https://wiki.civicrm.org/confluence/display/CRMDOC/Example+Joomla+Plugin+for+implementing+hooks

But why create a Joomla plugin if you can also use the hooks in a CiviCRM extension?
https://wiki.civicrm.org/confluence/display/CRMDOC/Create+a+Module+Extension

The advantages of using a CiviCRM extension over a joomla extension:

Works on all CMS'es
Much more knowledge available in CiviCRM community

The only advantage of Joomla plugins I see would be if you would need to combine CiviCRM functionality with Joomla functionality.


db error reinstalling CiviCRM I'm just getting started with CiviCRM and trying to install on our WordPress site.

I completed the initial install once, but accidentally used the existing WordPress database - I would prefer to install on separate database.

So I have deleted the plugin, via WPadmin.  Removed CiviCRM tables from the database using the drop sql file.  Uploaded the CiviCRM files to server again and tried to activate the plugin.

The plugin is activated, but clicking the CiviCRM button in the lhs menu gives me error message below.  Seems like CiviCRM is looking to the old install in the WordPress database?

How to correct this please and reinstall in separate db?

Initialization Error

Array
(
    [callback] => Array
        (
            [0] => CRM_Core_Error
            [1] => simpleHandler
        )

    [code] => -18
    [message] => DB Error: no such table
    [mode] => 16
    [debug_info] => SELECT id, name, value, domain_id, contact_id, is_domain, component_id, created_date, created_id
FROM civicrm_setting
WHERE (domain_id = 1) AND (is_domain = 1)
 [nativecode=1146 ** Table 'huWP_db.civicrm_setting' doesn't exist]

If you planning to reinstall CiviCRM on separate database than you will need to delete the civicrm.settings.php file which holds all the db settings.

Since you are using wordpress you can locate the file in one of the place below

wp-content/plugins/civicrm/civicrm.settings.php

or

wp-content/uploads/civicrm/civicrm.settings.php

HTH

Pradeep


Custom extension, what hook to use for UserDashBoard I'm writing a custom data extension and I would like to show some things on the Contact Dashboard (not the 'full' dashboard).

I see the hook for the regular Dashboard and Dashlets, but nothing to output anything on the UserDashBoard

CRM/Contact/UserDashboard.php seems to eventually call a lot of hardcoded functions for components.

I've gotten to hook_civicrm_pageRun where I can add stuff by doing this: if ($page->getVar('_name') == "CRM_Contact_Page_View_UserDashBoard") and then simply echo-ing stuff but that doesn't seem to be the 'correct' way of doing things, the CSS doesn't get applied correctly etc.

I've also tried to create a page (using civix generate:page) and then adding UserDashboard.php and tpl files similar to how CRM/Events does it but that doesn't seem to get called at all. I see in Core Components a function named getDashboardObject but there is virtually no documentation, no comments or a way of calling it from within an extension.

I'm trying to affect the User Dashboard which gets generated at http://site/civicrm/user

By contact dashboard, do you mean the contact summary? In that case, there is a hook for that:

https://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_summary

Can you try to see if it alters the page you want?

Otherwise and more generally, they are two "catch all" hooks for the ui, one for page
https://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_pageRun
(likely the one you need) and one for form
https://wiki.civicrm.org/confluence/display/CRMDOC/hook_civicrm_alterContent

With these two, you should be able to modify pretty much any content generated by civi


Unable to write file I am getting this message:

Unable to write file: /var/www/vhosts/examplesite.com/httpdocs/wp-content/plugins/files/civicrm/upload/version-info-cache.json
Please check your system file permissions.

But this files doesn't seem to exist in that location. Should it exst there or could there be something wrong in my settings?

(CiviCRM 4.6.8 and Wordpress 4.3.1)

Make sure that the folder /var/www/vhosts/examplesite.com/httpdocs/wp-content/plugins/files/civicrm/ is writable to the webserver user.

The simplest solution is to set the permissions on that folder to be read/write for ALL users.

A better solution is to configure the permissions so that they are open to your user account and the webserver alone, but not other users on the same hosting server. How you approach this depends on the hosting environment and probably requires learning how to manage filesystem permissions.

See also:

Are there recommended directory ownership and permission settings for CiviCRM files?
CiviCRM does not have permission to write temp files on new server


URLs in CiviMail give a 404 not found error CiviCRM 5.14.0.

This is a new installation with WordPress. I sent a test mail. I checked out the unsubscribe link, which resolves to this

That turns out to not be a valid link. I have a feeling there must be a setting somewhere for that.

I added Options -Indexes to the Apache configuration file which changed the behavior of the link. The URL is controlled by a page in WordPress, which is creates a permalink.


Run report of donors with email addresses How do I run a report that lists anyone who is a donor and has an email address in my organization's database on civi?

You can search in advanced search for 'has an email' by putting a percent(%) sign in the email search field & hitting enter - and include a 'From 0' in the Contribution section of the search.

The resulting search should give results for

  Email LIKE '%' ...AND... Contribution Amount - greater than "0"


how to import extension to civicrm I would like to create an extension with civicrm. But I have a problem, although I could install civicrm and civix, I can not have where is the source code of the civicrm platform.
I go to the directory/var/www/ and I see no repertory civic, for when I run localhost:8080/ in my browser it displays the platform. For both the documentation we ask to put the directory of the extension to the root of the civic project for this to be taken into account.
I create an extension with civix with the following command: civix generate: module com.example.myextension --license = AGPL-3.0. I did a hello world but I do not know how to see the hello appears on the platform.
in fact I am going in: administration> system setting> extension but I do not see how to import my extension into the platform

in fact I am going in: administration> system setting> extension

With the above, I think you are able to access CiviCRM on the site. To see the extension in the administration> system setting> extension path, make sure you run the civix command in the extension directory, i.e -

Navigate to Administer -> System Setting -> Directories. Check the value of Extensions Directory input. This is where all your extension should be placed in.
Run the civix command from the terminal in the extension directory.
After the command runs successfully - you should be able to see your extension listed in Administer -> System Setting ->  Extensions path.

  I did a hello world but I do not know how to see the hello appears on the platform

You need to check how we can use extensions to extend the functionalities provided by CiviCRM. Check different hooks that can be used in extension_name.php file to add/modify results on the screen.


CiviCRM edit history for different users Is there a way to find out when an account signs into the CiviCRM admin panel and edits something. Specifically I am looking for the person who changed a price field. We're using Joomla with Civi.

Logging was not turned on

If you have logging switched on you should be able to find this in the log tables. If you do not have logging switched on I do not think you can find this.

You can check your logging at Adminster>System Setting>Misc (Undelete..........


How can I let members edit their relationships? We have organizational memberships - each organization can have up to five individuals who are listed as members.  We do this via the membership "Relationship Type" feature, and it works well.

However, competing platforms have a dashboard that allows the contact person for an organization add/remove the individual members that should be part of the record.  How can this be implemented with CiviCRM?

Civi 4.7.31, Backdrop 1.9.2 - so Views/Webform/etc. are all options.  It's acceptable for a member administrator to search contact names in the database.  Writing custom code is an option if there's a simple-ish way to do this.

I've done something similar with Views, VBO and a custom action.  There is an "Add relationship with contact" action in VBO but for more control over the action you can write a custom action.

In my case, the view is of Civi contacts with one of several relationship types to the org. The action is a 'Set as Correspondent' button.  Only one person at a time holds the Correspondent relationship with the org so the action uses civicrm_api3() to find and end any current Correspondent relationships, create a new relationship between the selected contact and org and create an activity for info purposes.

Your action could do something similar but check there are no more than 4 existing relationships of that type before creating a new one.


Drupal Installation Error on Centos I am getting this error during installation.  Has anyone else seen this?

You don't have permission to access this page
The installer can only be run by a user with the permission to administer site configuration.
Refer to the online documentation for more information: Installation Guide

Sometimes even i face similar problem when i try to install CiviCRM. But i make it work by commenting the line that throws this error.

You can find quick solution here.


How to alter the options inside element of a civicrm new membership form? function custom_changes_civicrm_buildForm($formName, &$form) {
if ($formName == 'CRM_Member_Form_Membership'){
  foreach($form->_elements as $key => $value){
    if ($key == 4){
    $assoc_array =  $value->_options[1][67];
      ksort($assoc_array,SORT_NUMERIC);
unset($form->_elements[$key]->_options[1][67]);
     $form->_elements[$key]->_options[1][67] = $assoc_array;
    }
  }

I want to alter the options order by using ksort, but I dont find any function to alter the elements like setLabel which sets label

Which is the function for altering and changing options in an element?

I'd do it like this:

First get the name of the select element, and then get the elemement using this

$element =& $form->getElement('name-of-select-element');

i.e. don't hard code that 4.

You've got the options array correct, i.e. $element->_options

Now you can just replace that options like you're doing, but depending on the widget in use it can be confusing how it's structured. The one I was working on recently has option['text'] as the label. Sorting by array values can be done manually or cleverly with some php and callback functions if you're ambitious.