Pay later for membership by PayPal? Here's the scenario:

we are using civicrm 4.6 with Wordpress
we want to accept payments for membership via PayPal
we don't want to take payment until membership request approved

So basically we want to accept membership applications that remain as Pending and then when we accept them we request PayPal payment to be made.

Any ideas?

I've created contribution page with 'pay later' option. This works great in that individual record and membership are created with status Pending. There is even an option to then manually record a payment to complete membership- but not via PayPal!

Now I don't know much about PayPal and IPN, but would it be feasible to have PayPal as a manual 'pay later' option that when invoked fired off email to customer asking them to make PayPal payment using a specific URL provided (or reference) and then PayPal via IPN notifies CiviCRM on success and membership then set to active? I'm guessing CiviCRM must have a PayPal 'listener' but does this only listen for responses made to request directly made from CiviCRM to start with or can responses come one way from PayPal to complete a transaction?

Any help appreciated.

Thanks

A complete sidestep would be to use a standalone Profile for submitting the membership 'application' and then when approved fire them an email with checksum to the Contribution page which has the membership optionsn on it, which uses the paypal payment processor so you get paid and creates the membership. just a thought.


Select list showing limited contacts, using “CiviCRM Contact” reference in drupal I'm having problem while storing values in select list field, for this field i'm using "CiviCRM Contact" reference. I have more than 30,000 contacts, but why in select list showing limited contacts? its showing maximum 10 contacts.

( Note : I have set "Number of values" : "Unlimited" for select list )

I see there is a limit set while building the options on the select list. It seems this has been only handled for autocomplete widget as $limit doesn't gets modified anywhere in the function or is nowhere passed to _civicrm_contact_ref_potential_references_standard() function.

So, it is set to a default value of 10 every time the list is loaded irrespective of the widget used.


Webform and Soft Credits I have been trying to implement soft credits for memberships which are paid using a webform. I have created a webform that allows one or two parents and up to four children to create or renew a membership. Everything works just fine except that the soft credits do not contain any value.

https://drive.google.com/file/d/1bsOkwi64jNniQup12caNSxi1AWQx7gQ0/view?usp=sharing

In the webform I have selected all contacts in the soft credit drop down on the CiviCRM contribution page.

https://drive.google.com/file/d/1mnoQe5OB9vuV34Jc48AjiyvDpHUkofB-/view?usp=sharing

Is there something that I need to do to ensure that the soft credits show the relevant amount?

Results after application of the patch

After the patch was applied the image below shows the outcome of the patch. The soft credits now contain the total amount of the payment made by the person completing the webform for all contacts involved in the webform. I doubt that this is the intention.

In the example below the user has made a payment for four separate memberships. Two of them have a zero value and the other two have a value of $150. It is my expectation that only two soft credits should be generated and in this instance they would be for the two junior players and show a value of $150 against each contact. This would then obviously follow through onto their individual accounts.
This particular user has also paid in four instalments and I am not sure how that might affect the patch.

https://drive.google.com/file/d/13c8ghcsQ8BD8CPbdYVSLFUbz8EvRzusc/view?usp=sharing

Cheers
Martin Fuggle

we did merge a PR fairly recently re: soft credits; I tested it extensively and it is working fine - try upgrading to the latest -dev version [best to do that on a test site - though I have some production sites running -dev at the moment]. Let us know!

PR: https://github.com/colemanw/webform_civicrm/pull/68

Awesome - one webform -> four memberships - paid for by parent -> in four installments. That soft credits PR was a first pass at that functionality. I'm not surprised not all of these situations are accounted for (yet).


CiviCRM 5.4, Unable to create case type (angular validation error) On fresh Install Civi 5.4, Core expect to have new option group called "Activity default assignee", but upgrade script not executed and not updated the option group table with "Activity default assignee" options.

which cause null result in "Default Assignee" drop down on New case type and "Save" button has disabled because angular validation error.

This is due to the change made in this PR - https://github.com/civicrm/civicrm-core/pull/11998.

I raised this on Mattermost some time ago. See https://chat.civicrm.org/civicrm/pl/d58c9nuowbfemeneizbe57cxqy. It says -

  Seems default assignee is a required field on Case Type Form(as per this change). Was this intentional? I was unable to save https://dmaster.demo.civicrm.org/civicrm/a/#/caseType/1 until I filled out default assignees for all the activities listed under standard timeline ♂

But unfortunately haven't got any reply for the same.

To fix this  -

Remove the required word from this line of the PR and the following element. You should be able to save case type without selecting any value in the default assignee.

OR

Add values to the default assignee for all the activities.


CiviMail: Can only write new mailing in debug mode (SOLVED) I've got the problem, that after an upgrade to the newest CiviCRM version (4.7.23) on WordPress, I can only create a new mass mailing when debug mode is enabled. When it is disabled, CiviCRM gives me an empty page after clicking on new mailing. It does not even say "Initializing...". However, the menu still works fine (doesn't freeze or so).

I've checked the resource URL and the directories, they are correct (I would say). Although I had to leave the Custom PHP Directory field empty, because I simply don't know what to put in there.

The JavaScript console gives me nine errors if I'm not in debug mode:

Five times: Failed to load resource: the server responded with a status of 403 (Forbidden)
One time: Uncaught Error: [$injector:modulerr]
Three times: has been blocked by CORS policy: Access to Font at 'http://www.netzwerk-n.org/crm/wp-content/plugins/civicrm/civicrm/bower_components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.7.0' from origin 'http://netzwerk-n.org' has been blocked by CORS policy: No 'Access-Control Allow-Origin' header is present on the requested resource. Origin 'http://netzwerk-n.org' is therefore not allowed access.

What might be pointing to the problem here is, that CiviCRM is located at 'netzwerk-n.org/crm' not 'netzwerk-n.org'. But as I said, the directories in the setting.php and also in CiviCRM itself look correct to me (they refer to 'netzwerk-n.org/crm').

I've also checked my permissions, but I'm an admin so there shouldn't be problems, I guess.

When I enable debugging, I can write new mails. However, in debug mode, CiviCRM doesn't seem to actually send/deliver mails. So it's of no use to me.

I'd love to here some of your ideas on that topic.

Best regards
Jannis

[Edit: Just recognized, that also the system status page does not load when debugging is disabled.]

Cross-origin refers to accessing resources on a different domain. It's curious that URLs you reference are actually different domains -- www.netzwerk-n.org vs netzwerk-n.org. You might want to check which of those appear in (a) the URL bar (b) the Resource URLs (esp under "?" help button) and (c) the outputted HTML documents.
As an alternative to "Debug" mode, you might try toggling disabling the "Asset Cache" mode. It's on the same screen: Administer => System Settings => Debugging, but it has fewer side-effects.


Contribution page profile not displaying at top of page, above billing section, despite configuration Newbie question. CiviCRM v 4.7.18. WordPress 4.7.3 running GeneratePress theme.

I have created a new contribution page and embedded it with shortcode in my Wordpress site (sorry, not public yet so no link). I'm using Paypal Express for payment processor.

In configuring the contribution page, I added a profile to appear at the TOP of the page. However, it displays BELOW the billing section. I tried moving the profile to the bottom position, and then to the top again. It always displays at the bottom, no matter which position I choose (only 1 profile chosen). I also tried selected a different profile, and that makes no difference. This is my first contribution page on this site.

Is there some other setting in CiviCRM that also controls the position that I need to change?  Thank you.

You cannot get the Profile above the amounts. I do not use Paypal so I do not know what you payment portions look like.  For me (using iATS with WordPress), my Profile placement options are 1. below the amounts (including the "is recurring option") but above the payment info/billing or 2. below the payment info but above the Confirm Contribution button.


Has any work been done to integrate Zoom and CiviCRM Outcome would be something along the lines that an attendee of Zoom meeting (eg Zoom id 234) gets added as a participant to Event X (which would have a custom field with 234 in it to help link to Zoom data)

Seems like NCN Civi Zoom may already provide integration between Civi and Zoom webinars - thanks to Raphael for sharing so we or others can hopefully build more features in to it.


Best practices for translating message templates As the message templates are quite complex, especially the system-flow templates, with their Smarty templating structures, and they sometimes are updated, you would rather not edit them.
But if you have users using other languages than English it is almost essential to translate them.
Is there any best practice to manage this? Jon G suggested using a Smarty-enabled editor which is at least one step towards not messing them up. But it doesn't resolve the issue with diffing against the system version when all the text in them has changed to another language...

It has been a while since I last did this, so I had forgotten about "Administration->CiviMail->Header, Footers and automatic messages" where you should do this. At least when it comes to subscriptions, confirmations etc.
Don't. Touch. The. Message. Templates.


Can't find HTML Snippet in Profiles (Drupal) I want to use the HTML snippet.

But i don't find the path to active "Accept profile submissions from external sites to Yes".

i'm using CiviCRM 4.7.29 running with Drupal.

any idea ?

This is available under Misc (Undelete, PDFs, Limits, Logging, Captcha, etc.) (CiviCRM >> Administer >> System Settings >> Misc (Undelete, PDFs, Limits, Logging, Captcha, etc.))

  Note: Try clearing CiviCRM cache if you still unable to see it under
  Misc.

HTH

Pradeep


Blank screen when reusing a previous mail (Mosaico) When attempting to reuse a mail, things work normally until clicking 'Edit' which results in a mostly blank page - some of the Mosaico page is shown but not the content.

What turns out to be important is that the site recently moved from using http:// to https://

Using the browser network tools shows a failure to load the template with a "mixed content" message.  The problem is that the template metadata includes the full URL of the template.
The fix is to update the template URL in the Mosaico metadata to use https:// in place of http://
With db access, you can update template_options in civicrm_mailing.
Alternatively, start from cv api Mailing.get id=...
Update
There is now an API call to update the templates for you.  See the docs
cv api MosaicoTemplate.replaceurls from_url="http://old.server.org" to_url="https://new.server.org"


Send metadata to stripe payment processor I would like to send the financial type to stripe as a metadata.

The API instructions are here:
https://stripe.com/blog/adding-context-with-metadata

I just don't know where to modify Stripe extension to add this functionnality.

Thanks.

You could start a feature request on the Stripe-CiviCRM project page on Github, and ask for guidance there.


Setup cron job generate emails I have a number of cases where I need to run a cron job to use a custom search and a template.  It should be simple to schedule a mailing to automatically run on some basis.

I have 2 current examples, Once a month I need to send a summary to a contact listing the status of their constituents. I have a group listing all the recipients of a report. For each person a  template is called and from the use of tokens generates and sends the report.

In another case I have a search which identifies the payments from the previous day. The cron runs and based on a template sends acknowledgements.

I would think there should be an easy way of setting up a cron which calls a search and a template. Unfortunately I don't see how to easily specify the two parts, If a current module exists where I can just name the search and the template that would solve my problem. This would be like automatically launching a mailing daily from a cron.

It doesn't exist for search, but it does for reports. Could you use a report instead of the search?


Creating custom fields: 1) previous address 2) number of years at this address I would like to create a set of custom fields, whereby the user is asked to enter data relating to the location of the contact's previous address, and another field specifying the amount of time the contact was at that address.

The user should be able to continue adding locations, until there is data going back x years.

Is this possible to implement from within Civi?

You can create 'multiple record' fields which will allow your users to keep adding more sets of the same fields until you have enough to cover your 'x years'.

There is documentation in the book here

Hope that is what you are needing.

NOTE: Multiple Rows do come with limitations and gotchas


Can't install Shoreditch I'm on Drupal 7 and Civi 5.9.0. I went and got a copy of the extension straight from GitHub. There is says they recommend using version 5.0+, even though the page on the Civi site says it's compatible with 4.7 only. I uploaded everything, but it's still not available to enable. Is it really only working on 4.7? This is listed as how Spark is setup and we'd like to be able to use that new look for our site as well.

And just as I posted that, I found the answer on my own - it is not called Shoreditch in the extension listing. It is called "CiviCRM Bootstrap theme". So I'm keeping the question here and adding the answer for anyone who gets stuck like I did looking for the wrong name.


Is there a letter preview w/o activity generation When composing a pdf letter my folks need to check the generated content. Is there a way to do this without creating a activity for all receivers?

This is a new feature in 4.7 which is undergoing beta testing at the moment.

In the meantime, as a work around I choose myself as the initial target for a new pdf letter and generate as many letters as I want until the content is correct.  It is then easy to search for those activities and delete them to tidy up my record.

If I were generating a letter where I needed to include a token that wasn't applicable to me, I would choose just one person on the list and take the same approach of deleting the "test" activities before creating the real letter.

If the people wanting to create the letters don't have permissions to delete activities, then I instruct them to include "test" at the start of the subject whilst they are still editing the letter.  That makes it easy for me to delete the appropriate activities when they ask me to.


Email is not CC'd when a membership on behalf of organisation contribution is made When an individual joins on behalf of an organisation, the receipt/invoice is not CC'd to the individual. It goes to the organisation email.

On the email, it says it is CC'd to the individual but it does not arrive.

Any ideas? I'm basically trying to email the individual who completed the contribution page, not the organisation.

You can solve this with CiviRules. You can create a rule saying that when a new membership is added send an e-mail to a related persion.

You need both CiviRules and the email api extensions.


Membership renewal not updating contributions correctly When doing back office "offline" membership renewals (cash, cheque, phone) we have recently noticed that when we select "Renew" from the "Active Membership" window the membership dates are updated correctly but the contribution is recorded as 0.00. I just ran a test and created a new member with a cash payment of membership fee and the amount was correctly recorded in contributions at that stage. When I then used "Renew" to renew the membership the corresponding contribution is listed as 0.00. (The amounts in the forms for processing the renewal are correct.)

Rather new to CiviCRM and I apologise if I am missing something obvious, but this has me baffled. Fortunately we are not using CiviCRM for our accounting.

Re:CiviCRM 4.6.15, on Drupal 7

We have resolved this issue and it was related to a deleted Organisation contact still being associated with a membership type.

You might be able to resolve it in the interface by re-saving each membership type, especially where an associated Organisation has been deleted / changed to the same name but a new ID.

I actually made the change in the database so this could be your second option. The 'civicrm_price_field' table stores the Organisation ID in the 'name' column, for some reason this hadn't got updated to the new Organisation ID.


If a civicase is reopened why isn't the Case Coordinator (and other roles) reinstated? Client is wondering why when a Case is reopened it does not regain the Case Roles it had when it was closed.

Seems a fair enough question.

So perhaps the follow on question is - will a patch to fix this be accepted or will others  argue this may not be the desired outcome?

A JIRA issue is now filed at https://issues.civicrm.org/jira/browse/CRM-21815 which provides this change into core.

Patch is at https://github.com/civicrm/civicrm-core/pull/11736 which should be a part of 4.7.32 release.


CiviCRM backup query I want to make a weekly/fortnight backup of CiviCRM running on Wordpress. Two things I need to do:

Backup on same machine
Replicate the database on another machine.

Looking for simple steps to achieve both

OS : Windows , Separate databases for Wordpress and CiviCRM

This question is impossible to answer definitively without knowing more about, say, your operating system, whether you have command line access, whether your WP and Civi databases are separate or one, etc.  I'll answer for what works for me.

On a Linux machine, I would use backupninja to first back up MySQL using mysqldump.  My backupninja configurations are public.

Second, I configure a backupninja job using rsync, rdiff-backup, or borgbackup to back up the WordPress root (e.g. /var/www/mysite) along with the MySQL dump.  All three of those utilities can back up either locally or remotely.

If you prefer shell scripts to backupninja, AGH Strategies posts their backup script on Github.


How to make an Event registration form where you can choose which event you are registering for? Let's say I want to make 3 Webinars, I want a registration form where people can enter their contact info and then select the Webinar (which is an event) and than click submit. I can do it with custom fields and bypass the events altogether but I want to define a maximum number of participants and automatically close the registration for a particular Webinar once the number has been reached.

Is this doable?

You can create a Price Set (used for Event) with a Price Field for each Webinar (Input Field checkbox). You can set a Participate Count and Max Participants for each Price Field. When you create your event, under the Fees Tab, Enter the Price Set name. You can charge a different amount for each webinar or $0 for all of them.  I know this does not create 3 separate events in your reports, but it does give you the ability to automatically close registration when full. You can filter your reports by Price set boxes.


Jquery not affecting custom fields of an activity I have written some jquery (inside an extra template file) that does some simple show/hiding of custom fields in an activity based on user selections. We use it as a helpful tool for users to select the right options (i.e. Do you own a pet? If they indicate "yes" then the Pet Name field is shown.)

This is currently working in 4.6.8 (Drupal 7) but in my test upgrade to 5.5.3 the jQuery targets aren't affecting the custom data sets. For instance, I can try targeting something generic like '.crm-container .crm-accordion-header' and for testing purposes turn it blue. This affects the headers for the core sections (attachments, send a copy, send a follow up) but the headers for my custom data remain unaffected.

Is there a fundamental change in how/when the custom fields are loaded that the jQuery isn't able to affect it?

EDIT: I have also tried adding the javascript straight into a template file (no "extra") in the overrides folder, still custom fields are unaffected. I also placed javascript directly in the main template file, not in the overrides folder - still custom fields are not affected.

{literal}
<script type="text/javascript">

CRM.$(function($) {
  $(document).ready(function () {

    // First, get the Activity ID.
    var acttype =  {/literal}{$atype}{literal}

    if(acttype === 75){
        $('.crm-container .crm-accordion-header').css('background-color', 'blue');
    }
  });
});

</script>
{/literal}

In some CiviCRM pages/forms custom fields are loaded/reloaded via AJAX (you will notice that if you have a set of custom fields based on Activity type, the custom fields update/reload when changing the Activity type to show its correspondent set of custom field).

With that in mind you should trigger you script on .ajaxComplete(), something along those lines:

CRM.$( function( $ ) {
    $( document ).ajaxComplete( function( event, xhr, settings ) { // optional params if you need to differenciate between events/requests
        // do stuff
    }
} )


How can I display only Cases without Case Managers using Drupal Views I'm using CiviCRM 4.6.9, if it makes a difference.

I want to use Drupal Views to display only CiviCase cases that do not have case managers.

I feel as though I'm close... so close, but I'm not quite there yet. This is what I have set up.

I have a view that displays cases in a table format. I've add a subject field and a contact field to the view. I then added CiviCRM Case Contact: Case Contact's ID as a relationship, and to that I've added CiviCRM Contacts: CiviCRM Relationship (starting from contact A) which is set to use only the case manager relationship type, but is not required.

For filters, I've added (CiviCRM Relationship (starting from contact A)) CiviCRM Relationships: Case ID (empty).

This almost works as I want it to. However, if a single client has multiple cases, and any one of those cases is assigned a case manager, none of their other cases will show up. I think this happens because the relationship is fetched via the clients ID number and not via the case ID, though as far as I can see, there are no views relationships that will allow me to  fetch a case relationship via the case ID.

I can supply more information if needed.

Any help is greatly appreciated.

You are close.
Add a Contact A relationship and use  CiviCRM Relationship (starting from contact A).

Add both Display Names fields.

In filters, add CiviCRM Relationships: Contact ID B and set it to empty.

Here is a copy of a view of CiviCRM Cases.

And a pic of the filter:

Update to solve multiple cases:

To solve the folks with multiple case types issue, I created this page view but filtered for only one case type.  I then added attachments to the view page for all other case types.


How can I update a particular activity/case via a webform? Here's the use case:

A user submits reports via a webform on a frequent basis. Each time they submit a report the webform creates a new case, and populate a custom activity type with the data that is submitted.

From time to time the administrator may want the user to re-submit a report (they may have made errors or not reached the required standard in the original submission).

What I want to do is enable the administrator to point the user to a webform where they can see all of the data they submitted originally, edit it and upload new versions of required documents, which then updates the data stored in Civi.

Can I get the webform to present the correct submission data to the user, and if so, how?

I can pass in some parameters to the webform via the url (e.g. case client), but as the user is the client of all the cases they submit that's not going to be enough to identify a particular case.

You could create a View of Webform Submissions.  It's a bit more complicated, but you should be able to achieve it (if I understand you correctly).

Be sure to add the web form submission data (I think that's the one) relationship so you can sort and filter.

Additional thoughts:
I'm trying to get away from views of webform submissions as they are not fun to create/maintain.

Another alternative, and the way I tend to go now, is to create a View of CiviCRM Relationships with the current user in the contextual filter.  Include the contact id, case id and activity id fields in the view, but exclude them from the display.  Add Case Types and other pertinent info to the view to help distinguish each case and a global text field(s) that links to a new webform.

Create the new webform by cloning the original, on the CiviCRM integration tab change the case section to update existing case and/or activity.

Where your scenario gets tricky for me to understand, is the activity and the case together in one webform.  You may need to separate these into two new webforms.  One that updates a case and one that updates an activity and create two links in the view one like:node/new_webform_id?cid1=[id]&aid=[id_1] to update the activityand one like:node/new_webform_id?cid1=[id]&caseid=[id_2] to update the case.


Best way to search through multiple postcode regions I'm in the UK where the postcode regions are - well not exactly designed for the digital age shall we say? I need to group everyone in our database into 7 regions that fit our organisation's needs but the list of postcodes per region is very diverse.

See below for an example of the postcodes from one of our regions.

I'm about to create smart groups via search builder for postcode regions like below, but I know it's going to have 20+ lines in the search builder.

So, I wondered before I start whether there is a better way of doing this? I don't want complicated smart group criteria slowing down our server, since we already have quite a few. Or would these queries not really be an issue?

I'm on Drupal 7.56 and Civi 4.6.24, and about to upgrade to 4.7. I could use Drupal Rules, Views or possibly Search Sorts if they're likely to yield better results.

Each of our regions have a list of postcodes like follows:

Postcodes beginning with:
S 25, S 35,  S 36,   S 60 – 66, S 70 -75,
LN 7,
DL,
YO,
LS,
DH,
SR,
TS,
HG,
HU,
DN,
WF,
HX,
HD,
BD,
NE 1-13, NE 15 – 47, NE 61 – 64, NE 99
(There’s no NE 14)

Thanks for any thoughts!

In the end I used Search Builder with regular expressions on the post code field. It was quite efficient once I'd learnt the syntax for regex's!!!

In case it's helpful for anyone else, here's some example regex's for postcode searches:

Eg1: - find all strings that begin with S25: ^S25.*

Meaning: ^ = start at the beginning of the string, .* = followed by any character, repeated any number of times

Eg2, Find all postcodes beginning with a string between NE15 to NE47:

^NE(1[5-9]|[23][0-9]|4[0-7]).*

Meaning:
^ = start at the beginning of the string, and find all strings that begin with NE.
From there it finds all strings containing any number from 15-47:

1[5-9] = the number 1 followed by any number from 5 to 9 (ie 15-19), OR,
[23][0-9] = The number 2 or 3 followed by any number from 0 to 9 (ie 20 - 39), OR,
4[0-7] = The number 4 followed by any number from  0 to 7 (ie 40-47),
.* = any character, repeated zero or any number of times.

Numeric ranges have no meaning inside text string searches like Regex, so they have to be constructed as above. I found this online tool to generate them automatically: http://gamon.webfactional.com/regexnumericrangegenerator/

Eg3: Place many postcodes searches on one line of regex in search builder:

(^S25.*)|(^TS.*)|(^HG.*)|(^HU.*)|(^DN.*)|(^WF.*)|(^HX.*)|(^HD.*)|(^BD.*)

This finds all postcodes beginning with S25, or TS, or HG, or HU, etc etc.

Hopefully that's helpful.


Undefined Index on line 222 of ACL.php I received the following message at the top of my Manage ACLs page:

Notice: Undefined index: 5 in CRM_ACL_Page_ACL->browse() (line 222 of /home/ourbase/www/www/sites/all/modules/civicrm/CRM/ACL/Page/ACL.php)

In my case, this was caused by disabling a group of custom fields. Look for a blank spot in the "Which Data" column to show you which one it is. There are two ways to solve this:

Solution 1: Re-enable the custom data group.
or
Solution 2: Remove the offending ACL rule.


Upgrade error: Rebuild Multilingal Schema I'm trying to upgrade CiviCRM on my Wordpress website from 5.25.0 to 5.28.0.
I've already completed upgrade in the past, so I know how to do it.
When I try to update the database, upgrade stay stuck on "[Executed: Rebuild Multilingal Schema]", and then become after few minutes "[Executed: undefined]".

I try to update to 5.26.0 and it's ok.
Then to 5.27.0 and ok too.
But with 5.28.0 it's not ok...

I tried to enable debug mod, but it don't give me more details, excepte when I try to update the database again:

I don't know where else to look, can you help me?
Thanks!
Update 2020-08-19:
I tried to disable all extension, downgrade Wordpress to 5.4.2, and tried to install again 5.28.0 update, but same issue...
Here is a video of the progress of the update:
https://streamable.com/5fubww

I noticed the 5.28.2 update that was just released includes release notes that specify the 5.28.2 update includes a fix for issues that may occur during the upgrade process:
https://github.com/civicrm/civicrm-core/blob/5.28.2/release-notes/5.28.2.md#bugs
Per the release notes, this patch was originally published in 5.27.1. However, it was not initially ported to the concurrent 5.28.beta1.
The 5.28.2 release is now available for download, so it may fix the upgrade issue:
https://civicrm.org/download
Please Note: If CiviCRM was originally installed on your website with version <=4.6, PRIOR TO THE UPGRADE PROCESS for CiviCRM 5.29.0 (next release) you may need to change/update the civicrm.settings.php, Directories, and Resource URLs configuration settings:
https://docs.civicrm.org/sysadmin/en/latest/upgrade/version-specific/#civicrm-5.29


Mass mailings and German law conformity – provide do-not-track for civimail (opt-out from track open) German privacy acts demand fulfilling three requirements when sending mass mailings using tracking technology and I wonder how to achieve this. Because I think CiviMail's and CiviCRM's core and therefor all german users would benefit from a generic solution, I'd prefer handling this in civi itself. But walking the customization way is an option too.

Pseudonymization

The tracking information has to be detached from all data which may identify the corresponding contact.

AFAIK civi does not provide such a possibility or does it?

How could we hook into database and reports to cut the link between tracking information and the civi contact? If the link is just a civicrm_contact_id in a tracking table, could we create a pseudonymic fake contact and generally override the db field with it's id?
Ability to contradict

The possibility to opt-out from tracking is mandatory.

How to implement a new communcation setting named somethin like "Do-not-track" besides "User opt-out" which tells the system to not insert tracking links or beacons in a contact's mails?

Or – as a customization approach – should we add a custom field, edit it in the mails via a link to a custom extension's function and read it using some thing like hook_civicrm_alterMailContent?
Transparency

Users have to be informed about all tracking that is done. Easy as it is a just a matter of text. But maybe we could add a default snippet.

Any help appreciated.

I don't think there is a way to achieve "pseudonymization" without having to touch code (except for turning off tracking altogether). However, implementing what you suggested, i.e. assigning the tracking events to a predefined contact ("Anonymous") one way or another, should be reasonably easy for a developer.

Adding on do-not-track flag is a different story though, that entails a lot of little changes throughout the system. It also raises questions like "if I set this flag for a contact, do we want to keep the previously gathered data?" or "should that flag also affect bounce processing?".

You might also consider doing this as an extension at first, because it will take a while to be released in an official CiviCRM version. Plus, you could make sure it's working and well thought-out.


retrieve amount of male/female participants I would like to retrieve the amount of male/female participants of an event.
So far I am able to retrieve the total amount of registered people.
How can I get a number for the amount of male and female participants?

$result = civicrm_api3('Participant', 'getcount', array(
  'sequential' => 1,
  'event_id' => 66,
  'status_id' => array("Registered", "Pending from pay later", "Pending from incomplete transaction", "Partially paid", "Pending refund"),
  'options' => array('limit' => 9999),
));

It's not going to be answering your question, but did you look at civisualize? its latest version contains a visualisation for events, with a filter based on the gender...


Security of REST API keys This OWASP document suggests that API keys for REST APIs should be passed as a POST parameter or a cookie. Not a GET parameter, because they can appear in the server logs.

Elsewhere they suggest that the right HTTP verb be used. Writes already have to be a POST request, so maybe read-only calls should still be a GET request (it makes the intent clearer).

As a GET or a POST parameter, the API key will still need to be accessible to client-side JS (assuming that's what your frontend app is written in). It may therefore be vulnerable to XSS.

A cookie can have the HttpOnly flag set so that on any modern browser it will not be accessible to client-side JS (and therefore safer against XSS). It will still be passed back to the server with each request. To set such a cookie, the frontend and backend probably need to be within the same domain.

In CRM_Utils_REST (as of 4.4 at least), the api_key is retrieved from $_REQUEST, which includes $_GET and $_POST. It used to include $_COOKIE (which would enable cookies to be used for the API key), but that is no longer the default in PHP due to other security concerns.

Is there any accepted best practice for treatment of CiviCRM REST API keys at the client side?

To clarify, they are two ways of accessing the api over the net, the REST interface (that uses the keys) and the ajax one (that is used for the front end js, and doesn't need the keys)

So if it's client js, the authentication is done through the CMS, so via the cookie session. You shouldn't use the keys.

What we recommend is to always use POST when we use the REST, not matter the action, precisely to avoid having the keys in the GET params, so it's not left in the logs and a bit more protected in general

X+


CiviEvent backing out of contact change from dedupe rule Is there a way to "back out" a change caused by a dedupe rule on an event administratively?

I see two records with the same name, Person A.
I have had a dedupe rule on an Event that was incorrect.  I have changed the rule back to a reserved rule that is working OK.  The custom dedupe rule was supposed to use Name, Email, and Phone but obviously isn't working.  The reserved rule just uses Name and Email.
One person (Person A) registered for an event and it inadvertently edited someone else's contact record (Person B).
Somehow this also changed Person B's WordPress User email.
Person B got an email that their WordPress email was changed to Person A's email, and to contact an administrator if this was not correct.  Person B contacted me.

If there is any method to avoid having to ask both contacts for all their information again to confirm, that would be great.

I am not familiar on how to view the logs for the activities, so if the information would be there it would be great to know how to view the logs.

Thanks,
Michele

If you have logging on then via the ChangeLog tab on the Contact you should be able to garner some of the required info

If that doesn't help enough then go to the log_civicrm_contact/event/contribution etc tables and fire in the relevant ID and see what it has to offer

Key thing with dedupe rules is to make sure your Weights and Thresholds make mathematical sense - esp when fields like Phone and Email will be 'scored' for every match it finds - so if a contact has the same email three times, then dedupe will score 3 x email weight.

Hence it is important to have a rule like First 10 Last 10 Email 2 = Threshold 22 (ie it would have to the same email on the contact 11 times for it to count as a dedupe while ignoring First and Last) - whereas eg First 5 Last 5 Email 5 = Threshold 15 means it could match on a record that has the email 3 times (which is quite possible) even though the First and Last do NOT match.


Way to automatically install extensions? Is there a way to automatically install and enable CiviCRM extensions? Is it possible to do this via drush on a Drupal install for example? Or is use if the UI required?

The cv cli tool provides the following commands for working with extensions:

ext:disable             Disable an extension
ext:download            Download and enable an extension
ext:enable              Enable an extension
ext:uninstall           Uninstall an extension and purge its data
ext:upgrade-db          Apply DB upgrades for any extensions
ext:list                List extensions (local and remote)

To see the full list of commands, type cv in your console.

Or if you prefer drush (Drupal only):

civicrm-ext-disable    Disable a CiviCRM extension.
 (ced)
civicrm-ext-install    Install a CiviCRM extension.
 (cei)
civicrm-ext-list       List of CiviCRM extensions enabled.
 (cel)
civicrm-ext-uninstall  Uninstall a CiviCRM extension.
 (ceui)


Accidental deletion of webform We accidentally deleted a webform and we'd like to retrieve it. Is there anyway of doing this?

This is more of drupal question rather than CiviCRM. I would restore it from db backup.

Create a test instance and import the database from backup
Export the webform using node export module from test instance
Import the exported file on live using node export module.
For importing submissions you can export the submission form test instance and user webform import module to import on live.


How to set a constant value for a field in webform (eg the prefered language)? I'm creating several webforms in different languages to let people register to receive more information. I would like to set their preferred language to the language used in the form rather than the default (en_US).

I have similar needs for some custom fields.

How can I do that?

What I found is:

add the field needed (eg. preferred field)
go on form components and edit that field to enable only the option wanted (eg. spanish) and set it as the default
set the widget as "hidden"

It's not bullet proof, as in theory, the visitor can still use tools like firebug and alter that field


membership not updated with recurring contribution When the iATS scheduler runs a recurring profile which is linked to a membership, the contribution is not being linked to the membership, and thus the membership end date does not increment. Ideas?

Drupal / CiviCRM 5.x / iATS ext 1.6.2

Update; 8/30 looking for ideas here: https://github.com/iATSPayments/com.iatspayments.civicrm/issues/217

In this issue KarinG states: " iATS extension itself just takes care of the monies; we use repeattransaction API in 4.7 -> and the fact that the recurring series is attached to a Membership - that should update it."

I think it might be due to an extension or configuration - will report back. Will check the logs.

Second update: could be that I did not select auto-renew on the webform or the field during data-import: https://github.com/colemanw/webform_civicrm/pull/181

Third Update: After marking auto_renew = TRUE for the recurring profiles, which are linked to memberships, the scheduled job still does not attach the contribution to the membership or update the end date.

Fourth Update: Updated Webform CiviCRM and created a new test webform, test membership, and set up an ongoing contribution for 1 day membership. Will see if it updates tomorrow and compare. Also, in civicrm_line_items the test submission/membership has entity_table = civicrm_membership whereas the former case which did not link to membership shows entity_table = civicrm_contribution

Fifth Update: I made a new webform, test membership, and test record - and the membership does update now! I also have noticed the newly created one creates an activity record for membership renewal whereas the former one, which is not working, does not.

Payment Processors do not care what the monies are used for. Once the transaction is completed the payment processor’s job is done.

You’ve either run into an issue with CiviCRM Core or with Webform CiviCRM.

Issues with Memberships not renewing are (unfortunately) not uncommon. Membership renewals are complicated from a logic/code perspective as there are so many different Membership models already in core (rolling/fixed, statuses config). If Membership is important for your org consider an extension that handles the logic for you. Eg -> if Contribution is Completed -> add +1y to current Membership start (or end date) - whatever your rules are you have control.


how to setup payment processors for multiple organiazations on one instance of Civi? for franchise type locations are there any extensions or alternative instructions for setting up and connecting the payment processors of civi to multiple organizations within one instance of civi? For events and memberships we have multiple locations that need to collect their own fees - franchise type setup. It makes sense to add the same account type fields needed in custom field sets for each type of processor, however, for event and memberships are there any extensions or other instructions to select proper location for each possibility and have payment go to that location directly and not our HQ organization?  thanks much!

---additionally, we are using STRIPE and Paypal

not sure I totally understand but if I do what you want is to setup one "Financial Type" for each chapter and then on each donation page you can select which Financial Type the money will be assigned to. You can also, if necessary, setup multiple payment processors -- one org we work with has 10 different processor accounts and financial types in order to keep chapter funds distinct.

you also might look into the civicrm multisite extension


How do I send automatic Thank You emails for different donation amounts and donation types? For example, I want send an automatic thank you templated email to someone using 1 email template for there "generous donation" for donations over $1,000. -- included would be some extra emotion graphics.

Whereas I would like to send automatic thank email using a 2nd email template that thanks someone is a less intense way for donations of $100 dollars or less.

Likewise, I would like to send different templates for donations of different types -- wire transfer, check, even service donations (e.g. want to provide free marketing services)

I've not tried this, but the Smarty mail template allows for conditional statements. So you maybe could create one email with different outputs,

Some older tutorials:

https://wiki.civicrm.org/confluence/display/CRMDOC42/Smarty+in+mail+templates
https://wiki.civicrm.org/confluence/pages/viewpage.action?pageId=295109201

Another option could be to use CiviRules, which triggers actions at different points, e.g. send mail y when contribution of z amount is made:

https://docs.civicrm.org/civirules/en/latest/
https://civicrm.org/extensions/civirules


Undefined Index error whenI run SYBUNT report I am getting the following error when I try to run the SYBUNT report:

  Notice: Undefined index: yid_value in
  CRM_Report_Form_Contribute_Sybunt->where() (line 286 of
  /srv/bindings/23131a86a5da4d9d91a43fa1623b947f/code/sites/all/modules/contrib/civicrm/CRM/Report/Form/Contribute/Sybunt.php).

that's just a notice - it's annoying - but may not be critical. You can check civicrm JIRA https://issues.civicrm.org/jira/projects/CRM/issues to see if there is an issue for it/report it (if not already).

If this is a live site then it's recommended not to display any errors. On Drupal go here:

admin/config/development/logging

and set to None.


Webform Conditional - 'set to' membership type Using Drupal 7.56, CiviCRM 4.7.22 and Webform 7.x-4.15.

I have two fields in a webform: one containing gender and the second containing a selection of membership types. If the gender is, for example, female I want to use the webform conditionals to set the membership type to a specific value. What value must I enter in the field displayed when I select 'set to'?

Enter the Membership Type ID and that will display the correct value in the webform.


Support for Apache 2.4 I have noted that CiviCRM creates .htaccess with the Deny from all command in stead of the Require all denied. This causes security issues with my new setup at a hosting site.

Drupal has support for both:

# Deny all requests from Apache 2.4+.
<IfModule mod_authz_core.c>
  Require all denied
</IfModule>

# Deny all requests from Apache 2.0-2.2.
<IfModule !mod_authz_core.c>
  Deny from all
</IfModule>

When is CiviCRM going to support Apache 2.4?

Ok. This is my first try using Github. Changed civicrm-core/CRM/Utils/File.php and committed to master branch with a proper summary and description. Change tag 875f1c8.

Do I have to do anything else? Should I enter anything in the issue list?


Is it possible to configure CiviMail to send from two different domains? My use case is a 501c3 organization with an associated 501c4 (sorry this only makes sense to US folks!). They have all the same contacts but need to keep c3 emails separate from c4 emails--most important, sent from different domains. It is possible to do this from a single Civi instance (i.e., have the addresses available to send emails be on two different email domains)?

Because all the contacts are the same they REALLY don't want to maintain two Civi instances. (Note we are in the eval stage so this is not a Q about how to do it; at this point I am really just looking to know whether it's possible.)

The short answer: Yes

Yes, at Administer > Communications > FROM Email Addresses, you can add any number of email addresses, and they're not restricted to any particular domain.

-- that technically answers your question, which was specifically about CiviMail (the bulk mailing component of CiviCRM). You can also specify custom "From" email addresses for Scheduled Reminders.

The longer answer: Yes, and you may need multisite

However, for transactional/system emails (automated emails such as subscribe and unsubscribe confirmations), in a normal, single-site CiviCRM instance you can have just one "From" address. This is set at Administer > Communications >  Organization Address and Contact Info.

I suspect the best solution for your use case may be CiviCRM in multi-site mode. This way you can have different transactional email addresses for each domain. So, for example, when a contact subscribes to a mailing list on your c3 site, the confirmation message will come from the c3 domain.

In multi-site, contacts can be shared between your two domains (but they don't have to be). This sounds like what you want, but it may lead to behavior that could be surprising in some cases. For example, when a contact clicks an "opt-out" link on one of your c3 emails (not just unsubscribing from the current list, but from all of your email communications), their opt-out will apply to your c4 mailings too.


Allowing a contact to update their related contacts via Webform-CiviCRM We have a webform that allows a contact to sign up for a membership and specify two related contacts (let's say "Spouse" and "Child" for the example).

When they come back to renew, we can prefill the contact's info via a checksum token in a link from CiviMail (or automatically if they are logged in) -- but is there a way to prefill the other related contacts as well, so they don't add duplicates when they renew?

If you have the Spouse and the Child set up with Relationships - and you configure the webform to have 3 contacts, and you set the contact 2 "Existing contact" webform component to have a 'default value' based on 'relationship to contact 1' then I would expect that using a checksum for contact 1 should result in those other contacts being prefilled. Is that what you need?


calculate RFM in civicrm there is a way or an extension to calculate the RFM (Recency, Frequency and Monetary) score for the contacts, and maybe to store them in the DB.
I read that SmartGroup can be used with this purpose, but after some tests, I cannot figure how.

You'll need a custom report template for that! We have written donor segmentation reports with all kinds of metrics - RFM is just another set of metrics/calculations;

This is still a really good reference to get started on custom reports: https://alastaira.wordpress.com/2011/03/17/civicrm-creating-a-custom-report/


How to update to new SQL database username and password? We recently received a site dump from the previous host, inclusive of the Civi CRM SQL database.  When creating a new account, I had to create a new database Username and Password.  Does this need to be added/updated anywhere with the Civi CRM plugin (WordPress) in order to connect properly?  Would like to be sure before repointing the domain.

Thanks,

Steven

These values need to be entered in the civicrm.settings.php file (i assume this is the same for WP as for Drupal)


Manual entry of recurring donation We're moving over to CiviCRM. We don't currently use - or actually really plan to use - it for our donations, many of which are just sent as regular bank transfers. I'd like to be able to record these on CiviCRM without entering them manually, but can't see a way to do this - any thoughts?

There is an extension available for adding offline recurring contributions but unfortunately the tag says it works till 4.4. Might be worth contacting maintainer if they have any plans to upgrade.

Pradeep


Drupal Rules: Send email then Contact Custom Field Value was updated There are two different "Reactions on Event" if you create a Drupal Rule:
"CiviCRM Contact has been updated" and "Custom field has been updated" (which is clearly about someone edits Field, not value attached to Contact).

What kind of conditions should be set to get value of a Contact's custom field altered?

It turned out Jaap Jansma - CiviCooP  was right, CiviRules ( and Email Api for sending emails - a missing piece from my previous attempts ) can do the job nicely. CiviRules can handle any Contact change nicely. Kudos to  Jaap Jansma - CiviCooP!


how do I make a contribution Anonymous I have a contribution page set up for a flood recovery fund and some people want to give but not be recognized for their gift.

I am assuming you are publishing donor names somewhere and the donor does not want their name published.  If this is correct, there are a few ways to handle this, below are a couple ways we do.

One way is to use a custom contribution field. It can be a yes/no or a check box with the question: Do you want your contribution to be anonymous? When running a report of names to publicize, you can filter out those that said yes.

Outside of donation pages, if we get an envelope of cash dropped off to our door with no contact information, we decided to create an organization called Anonymous Donations, where we log their contributions.

Also welcome to stack Aaron - just a reminder - try to include what version of Civi and your CMS (wordpress, drupal, etc) you are using.  Sometimes there are answers specific to your setup.


angularjs: example from docs.civicrm.org does not work I did the exact steps listed in https://docs.civicrm.org/dev/en/latest/framework/angular/quickstart/ on my drupal7-civicrm4.6 installation.
Calling the url my_site.com/?q=civicrm/a/#/about/me displays nothing.

Any ideas what the problem could be? It should not be about caching, as I executed drush cc all and cleared the cache from the CiviCRM GUI.

As I mentioned in the comments you should be sure to enable your extensions such as with cv ext:enable <extension name>

Check what warnings you're getting in the console. I was getting warnings about the injector but after clearing the cache (drush cc civicrm) and setting the right file permissions on the files in my extension these went away and I could view the page.

I was still getting errors about a missing CSS file, but I think this is a bug where these angular modules don't respect the variable extensions directory (my extensions are separate from the application files)


Can't print participant's image in name badge I'm trying to use the Name Badges feature to create badges for an NGO I work as a volunteer. So far I was able to set up the badge with the fields I need. Everything seems to be ok but, when I click to generate the PDF with the badges all the fields are there but the contact (participant) image. Even the QR Code is generated and printed.

I tried to debug in all the ways I know and found that, at /wp-content/plugins/civicrm/civicrm/CRM/Badge/BAO/Badge.php the imageURL has indeed the correct image path and file name.

The strange part is that even with the imageURL being correct, the image doesn't show up in the PDF. However, when I tried making imageURL a fixed value the image was printed (obviously, the same image for all participants).

As I ran out of options, would someone point me to any other way to figure out why this happens and how to fix it?

Any help is much appreciated.
Thanks!

CiviCRM 5.10.4

Wordpress 5.1

--- x ---

Thanks to a user's insight in lab.civicrm, I did some additional investigation and found that in db the imageURL is stored as

http://domain.org/civicrm?page=CiviCRM&amp ;q=civicrm/contact/imagefile&amp ;photo=0008_51c4b981d854da8af05e187aa199952b.jpeg

with &amp ; (I've added the space here because of the editor) instead of just &

I manually updated one record and the badge was generated with the image.

I can't say this was introduced as part of the update process or not, but a script to fix imageURL will make it work while the root cause is investigated.

Image URLs were the subject of a security release in CiviCRM 5.10.3.  My guess is that you've uncovered a bug related to this, especially if they printed in the past.

My recommendation would be to take your test site (I hope you have one!) and revert it to CiviCRM 5.10.2 to see if it resolves the issue.  If so, I would use the test site to print the badges, and report the bug on https://lab.civicrm.org, referencing this Stack Exchange question.


I have everything done and still this red no go Language and Region Settings

CiviCRM has been translated to many languages, thanks to its community of translators. By selecting another language, the installer may be available in that language. The initial configuration of the basic data will also be set to that language (ex: individual prefixes, suffixes, activity types, etc.). Learn more about using CiviCRM in other languages.

I just don't get it. Im in FTP the files are all there. Is this saying to load them again??

So I'm no tech, this is going to me layman's terms.

The issue fixed by going into FTP to the plugins file and adding a file named "files" and then dropping the civicrm folder into that file named files.


Unsubscribe URLs in emails being altered by firewalls We are experiencing a significant number of links in our emails being altered by email firewalls resulting in recipients experiencing peculiar unsubscribe form behavior that is troublesome.  For example, one firewall product replaces any email address in our unsubscribe URLs with mail=nobody@mycraftmail.com.
Has anyone explored an alternative method for unsubscribe links that works well?  We are considering using cid and checksum, but the form won't work once the token expires.  We are using CiviCRM 5.21.3 on Drupal 7.73.  Thanks for any suggestions you may have.

You may want to have a look at the Advanced Newsletter Management Extension. It allows you to configure mailing subscription preference pages in CiviCRM. The extension will then make this information available via its REST API and an external system can generate the pages and present them to your contacts.
As it does require some work to set up mailing preference forms separately from CiviCRM, it's not a quick and easy fix.


Is there a way to bulk edit relationship permissions? I have about 70 organizations that we imported with individuals - that will have permissions to view and update information.  Is there a way to make sure they can have that permission when we import or bulk edit that information.  Right now I am adding permissions one by one.

You can use the API, or the API CSV import GUI.  Either way you'll need to have some way of identifying the relationships that need editing.

While I don't recommend running SQL directly against the database, this is one instance where it will be safe - IF you aren't using inherited ("conferred") relationships.


Where do I found the "form action" call in TPLs to an Event? I need to add a target attribute to the "form action" tag of an Event Registration form, because I need the Confirmation to open in a new window.

I'm trying to find the TPL file that inserts the "form action" tag, but I couldn't find it already. So, where is it?

Thanks.

Most / All forms inherit the form code from:

templates/CRM/Form/default.tpl

I dont think you should modify that. However, the form tag also emits all attributes attached to the form. So your best bet will be to add an attribute to the form object in the buildForm hook for event registration. There is a method call on the form object to add an attribute:

$form->updateAttributes()

lobo


How does civi replace page content? Wordpress We were testing out a theme builder and have an issue with Civi not only replacing the page content in the body of the page but also in other areas (sidebar, footer). Did a little reading and know that Civi replaces page content, can you help me understand how that happens? I'd like to figure out if I can in fact make a minor tweak or two to the template or if I need to just scratch it altogether.

WordPress 4.4.5, CiviCRM 4.6.4

TLDR; We were testing out a theme and learned that Civi replaces page content and with the current setup, it's replacing other areas too (sidebar, footer).

The CiviCRM plugin only filters the content when the shortcode is present or when the page is the CiviCRM basepage. For shortcodes, it pre-renders the CiviCRM content that the shortcode represents at the wp action stage (in order to support multiple shortcodes in, for example, archive pages) and then uses the the_content filter to inject the CiviCRM content.

All the relevant code can be found in https://github.com/civicrm/civicrm-wordpress/blob/master/includes/civicrm.shortcodes.php

If you have details of situations where the plugin incorrectly filters content, it would be helpful if you could update your question with specific information so that it can be addressed.


Is this expected that civiHR removes lots of features (eg activities and cases)? So I'm trying to use civiHR. I understand that some features are still beta and some new custom screen don't work so well and I'm prepared to live with that

What I don't understand is that civiHR disable existing features, eg:
- list of the cases "recruitement" isn't displayed n the case tab
- activity tab removed

Is this on purpose or a bug? I don't see the point of removing features that would still have a sense because HR introduces different workflows too.

Is there a way to let the existing features of CiviCRM enabled, even when using civihr?

(Note: My comments are focused mostly on CiviHR <=1.4; for 1.5+, I haven't followed as closely.)

CiviHR is broken down into several different extensions. Each extension defines a different piece of the data-model/UI (eg for tracking job contracts or tracking qualifications). If you pick and choose these individually, it should be possible to load them onto a CiviCRM site without disabling/removing features.

One extension, org.civicrm.hrui, is particularly opinionated and aggressive about reworking the UI. Its primary purpose is to reshape the overall user-experience for standalone CiviHR deployments -- emphasizing HR-specific elements, de-emphasizing fundraising-specific elements, tweaking phrases/word-choices. It fills a role similar to Drupal's installation profiles.

If you're an experienced Civi implementer/consultant looking to add some HR elements to an existing Civi site, then you've probably used most of the same tricks as hrui (eg toggling components and toggling display preferences), and you'll probably disagree with some of the opinions in hrui. So skip it; you're not the target audience for that extension. Browse the list of extensions and pick the ones which are relevant.


Is there a way to customize CiviCRM UI? I am running a fresh site CiviCRM with Drupal. I am very new to CiviCRM and Drupal too.. I am in need up building an intranet CRM application that can look like a professional CRM applications. I am very much glad with the functionalities that CiviCRM provides. However as per the look and feel, I wanted to make it more intuitive for the users. My questions are:

Can I enhance the look and feel of CiviCRM aesthetically?
If yes, what are the means and ways to do it.
Please advise the best recommended way.
Guide me to some of the videos that can teach how to achieve this.

Thank You.

This is a really broad question, and without some guidance as to what you consider a "professional CRM applications" looks like it is tricky one to answer.

That said, with Drupal we often built out a UI via Views and Webforms that can keep all the but the hardcore admins out of civicrm entirely  - depending of course on what the extent of their requirements are.

This may be an easier path for you to explore than rebuilding the civicrm ui directly.


After Upgrading to 5.23.0 New Cases Missing Custom Field Data from Webform Submission I have a Drupal webform which creates a new case in Civi. After upgrading from 5.22.1 to 5.23.0 all the custom field data in the case is missing after submitting the webform. There are no error messages either in Civi or in Drupal.

I have duplicated the issue to make sure it was the upgrade that was causing the problem.

I am using Drupal 7.67 with the latest version of Webform_CiviCRM.

This is a core bug, have logged an issue and provided temporary fix for it on the ticket.


Is it possible to import "Assigned to" data for Activities? In the "Import Activities" interface in CiviCRM (version 4.6.3, drupal 7), there are many options for fields to import.  One critical field that appears to be missing is the "Assigned to" field (sometimes referred to as the "assignee").  I'd like to know if it's possible to import this field when importing activities.

This matter was discussed 2 years ago, in this forum thread:

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

  Definition of "Assigned to" from the user guide: "The person (usually within your organisation) that will carry out (or has carried out) the activity."

I'm wondering if any progress has been made on this since that forum thread.

I've used this CiviCRM Extension for just that purpose, however, it looks like it's only be released up to 4.4

Might be worth checking if there is a 4.6 version that's not been released

https://civicrm.org/extensions/api-csv-import-gui


Why is the Actions button missing from Reports on 4.7.x after upgrade After upgrading, several sites are missing the Actions on the Reports

In our case this was because the 4.6.x sites were using

net.ourpowerbase.reports.advancedfundraising

needed to swop to the newer repo of the code ie

net.ourpowerbase.report.advancedfundraising (without the 's') from

https://github.com/jmcclelland/net.ourpowerbase.report.advancedfundraising/archive/master.zip


Prettifying forms - what is the best we can use as a theming for pure civi forms? There's Shoreditch ext - bit seems it is only limited to backend admin UI?

Are there any other alternatives for contribution and event registration pages?

Alternative could be the Haystack theme (although I have not tried what it does to event or contribution pages): https://github.com/mattwire/civicrm-haystacktheme


Trouble with PayPal recurring payments Drupal - latest version
CiviCRM - 4.7.13

We have a client that uses PayPal standard with recurring payments that having an issue that I can't figure out.  The recurring payments seem to have quit working since the first of the year.  By quit I mean they are logged but after that nothing seems to happen.  No errors and no record of the payment.  I have used a test setup where I use curl to resend messages to my local environment while in debug mode but it doesn't work (it does work for authorize.net payments).  In this case it seems like the data isn't there when the message is to be processed.

Another interesting thing is that some of the IPNs look like they are resent several times within a few mins.  They have the same transaction ID, etc.

Any help or ideas are very much appreciated.

Answering in case this is helpful.  The problem was configuration (not informed of PayPal email change).  Would have been very quickly solved if something was logged vs just discarding the IPN.


Offline event payment I want to register offline payments of an event.
The total cost of event is € 100. Contacts can pay twice. € 50 at the end of October and 50€ at the end of December.
I want to send the email notification to remind payments.
When i put a partecipiant registration to the event, I can select the payment status.
If you register a second payment instead I can not select the payment status. Why ?

Thanks.
Marco

The 'Contribution status' is automatically updated when the second payment is added. For example:

Register a participant for an event that costs $800
Log the contribution as $400 and save the registration
Note that the contribution is 'Partially paid' in the registration list
View the participant record, click on 'Add payment'
Add a payment of $400
Note that the contribution status has been updated to 'Completed'

If you want to manually change the status of the entire contribution, you can do so by editing the contribution.

If you want to change the status of individual payments then that looks like a feature request! It doesn't appear to be possible to even edit individual payments at the moment.


Is there a way to pass additional information (e.g. Description) to the PayPal payment-processor? We are using PayPal as our payment processor and Xero for our accounting. When reconciling the PayPal items generated from CiviCRM we noticed a field called "Description" that is usually empty. Is there any way of passing information to that PayPal field from a CiviContribute form? It would be monumentally helpful when reconcilling if we could pass simple descriptions like "Dues" or "Building Fund" to PayPal that we could then see in Xero (and use reconcilliation rules with).  Thanks.

Civi does send description to paypal. You can alter them by implementing hook_civicrm_alterPaymentProcessorParams() hook


Is it possible to change custom group/custom field Entity Scope from just individuals to individuals and households (or ANY)? I have an existing field for the donor name to show in printed materials. It was set up just for Individuals. The Custom Group has only this one field in it. Several reports/profiles/templates already use this field. I also want this same field available for households. If household data (or organization data) is pulled, I'd like to be able to have this field available, and I'd like to be able to update it. Table: civicrm_custom_group shows the help text for the column in question as:
extends
Type of object this group extends (can add other options later e.g. contact_address, etc.).   Individual is the value currently. Can it hold more than one type? Can it be changed? Is there a way to have the same custom field for more than one type of entity?

An old question, but an answer might still be useful to someone ...

If you had set the Custom Group to extend 'Contact' then it would be available for Individuals, Households and Organisations. But you can't change the extends (Used for) setting via the GUI after creation.

Two options:

1) Create a new Custom Group used for Contacts.  Then:

go to the old Custom Group, View and Edit Custom Fields,
on the relevant field click More then Move
select the new Custom Group.

2) Modify the extends parameter via the API. For example, use the API explorer:

set Entity to CustomGroup
set Action to get
Execute
find the right Custom Group and note it's id
change Action to create
change Parameter to Custom Group ID = the id you just found
add Parameter, Custom Group Extends = Contact
Execute

Be aware that the API lets you do things that the GUI does not, and it is possible to break your system in nasty ways with it.  Just because the API lets you change something doesn't mean you should!


Different subsets of a selection custom field I have a select custom field for 'Accommodation' showing the options available for participants in events' registration form.
To simplify, lets say there are 10 different accommodation options, 'option 1' until 'option 10'.
It gets complicated when each of the different events (around 100 different events) have a different subset of those options, and not all 10 options are available for each event. So event A has options 1,2,3, event B has 2,3,5,7, and event C has all 10 options available.

I created a custom field for each subset of options, but came to a point of having almost 20 different custom fields called accommodation, and then trying to draw up a report of all participants from all events, showing which accommodation option they chose - is just a big mess with 20 custom fields that do not intersect.

My question is how to have only one custom field with all 10 options, but then to somehow specify for each event which out of the 10 options should be displayed and available for choice, for that particular event.

To do this via webform_civicrm

Download and enable webform_civicrm and read the documentation.

Google for some answers on SE or our blog at fuzion.co.nz/blog for some explanations about doing Events via webform_civicrm eg

https://www.fuzion.co.nz/blogs/registering-multiple-people-multiple-events

https://civicrm.stackexchange.com/questions/tagged/webform-civicrm

How can I create early bird fees with Webform CiviCRM?

Calculated member fees


Edit 'existing locations' for events I would like to edit my list of existing locations for events. We have several locations with the same name that we don't longer use so it gets confusing. Is there a way I can remove these from the list of existing locations?

Thanks.

I don't think there is way to do this through the UI, although it does seem like something admins might need to do occasionally.

However, as the dropdown list of event locations seems to contain all the address fields, I am surprised that it is confusing. Even if they have the same name I would have thought there were enough other details to make picking the correct one easy.

If you are wanting to do a one-off cleanup of obsolete addresses than as a UI work around you could edit the old events that contain those obsolete locations and set the first address line to DO NOT USE  or NO LONGER IN USE or similar.

I don't really know about good and bad practices for using the API, so what I am about to suggest could be a really bad idea.  If those old events no longer exist then a different approach might be to use the API to find the address ID, email ID and phone ID of the event location you want to delete, then use the API again to delete the location block associated with those values.

If that is a really bad idea, a more knowledgeable person should feel to edit my answer and remove that part.


How do you separate wordpress and civicrm tables? When we first installed CiviCRM - the installer was super eager to install using the existing WordPress database. We were just testing out CiviCRM at the time, so it was not a big deal - however we ended up sticking with CiviCRM and now we are migrating to a new server.  Before we migrate to the new server - we think now is a good time to separate the CiviCRM tables from the wordpress tables. Based on the stack mentioned above, I plan on doing the following:

Enter site into "maintenance mode". i.e. temporarily close to public.
Create a new civicrm database
Export the civicrm tables from the original wordpress DB.
Import the civicrm tables into the new civicrm database
Edit wp-content/uploads/civicrm/civicrm.settings.php to point to the new civicrm-only DB.
Test
Drop the civicrm tables from the original wordpress database.
Celebrate?

Is there something else I should be aware of?

Maybe if you have some plugin that uses $wpdb to access civi tables. For example there are several workarounds to try to get the functionality of drupal views that isn't in wordpress, and if they're written as native wordpress plugins and not civicrm extensions maybe they would use $wpdb.


Contacts unexpectedly added to group We have about 2800+ contacts in CiviCRM, including our 16 Board members. I have a "Board Members" group (access control group) for just those Board members. I also have a mail group set up for the same members. For some reason, unrelated to any action on my part as far as I can see, I am getting our entire list of contacts added to the Board Group.

I can even go in and remove all of the contacts from the Board Group, add the contacts from the Board email group back in and verify the correct contacts are in the Board Group. If I go away for some short period of time and return to look at the Board Group, all 2800+ contacts have been put back in.

Needless to say, this is annoying and we don't really need 2800 people on the Board. Does anyone have an idea what's going on and how to put a stop to it?

Thanks

I can think of three reasons why this would happen.

"Board Members" is a smart group.  You can check this by going to Contacts menu » Manage Groups.  If it's a smart group, it either a) shouldn't be, or b) the criteria need to be changed.
The Board Member group is the parent of some other group. I did this by accident myself recently; you'll need to remove the parent-child link.
Some custom magic.  If you're the only administrator of the database, we can rule this out.  However, I perform similar tasks all the time, either using a) cron with a SQL query, b) the SQL Tasks extension, c) a custom extension.


SOAP Proxy URL is invalid What is a SOAP Proxy and why is it invalid?

We use CiviSMTP for our SMTP provider. When I test the settings that were entered by our previous developer in our SMTP provider account settings, I get the following error:

  Civimail User Check : it appears that the proxy URL that you gave is
  invalid

The SOAP proxy URL entered is: https://www.example.com/sites/all/modules/civicrm/extern/soap.php

I am not sure what effect, if any, that this is having on our website. I believe it was working correctly until I upgraded CiviCRM from 4.3.8 to 4.7.15.

Edit: I looked at the patch that needs to be applied to 4.7.x versions of CiviCRM but didn't apply it because the code in my version doesn't match what's in the advice for the patch here.

Here is the debug output for this debugging script:

SoapFault exception: [Client] looks like we got no XML document in /var/www/html/example/docroot/sites/all/modules/civicrm/check_soap.php:13
Stack trace:
#0 /var/www/html/example/docroot/sites/all/modules/civicrm/check_soap.php(13): SoapClient->__call('authenticate', Array)
#1 /var/www/html/example/docroot/sites/all/modules/civicrm/check_soap.php(13): SoapClient->authenticate('example_username', 'example_password')
#2 {main}
Raw Response:

Notice:  Constant CIVICRM_MEMCACHE_PREFIX already defined in /var/www/html/example/docroot/sites/default/civicrm.settings.php on line 26

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/

See https://www.civismtp.com/drupal/accountsetup#invalidproxy - for how to troubleshoot/debug.


Webforms - 'existing contact' does not auto complete Using the 'Existing Contact' field on Civicrm without being logged into an account, it is impossible to autocomplete the form.

When i am logged in i can enter any existing contacts email and the form auto completes. Am I missing something in permissions?

Thanks.

ON the webform, the component that is the 'existing contact' has a 'permissions' check box - you need to use this to override the controls  but note, this is what prevents your database being searchable by the public, so you may be disclosing information that you don't mean to (thx JonG for better wording)


CiviContribute Payment Selection Ok, this is a little difficult to explain, but I'm going to try :)

A customer set up a contribution page for payroll deduction, so they would just select the "Pay Later" payment option, but, for some reason, they didn't select anything for the payment option when setting up the "Contribution Amounts" section. No warnings or anything came up that said it was required to select at least one payment option.

They made the contribution page live and sent it the specific organization for their employees to complete. When we went to pull the report, it had everyone that had completed the contribution form, but the amounts they selected weren't showing at all. Is this because no payment option was selected?

Is it possible to make it a requirement for contribution pages that you have to select some kind of payment option? Whether it be CC or Pay Later?

Hopefully this makes some kind of sense ;)

I really appreciate any info on this one because our customer is frustrated (even though they setup the form without checking with us).

Drupal 7
CiviCRM 4.6.8

If you need any screenshots or anything else, just let me know. :)

Thank You!!
Nicole

I don't quite understand and am unclear whether you tried this yourself or not. I presume i don't understand, but here are a couple of factors.

1/ You should not be able to set up a Contribution Page with no options for specifying the amount.

Contribution Amounts section enabled
If you want to enable the 'Contribution Amounts section', you need to either 'Allow Other Amounts' and/or enter at least one row in the 'Fixed Contribution Amounts' table.

2/ You should not be able to set up a Contribution page without offering either Payment Processor or Pay Later

Sorry but we are not able to provide this at the moment.
A payment processor must be selected for this contribution page (contact the site administrator for assistance).


How to redirect after successful newsletter subscription After a user signs up to receive newsletters (using the profile coming from CiviCRM/CiviMail), they receive a confirmation email. Upon clicking on the confirmation link in that email, they are taken to a Confirmation page which says that they have successfully been subscribed to the X mailing list. The content of that Confirmation page comes from the /civicrm/templates/CRM/Mailing/Page/Confirm.tpl.

What I need to do is one of the following. Either of these options would work for me:
1) Run php code in the Confirm.tpl file. This would allow me to dynamically load some additional content and present it to the user. I'm not sure about the possibility of this because I know inserting php in Smarty has been deprecated.
2) Redirect to a separate page and present to the user that page instead of the content coming from Confirm.tpl. In that separate page I would then be able to run my php and load content dynamically.

I am running Wordpress 4.4 and CiviCRM 4.6.8.

Have you looked at adding a .tpl.extra file? This can be a very easy way to add more content to any template.

Instructions are here.

Your .tpl.extra file could contain either the extra content you wish, or one line of javascript to perform the redirect.


Removing Carriage returns after a blank address field? We have an address block on some pdf templates in CiviCRM some contacts have address2 or address3 lines while other do not.

Using the normal tokens we end up getting blank lines and the address block looks messy.

Has anyone found a way of conditionally formatting the address block to not create these blank lines?

I was looking for some IF(Token not NULL THEN add Token and carriage return ELSE nothing) but can't find any solution online.

Thanks,

Dave

Try to use  as below which does the job

{contact.addressee}

{contact.street_address}

{contact.supplemental_address_1}

{contact.supplemental_address_2}

{contact.city}

{contact.postal_code}

OR

I am not sure about replacing the in-build token using IF statement

But you can create an Address block token on your own where you can remove blank lines - and you can use address block token in the PDF

http://wiki.civicrm.org/confluence/display/CRMDOC/Customized+%28and+Custom%29+Tokens

I guess this help - if you need more details please let me know - thanks


In Drupal 8 Webform_Civicrm how do I clone a Contact? Running Drupal and Webform_civicrm 8.x-5.0-beta4.
How do I clone a Contact?
If I create one Contact, then change the number of Contacts from 1 to 2 (or more) I get the message:
Tip: Consider using the clone feature to add multiple similar contacts. (more info)

The (more info) looks like a link, but does nothing when I click it.
On D7 there is a 'Clone Contact' link on the Webform tab, but I can't find the equivalent on the D8 Build tab, or elsewhere.

Unfortunately there is no such clone feature yet. We've had to park it for now as other outstanding bugs: re: existing contact element, and re: static/live options take precedence.
So I've just removed the Tip (for now) and have added a ToDo statement:
https://github.com/colemanw/webform_civicrm/pull/449


Is this a bug? "Paypal IPNS not handled other than recurring_payments" appears when txn_type is recurring_payment_profile_created On a WordPress site with CiviCRM 4.7.8, using 'Paypal - Website Payments Pro' payment processor:

When a user submits a recurring contribution, that recurring subscription is created in PayPal, but in CiviCRM it remains in 'Pending' status.  When the IPN notification is resent, the following is written to the error log:

Jun 17 09:50:14  [info] $GET = Array
(
)

Jun 17 09:50:14  [info] $POST = Arrayhttps://[domain, redacted]/wp-admin/admin.php?page=CiviCRM&q=civicrm%2Fadmin%2FpaymentProcessor&action=update&id=1&reset=1#
(
    [payment_cycle] => Daily
    [txn_type] => recurring_payment_profile_created
    [last_name] => [last name, redacted]
    [next_payment_date] => 03:00:00 Jun 13, 2016 PDT
    [residence_country] => US
    [initial_payment_amount] => 0.00
    [rp_invoice_id] => i=[invoice id, redacted]
    [m] => contribute
    [c] => 27906
    [r] => 262
    [b] => 49350
    [p] => 2
    [currency_code] => USD
    [time_created] => 13:04:25 Jun 13, 2016 PDT
    [verify_sign] => [verify sign, redacted]
    [period_type] =>  Regular
    [payer_status] => unverified
    [tax] => 0.00
    [payer_email] => [email, redacted]
    [first_name] => [first name, redacted]
    [receiver_email] => paypal@[domain, redacted]
    [payer_id] => [payer_id, redacted]
    [product_type] => 1
    [shipping] => 0.00
    [amount_per_cycle] => 1.00
    [profile_status] => Active
    [charset] => windows1252
    [notify_version] => 3.8
    [amount] => 1.00
    [outstanding_balance] => 0.00
    [recurring_payment_id] => [recurring payment id, redacted]
    [product_name] => Online Contribution: Donate Now: 1.00 Per 1 day
    [ipn_track_id] => [ipn track id, redacted]
)

Jun 17 09:50:14  [info] Paypal IPNS not handled other than recurring_payments

Jun 17 09:50:14  [info] $error data = Array
(
    [error_code] => 0
)

Jun 17 09:50:14  [info] $REQUEST = Array
(
    [payment_cycle] => Daily
    [txn_type] => recurring_payment_profile_created
    [last_name] => [last name, redacted]
    [next_payment_date] => 03:00:00 Jun 13, 2016 PDT
    [residence_country] => US
    [initial_payment_amount] => 0.00
    [rp_invoice_id] => i=[invoice id, redacted]
    [m] => contribute
    [c] => 27906
    [r] => 262
    [b] => 49350
    [p] => 2
    [currency_code] => USD
    [time_created] => 13:04:25 Jun 13, 2016 PDT
    [verify_sign] => [verify sign, redacted]
    [period_type] =>  Regular
    [payer_status] => unverified
    [tax] => 0.00
    [payer_email] => [email, redacted]
    [first_name] => [first name, redacted]
    [receiver_email] => paypal@[domain, redacted]
    [payer_id] => [payer_id, redacted]
    [product_type] => 1
    [shipping] => 0.00
    [amount_per_cycle] => 1.00
    [profile_status] => Active
    [charset] => windows1252
    [notify_version] => 3.8
    [amount] => 1.00
    [outstanding_balance] => 0.00
    [recurring_payment_id] => [recurring payment id, redacted]
    [product_name] => Online Contribution: Donate Now: 1.00 Per 1 day
    [ipn_track_id] => [ipn track id, redacted]
)

Is this a bug, or might there be some configuration we can adjust?

This is a bit of a red herring. The message "Paypal IPNS not handled other than recurring_payments" is legitimate in this case. What's happening is that PayPal sends a single confirmation message upon receipt of the recurring payment request, and then later it will send "recurring" IPN messages for each recurring payment, including the first one. This single confirmation message is rightly ignored, because soon after it will come the IPN message for the first recurring payment.


How do I add additional information to a contribution page? PROFILE OPTION NOT WORKING In my contribution page, there is not an option to add a profile:

The dropdown menu doesn't work (doesn't exist) and even if I type in the name of a profile that I have created, it doesn't actually do anything. We have PayPal Standard and because we have that set up as a payment instrument thru CiviCRM, it isn't a button that we can add settings to from PayPal, so PayPal doesn't collect that information for us. We need to be able to collect donor addresses to send them their donation receipts. If the donors are already in our database, I can pull a report from CiviCRM but if they aren't all we have is a name and email address.

Is there a workaround? Or am I doing something wrong? I have several profiles on CiviCRM--some of the standards and some that I've created and none are available.

I looked at the suggestions here but none worked. My page (here) is on WordPress. Also, I am a total novice at coding, so the more info you can give if suggesting going into the code, the better. Thank you!

I had this problem last month and also posted my question on Stack Exchange - though I realize that most people who looked at my question and yours wouldn't think they were the same!  Check it out: Backbone isn't loading on Civi 4.6.11/WP 4.4.1

If you pull up your Developer Console (press F12 in your web browser when viewing this page, then check the "Console" tab, you should see the same errors I reference in my question.  If so, the answer is the same.

In less-technical terms - CiviCRM uses a pre-built package called "Backbone" to build the profiles on the page you're viewing.  Some Wordpress themes also use Backbone, and sometimes they conflict, which causes what you're seeing.  If you switch to a theme without this problem (for instance, the twentyfifteen theme), you should see the problem go away.

To fix my problem, you can use a different theme, or you can try to hack your theme.  I took the latter route; I created a child theme (there's lots of Wordpress documentation on that), and I overrode the objectionable code with my own code.


Extension Maintenance: Settings It's time to update the Phone Number Validator to support version 4.7.

In the uninstall function, I tidily remove the settings that get added during install. This looks as follows:

'DELETE FROM civicrm_setting WHERE group_name = "com.civifirst.phonenumbervalidator"'

But the group_name field has been removed. How can we neatly remove settings entries in a way that supports 4.6 and 4.7?

Thanks,

John

The group_name in <=v4.6 was deceptive -- in some circumstances, it provided namespacing, but it in others it didn't, so the safe play has always been to use some kind of name-prefixing.

If the setting names are prefixed, then do something like:

DELETE FROM civicrm_setting WHERE name LIKE "phonenumbervalidator_%"


How To Apply Membership Type Update To Existing Records i have a set of membership records set to expire every two years. So i have a lot of members whose expiry date is set to 2 years.

Now i have updated membership type to 1 year expiration. I find that only new members inherit the new expiry date but not the old records. How can i update the old records membership to reflect the changes.

You may have to amend the 'end dates' that are on those old style memberships either

via SQL
manually in the DB
via a Batch Update of Memberships
export Membership data and reimport it (as per JoAnne's answer - added here to include in this list)

Which option suits you may depend on your skills and the number of memberships involved.


Unsupervised De-Dupe Rule failing in 5.9.0 Since upgrading to 5.9.0 (Drupal 7.6), we have noticed that all self-service / online event registrations are creating duplicate contacts - of both the individual end the organization (employer) record.

Having looked at the Unsupervised rule, it should absolutely be triggering - eg there are multiple contacts that have been created where the first name, last name, and email all exactly match an existing contact.

Our individual unsupervised rule is:

Has anyone else seen this behaviour on their installation?

I am not sure if its somehow related to one of the regression for 5.9.0 for Anonymous user ACL permission which is fixed in 5.9.1. Would be worth trying after upgrading CiviCRM to 5.9.1 or applying patch from here!

HTH

Pradeep


How can I get at the Email address of a Contact Reference? CiviMail and Tokens question! It's straight forward to insert the Name of a Contact Reference (custom field) in CiviMail using Tokens. Does anyone know of a way to get at the Email address belonging to that Contact Reference?

Maybe the "Related Token Extension" does the trick? Even if not, it may be better to build up on an existing extension that pulls token from related contacts instead of building a new extension from the scratch.
Another example for such an extension ist the "Additional Token" extension, I am pretty sure I have seen others...


Automatic discount for membership not working Using D7/CiviCRM 4.6.10 and Cividiscount 3.1

I've set up a discount code to enable current members to renew their membership at 50% of the standard membership fee. If i make the code non-automatic and enter it manually it works.

Setting the automatic discount options for the code for the membership type and 'any current status' should ensure that if the user has the membership type and their status is one of the those considered current (i.e. New, Current, Grace) then they automatically get the discount, but I'm seeing nothing applied on the contribution page.

The contribution page recognises the user as a current member, as it is displaying a message to tell the user when their current membership is due to expire, but it is not applying the discount, and nor it it displaying the "not eligible" message.

Is this a known issue, or am I missing something subtle in the configuration?

Graham, I found the fix here
https://issues.civicrm.org/jira/browse/CRM-17388

We had exactly the same issue but really thankful it is resolved with the patch

Jon-man


Setting up CiviCRM with Multisite Wordpress Thanks in advance for any help or insights, I have an existing WordPress multisite install and we would like to have CiviCRM installed on all three sites but sharing the same database. I have followed the civimultisite documentation and the checklist posted here, but as soon as I hit the [install] on the 2nd site, I get this error: "Found installation Canary” while installing CiviCRM". I have edited the civi settings php file adding the domains of the other 2 site per the documentation but no joy yet, any help will be deeply appreciated!

i do this with a WPMU and civiCRM and it work fine. I m french, i dont speak english but i do a tutorial in french, i can give you this doc, my mail is pikerez@laposte.net. Goodbye


Problem with recurring contributions on PayPal sandbox I am setting up a CiviCRM website and using one of its modules to try to set up a recurring payment using PayPal.  From the CiviCRM website, I get taken to the first PayPay screen:

I click on "Pay using debit or credit card" and get to this screen:

I fill this in with some dummy details, and click "Continue".  At this point, my browser says "waiting for www.sandbox.paypal.com" and never returns.

I have tried this on a number of occassions, at different times of day, but always the same result.

I did wondering if it was hanging at the point of sending an IPN back to my website, but PayPal does not list any IPN attempts.

Can anyone shed any light on this?

Thanks

Normally I create an account on the Paypal Sandbox server and then create a sub-account on that which has a bank account, balance, etc. And then when I test via the sandbox, I log into that sub-account and "pay" via it. I've never tried creating an account once I get sent over there to pay. Maybe that is the issue. But since it's stuck over at Paypal, this sounds more like a Paypal issue?


How do I find a message template? A lifetime member notified me that they received an automated message their membership had expired (typically sent to those with annual memberships). (As they are not dead) this user type should not have received a message that their (lifetime) membership expired.

How can I remove "Lifetime" members (as a group) from receiving general (annual) membership expiration notices.
How can I find this message template? I looked in "Home › CiviCRM › Administer CiviCRM > Message Templates > User-driven Messages & User-driven Messages" as well as "Headers, Footers, and Automated Messages" and do not find a mailing with the subject header.

Thanks

Check if you have any Scheduled Reminders based on Memberships and ensure your 'lifetime' Membership Type is excluded from that.


How can I find the CiviCRM Admin API key from Wordpress CiviCRM plugin We have got a wordpress website using CiviCRM plugin. The only thing which we have is the CiviCRM site key, but in order to implement the functionality on the website we need CiviCRM API Key.

Can you or anyone please advise from where can we get those details?

Urgent help would be much appreciated.

Thanks

you can find API key against each contact record in the Database

select api_key from civicrm_contact where id = <>

Also please read the below link for more reference
https://civicrm.org/extensions/api-key

I guess this helps !!!


Is smart group cache set to 0 OK for this situation? Using ACLs I have setup a group of users to have edit access to a smart group of contacts. The smart group is based upon the contact type. The problem is when one of these users creates a contact of this type, the contact is created OK but then an error message pops up to say they don't have access to the contact. They do have contact after a minute or so - the smart group cache is set to 1.  When I set the smart group cache to 0 then they have immediate access.  This client only has 12 smart groups. Smart group cache set to 0 solves the problem, but I'm not sure this is a good idea.  Are there any other solutions for this situation? - which can't be that uncommon.

In your situation its reasonable to set cache time to 0 since your smart group is very less and hopefully those smart group criteria are not complexed.


how to prevent people enrolling for an event twice We are advertising a free event which people can sign up for online.

People are registering themselves more than once for the event so we are getting duplicate registrations.

If we use the back end to try to add a person to an event that they are already registered for, the system does not allow it. - That's fine.

We would like to make it so people cannot register for an event they are already registered for .

Why does the online registration allow this to happen ?

Check if 'Same email address?' checkbox is ticked in Manage Event >> Configure Event >> Online Registration.

If this checkbox is enabled, CiviCRM will allow a user to register multiple times using the same email address.

Untick 'Same email address?' checkbox to prevent people from registering for the same event more than once.


Difference between 'active' and 'disabled' I have set up custom fields for an event. There are multiple choice check boxes for field trips during the event. Some of the trips have reached the max number of participants and I need to stop additional sign ups. Please clarify the difference between the 'active' check box setting and the 'disable' menu item for multiple choice items. I want to hide the option but retain all current option data.

The "Disable" and "Enable" menu items toggle the option's is_active field. The "Active?" checkbox does the same.