# Question
Title: Merge all duplicate contacts (running version 3.4.6)
I'm helping out a nonprofit with their CiviCRM. They have thousands upon thousands of duplicate contacts. These contacts are being pulled from an email service, that is sending the same email, sometimes 12+ times, to the same address.

Is there any way to merge all duplicate contacts automatically? Or a way to export all contacts, sort them in, say, Excel, and re-import?

Merging each contact one-by-one using the rules would take weeks.

Thanks!

# Answer
**One Option:** The easiest way I have found (in 4.6.4) is to export like you said, with contact ID, do your manipulation in excel to pull out the records you would like to keep, and re-import the records into a group, choosing 'update' when you do so.

If you need to merge information, you could put it on the line with the contact ID you will be keeping.

Then you can grab all of the contacts in your group (or all contacts not in your group, depending on which way you selected) and delete them.

To export these contacts, search for all, select all, and choose 'action\>export'.

The import tool can be found under 'contacts\>import contacts'.

One thing I have found on our setup is if I import a large dataset (say, more than 10k records at a time) I will get a timeout and the import will stop with 'db error', which is frustrating, so I usually break these up into smaller sheets to import.

**Another Option:** I believe you can do this programmatically with the API if you are more comfortable doing that. I haven't used this approach though so I don't know how well it works.

Possibly related: Batch merge automation of big data set
> 3 votes

# Answer
Dedupe is an area that's getting a lot of love these days; however, without knowing what version you're using or what you've tried, it's hard to make a recommendation.

* If you haven't tried it yet, try the "Batch Merge Duplicates" button (see screenshot below). If you're not using the very latest versions of CiviCRM, you'll probably have one and not two of those buttons.
* If you're using version 4.7+, you can use "Force Batch Merge" to get past any data conflicts.

Finally - if you're getting so many duplicates, I'm guessing the Supervised or Unsupervised dedupe rule needs some tweaking. You should be able to cut down on the number of duplicates you're facing to begin with.
> 2 votes

# Answer
I would be very careful about using batch deduping on anything other than the latest version. I have fixed multiple issues in conjunction with John Kingsnorth over the past few months.

It is possible to do batch deduping through the UI as Jon describes or via the api - we are almost ready to start running it as a batch job on an ongoing basis using a small drush wrapper script - the main goal of which is to do small chunks at a time, which may be less relevant on a smaller database

https://gerrit.wikimedia.org/r/#/c/290828/5/sites/all/modules/wmf\_civicrm/scripts/civicrm\_merge.drush.inc
> 1 votes

---
Tags: drupal, contacts, duplicate-contacts
---


# Question
Title: How to write unit tests for methods thsat echo instead of return (e.g., AJAX call handlers)
There are several methods in CiviCRM that just print their output directly to the buffer and then exit, because they're just sending an HTML snippet or other response for an AJAX call. For example, CRM\_Event\_Cart\_Page\_CheckoutAJAX::add\_participant\_to\_cart().

What are best practices for (or existing examples of) unit tests that cover such methods? I could, I suppose, use ob functions to capture the output, but then I'd need an external library to parse and test the HTML. Are there better ways, and are there examples already in place?

# Answer
> 2 votes
Allan - I have tended to try to refactor the AJAX functions such that they call a more testable function & test that - this generally improves the code....

There are a few examples that test the calls directly - see classes like

CRM\_Contact\_Page\_AjaxTest CRM\_Custom\_Page\_AJAXTest CRM\_Financial\_Page\_AjaxTest CRM\_Group\_Page\_AjaxTest

# Answer
> 2 votes
I'm a bit out of date on the current status of the civi test framework, but if WebTests are still available I would do this as a WebTest. https://wiki.civicrm.org/confluence/display/CRM/Setting+yourself+up+to+work+with+Selenium+tests

Include a line that waits for some element you are expecting to appear, then test its value using the webtest api.

---
Tags: ajax, testing
---


# Question
Title: How to view multiple relationships in contact editing mode?
If a contact is an employee of multiple organizations at the same time, is there an option to Add New Relationship in the contact editing mode so that multiple relationships can be shown in the editing mode as well, and not only when looking at the Relationships Tab?

# Answer
I don't think this is possible. Sorry!
> 0 votes

---
Tags: contacts, relationships
---


# Question
Title: Missing mailing list subscription check box in Chrome, and Edge
The mailing list subscription check box missing form subscription page when I open the page in Chrome or Edge under win10, same with android tablet and mobile phone Chrome browser. Works correctly in Firefox 47.0

Civi 4.7.9 under WordPress 4.5.3. with Hungarian settings.

Consequently no one can subcribe to the mailing list, and get "Please select one or more mailing lists." error message!

# Answer
> 2 votes
This sounds like a JavaScript issue. Please see the Javascript Troubleshooting Guide for CiviCRM. If that doesn't solve your problem, edit your question to indicate what you've tried and what information you gathered from following the steps in the guide.

You may also want to try one of the default WordPress themes and see if the problem persists. If you try this, please update the question to indicate what the results were.

# Answer
> 1 votes
I use Ascent template when problems happens.

If I test with the twenty sixteen default template no problems.

I will look around the Javascript.

Thanks for your help.

---
Tags: wordpress, mailing
---


# Question
Title: How can I create a contact (quickly) with multiple contact subtypes?
**The need**

I need to create contacts that have more than one contact subtype assigned. For example *Student + Parent*.

**Slow approaches**

* If I create the contact directly from the menu link *Contacts \> New Individual \> New Student*, then it is not possible to assign it a second subtype on the immediat form. It is necessary first save the contact and then re-edit to add the second contact subtype.
* Also it's possible to create the contact from the menu link *Contacts \> New Individual* and then assign the needed contact subtypes on the immediat form. But this option is confusing by our users as they hope to create an Student or a Parent but not a Individual.

**There is a more direct approach to this need?**

Maybe I expected to find the possibility to add an item to the menu of contacts that allow us to create directly a contact with multiple contact subtypes with and URL like `civicrm/contact/add?ct=Individual&cst=Student+Parent&reset=1`.

# Answer
This patch is enough for me and is ready for 4.7.10:

Show contact subtype field when create contact subtype
> 1 votes

# Answer
If you are using drupal then you could use webforms for this.
> 1 votes

# Answer
I have not tested this approach but you should be able to create a CiviCRM profile under (/civicrm/admin/uf/group/add?action=add&reset=1). Then add all the fields you need (incl. subtypes) and then use the URL of the profile(something like civicrm/profile/create?gid=XX&reset=1) if you want to create contacts.

For quicker access you could add a link to the profile in the navigation menu or put the profile in a drupal block.
> 1 votes

---
Tags: contacts, contact-types
---


title: Cannot install extension

text:
# Question
Title: Cannot install extension
Trying to add an extension, I get the following error:

```
Database Error Code: Column 'entity_id' cannot be null, 1048
Additional Details:
Array
(
    [callback] => Array
    (
        [0] => CRM_Core_Error
        [1] => handle
    )

[code] => -3
[message] => DB Error: constraint violation
[mode] => 16
[debug_info] => INSERT INTO civicrm_managed (module, name, entity_type, entity_id) VALUES ('ca.civicrm.moneris','Moneris','PaymentProcessorType',(SELECT id FROM civicrm_payment_processor_type where name = 'Moneris')) [nativecode=1048 ** Column 'entity_id' cannot be null]
[type] => DB_Error
[user_info] => INSERT INTO civicrm_managed (module, name, entity_type, entity_id) VALUES ('ca.civicrm.moneris','Moneris','PaymentProcessorType',(SELECT id FROM civicrm_payment_processor_type where name = 'Moneris')) [nativecode=1048 ** Column 'entity_id' cannot be null]
[to_string] => [db_error: message="DB Error: constraint violation" code=-3 mode=callback callback=CRM_Core_Error::handle prefix="" info="INSERT INTO civicrm_managed (module, name, entity_type, entity_id) VALUES ('ca.civicrm.moneris','Moneris','PaymentProcessorType',(SELECT id FROM civicrm_payment_processor_type where name = 'Moneris')) [nativecode=1048 ** Column 'entity_id' cannot be null]"]
)

```

Is my extension out of date, or is this fixable?

~ross

# Answer
The issue is -

you don't have a payment processor type - Moneris

value missing in this SQL : SELECT id FROM civicrm\_payment\_processor\_type where name = 'Moneris'

try to setup a payment processor type first - that should fix the issue

which mean you need to install the payment processor "Moneris" first to fix the issue

thanks - I guess this helps !!!
> 1 votes

---
Tags: wordpress, extension, payment-processor, error, moneris
---


title: does civix need a mysql install?

text:
# Question
Title: does civix need a mysql install?
I would use civix for coding a scheduled task that updates a customed field. I could generate an extension skeletton with the "civix generate:module" command, but fail to use "civix generate:api" for generating an api to be scheduled.

My CiviCRM is embedded in Drupal and hosted by Google cloud. I have a local copy of the civicrm part of my site, but without the mysql database. When executing the civix generate:api command, I get an error that seems coming from mysql : Initialization Error - DB error : extension not found.

Is mysql mandatory for having "civix generate:api" working ? How can I avoid my civicrm copy to launch mysql ? Thanks for help.

# Answer
Although not clearly stated in the civix documentation, a full running mysql database is mandatory with the CiviCRM application for an api generation. A good reason for me to have an online clone of my site for testing.
> 1 votes

---
Tags: civix
---


# Question
Title: Webform does not allow create new contact if contact not in select list
Webform - CiviCRM integration. Form with 2 civi contacts - participant (individual) and program (organization)

I have a dropdown list in the webform which shows list of program organizations that can be selected. The prompt for + create new + shows but does not allow any data entry of a new contact.

Any suggestions for how this can be enabled?

# Answer
solved my own problem. Looks like the +create+ new does not do in-place entry but is used in conjunction with the program field which is either populated with the select list option or can be used to enter/create a new contact (program)
> 2 votes

---
Tags: webform-civicrm
---


title: Failed to locate civicrm.settings.php

text:
# Question
Title: Failed to locate civicrm.settings.php
running CiviCRM WordPress 4.7.7

Any ideas what **normalize your directory structure** means?

Given it knows where the database is and both the website and the backend are working I am unsure where this is coming from. It only appears in the error\_log.

> \[error\] \[client 66.249.83.121\] PHP Fatal error:
> Uncaught exception 'Exception' with message 'Failed to locate civicrm.settings.php. Please boot with settingsFile, search, or CIVICRM\_SETTINGS; or normalize your directory structure.' in /../wp-content/plugins/civicrm/civicrm/civicrm.config.php:125
>
> Stack trace:
>
> > 1. /../wp-content/plugins/civicrm/civicrm/civicrm.config.php(413): Civi\Cv\Bootstrap-\>boot()
> > 2. /../wp-content/plugins/civicrm/civicrm/extern/open.php(2): require\_once('/var/www/vhosts...')
> > 3. {main}\n thrown in /../wp-content/plugins/civicrm/civicrm/civicrm.config.php on line 125

**Update 1:** *civicrm\_config.php - getCivicrmSettingsPhp* Added error\_log to display the options parameter and got the following:

> \[dynamicSettingsFile\] =\> /../wp-content/plugins/civicrm/settings\_location.php\n
> \[env\] =\> CIVICRM\_SETTINGS\n
> \[prefetch\] =\> 1\n
> \[settingsFile\] =\> \n
> \[search\] =\> 1\n
> \[cmsType\] =\> \n
> \[httpHost\] =\> casem-acmse.org\n)\n

Shouldn't the file referred to in dynamicSettingsFile be civicrm\_settings.php?

# Answer
> 3 votes
This is related to Word Press Install Missing civicrm.settings.php; dashboard unavailable; no menus

I suspect that the culprit is the userFrameworkResourceURL I would tray the overrides mentioned in the above thread

# Answer
> 1 votes
I was having the same error message. Using Codedogs' change didn't work for me, not sure why. In my case, I simply hardcoded the 'settingsFile' as follows:

```
'settingsFile' => /home/user/domains/domain.com/public_html/wp-content/uploads/civicrm/civicrm.settings.php',

```

Hope this helps someone!

# Answer
> 0 votes
The following edit corrects the problem: **/../wp-content/plugins/civicrm/civicrm\_config.php**

```
 public static function singleton() {
    if (self::$singleton === NULL) {
      self::$singleton = new Bootstrap(array(
        'dynamicSettingsFile' => dirname(__DIR__) . '/settings_location.php',
        'env' => 'CIVICRM_SETTINGS',
        'prefetch' => TRUE,
        'settingsFile' => dirname(__DIR__) . '/civicrm.settings.php', <=== CHANGE THIS LINE
        'search' => TRUE,
        'cmsType' => NULL,
        'httpHost' => array_key_exists('HTTP_HOST', $_SERVER) ? $_SERVER['HTTP_HOST'] : '',
      ));
    }
    return self::$singleton;
  }

```

---
Tags: wordpress, error, 4.7, 4.7.10
---


title: Wordpress left column - sidebar

text:
# Question
Title: Wordpress left column - sidebar
I've never run civi under Wordpress - (many times under Drupal and Joomla) and know NOTHING about Wordpress themes. How do I get it to look like the demo site ie no wp-admin menu and the Civicrm left column with recent contacts , new contact Etc.

# Answer
> 2 votes
Unfortunately, this is simply a missing feature in CiviCRM for WordPress. The left-hand menu is collapsible, but it's necessary for navigating the backend.

It would be nice to have the recent contacts and quick-add button somewhere, but it'll have to be within the main real estate of CiviCRM on the backend in WordPress.

---
Tags: wordpress, display
---


title: How do I set default for phone type?

text:
# Question
Title: How do I set default for phone type?
I want to auto default phone type as home - can't locate where/how to manage that. Any help appreciated. Thank you.

# Answer
One sets the default location type for all contact info (phone/address/email). They can't be set separately unless you write an extension. You can change it at **Administer menu » Customize Data and Screens » Dropdown Options » Location Types**. Click "Edit" next to "Home" and check the "Default?" box.
> 4 votes

---
Tags: phone
---


title: How to reset CiviCRM?

text:
# Question
Title: How to reset CiviCRM?
When writing a re-initialisation script / extension or drupal module, how would you reset CiviCRM back to clean installation state? Is it possible to install "minimal" without components and their data? Or is component data always pre-installed, enabled or not?

With component data I mean the database data that is needed for some of the build in civicrm components as listed in /civicrm/admin/setting/component. As far as I can remember, at installation I never choose components, they came pre-activated by default. When I deactivate the unnecessary components, a lot of their data is not removed from database and remains. I was wondering if there is a way to force a minimal installation without components and then programmatically activate / install the ones I need.

I was wondering if there is a way to use part of the installer code to restore the initial database, without having to *reinvent the wheel*.

# Answer
> 2 votes
I'm not certain what's meant by "component data" here - but in all likelihood the easiest approach is to restore a copy of the `civicrm.mysql` and `civicrm_generated.mysql` files in the "sql" directory. Don't forget to drop your database first, restoring a SQL file won't drop existing tables created, e.g. by generating custom fields.

# Answer
> 1 votes
In that case you should be using hooks in the extension

you should have all the code related to extension in this below hook while install

hook\_civicrm\_install

And you should roll back all the action which you did while installing against uninstall

hook\_civicrm\_uninstall

more reference: https://wiki.civicrm.org/confluence/display/CRMDOC/Hook+Reference

I guess this helps !!!

---
Tags: extension, installation, php, modules
---


title: civicCRM hangs. Crashes site

text:
# Question
Title: civicCRM hangs. Crashes site
php5.5/Mysql5.6

latest wordpress

civiCRM 4.6

host: ganfi.net

Install but then hangs, and hangs & eventually crashes site

FIX??

# Answer
Look for error message in civicrm error log

.../wp-content/plugins/files/civicrm/ConfigAndLog

where you will get more details of the error

If you don't have any error message in civicrm logs look for PHP error logs where you will find it

refer: https://wiki.civicrm.org/confluence/display/CRMDOC/Debugging+for+developers

I guess this helps!!!
> 1 votes

---
Tags: installation
---


# Question
Title: How do I enter multiple payments for one pledge?
I've entered a pledge. The donor has only paid part of their first payment and plans to make a payment for the balance in a month. However, the pledge bumped the overdue amount to the following year's pledge. And it appears that I cannot enter a payment against the first year's pledge now.

# Answer
> 2 votes
Click to expand the pledge payment schedule and then click edit on the expected installment set up for next year - you can change the date back to the current year.

Unless you are dealing with multi-year pledges, consider creating them with a single installment to occur every one day - in this way, the system will transfer the remaining balance as being due the following day as opposed to the following year.

Hope this helps, Tamar

---
Tags: civicontribute, pledges
---


# Question
Title: iATS ACH/EFT payment verification scheduled job not finishing
We're newer to online contributions and are getting ready for go-live soon. Credit cards with iATS have processed through with no hiccups. We recently also enabled ACH/EFT via iATS as a payment instrument for our site. Our first ACH/EFT transaction (from me) went through fine. The transaction was initiated on 7/21/16; both iATS and my personal bank recognize the transaction is now completed as of yesterday, 7/26/16.

However, CiviCRM still showed the transaction's status as `Pending (Incomplete Transaction)`. The scheduled job for iATS Payments Verification (API Entity: `Job`; API Action: `iatsacheftverify`) is enabled and is being processed Hourly (by default; I've changed nothing about the job). **However, when I view the Job Log, I only see the job starting, never finishing**:

> Entity: `Job` Action: `iatsacheftverify`
>
> *Summary*
>
> Starting execution of iATS Payments Verification
>
> *Details*
>
> Parameters parsed (and passed to API method): a:1:{s:7:"version";i:3;}
>
> Full message: Starting execution of iATS Payments Verification

When I upgraded the iATS extension to 1.5.3 (from 1.5.2) this afternoon and manually executed the job, the job finished and the transaction updated. Now that a few hours have passed and more hourly jobs ran, it has resumed *not* working. I manually executed it again, and the job finished.

**So, the issue appears to be that the job finishes when manually executed, but not automatically on its own. Any ideas on how to proceed?** Do I have to configure a cron job specific to/for that scheduled job?

The iATS requirements (#5) specify: "To handle ACH/EFT Contributions (verification of them) and to handle Recurring Contributions (of any type) you must configure cron for your CiviCRM install. Information about how to do this can be found in: http://wiki.civicrm.org/confluence/display/CRMDOC/Managing+Scheduled+Jobs," but I do have cron running. The iATS Payments Recurring Contributions scheduled job (Entity: `Job` Action: `iatsrecurringcontributions`) is running daily (again, by default; I've changed nothing) and has both Starting and Finishing in the Job Log. For example:

> Entity: `Job` Action: `iatsrecurringcontributions`
>
> *Summary*
>
> Finished execution of iATS Payments Recurring Contributions with result: Success (No contribution records were processed.)
>
> *Details*
>
> Parameters parsed (and passed to API method): a:1:{s:7:"version";i:3;}
>
> Full message: Finished execution of iATS Payments Recurring Contributions with result: Success (No contribution records were processed.)

---

ADDITION: If I run `job.iatsacheftverify` from the API Explorer, I get a success. So I tried adding this scheduled job to my server (from Plesk, CentOS 7, no brackets): `drush -r {root folder} -l {website URL} civicrm-api -u {user} job.iatsacheftverify --quiet`. When I ran that job I received this error:

```
PHP Fatal error: Class 'SoapClient' not found in {ROOT}/sites/default/files/civicrm/extensions/com.iatspayments.civicrm/CRM/iATS/iATSService.php on line 164
Drush command terminated abnormally due to an unrecoverable error. [error]
Error: Class 'SoapClient' not found in
{ROOT}/sites/default/files/civicrm/extensions/com.iatspayments.civicrm/CRM/iATS/iATSService.php,
line 164

```

Line 163-164 of that file:

```
/* until iATS fixes it's box verify, we need to have trace on to make the hack below work */
$soapClient = new SoapClient($this->_wsdl_url, array('trace' => 1,'soap_version' => SOAP_1_2));

```

I have no idea what that does. :-)

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

# Answer
> 2 votes
Your symptoms suggest that the issue is some kind of fatal error happening during the job execution itself. I'd recommend you run the job directly via the command line, i.e. something like

```
drush -u 1 cvapi job.iatsverify

```

And see if there are any errors showing up. Make sure it's the same php version ...

My guess is some curious error that our code isn't handling properly. If you try turning on some logging it might be more instructive.

To answer your other questions: 1. No, you don't need to schedule a separate cron, it should run okay 'out of the box' (it calls in hourly for verifications, it really wants to tell you when your contributions are actually going through). 2. Tamar's diagnosis is interesting - I did implement job locking to prevent recurring payments from getting generated multiple times, but that shouldn't affect the verification, which is a separate job and can happen multiple times in parallel without ill effect. 3. Your civi version doesn't look terrible, but there have been a number of civi core fixes in the 4.6.x recent release that may affect some things, I'd recommend you update your testing platform as well. There is some testing for versions in the iats extension, but doesn't try to manage all the older minor version quirks.

From the comments below: Since you receive a "PHP Fatal error: Class 'SoapClient' not found" when you run the Drush command that means your drush is running a different php environment from your web interface. That's not untypical, you'll just need to inspect your php configurations and make sure that the php cli used by drush also has the soap extension. You can test that by running "php -i | grep soap" for example.

---
Tags: civicontribute, payment-processor, scheduled-job, iats
---


# Question
Title: CivicCRM public event registration failing to display
I am using Civi 4.7.9 and Wordpress 4.5.3.

When I create an Event and embed it in a Wordpress page, the entire Registration process is flawless, but only when I am logged in. When I test the process as the Anonymous User, it gives me the error:

---

Sorry but we are not able to provide this at the moment. You do not have permission to access this page.

## Return to home page.

I have insured, multiple times that the Wordpress Role permissions are correct. I have also insured that all the event settings are correct and that it is a public event. I have also insured that all custom registration fields are accessible to an anonymous user.

I think that my only recourse may be blow out all my permissions and ACL's and rebuild until I hit the error again. However, I thought I would post here in case anyone had seen this before and could give me options before I take this drastic measure. Any ideas?

# Answer
I know that you said you've looked at this, but it sounds like a permissions issue.

According to the documentation you need the following permissions:

> **View event info and Register for events:**
>
> If you plan to use CiviEvent and want to allow online event registration, enable these permissions. Be sure to assign permissions for the "anonymous" role if you want to allow un-authenticated visitors to view and register for events.

If you have custom fields you will also need this permission:

> **Access all custom data:**
>
> You must enable this permission for any role which you want to view or edit custom data fields. EXAMPLE: If your site uses Profile(s) which include custom fields, make sure the role(s) that need to access these Profiles have this permission. Be sure to assign this permission for the "anonymous" user role if you want to collect information using custom profiles with custom fields.

You can find more information here: Permission and access control
> 1 votes

---
Tags: wordpress, civievent, permissions
---


title: Missing actions dropdown

text:
# Question
Title: Missing actions dropdown
I am trying to export a list from CiviCRM and I seem to be missing the actions drop-down. I have used this field before, but it has dissappeared. I have attached an image of what my screen currently looks like when I am doing an advanced search. From memory, the Actions drop-down usually sat underneath the 'edit search criteria' section and above the "A,B,C.." search function. I am using a Macbook and have tried both Firefox and Safari in case the browser is not supported properly, but neither seem to work.

# Answer
> 1 votes
I had the same issue and found the problem. Perhaps this will help you. On my site, I modified the css to hide some information from the public facing CiviCRM pages. When I did that I also hide the Actions Drop-down. When I commented out this one line, the Actions Drop-down displayed again:

/\* .crm-container #search-status {display:none;} \*/

---
Tags: export, actions
---


title: Recently created event not appearing

text:
# Question
Title: Recently created event not appearing
I created an event for my organization that occurred on July 21st. When I go to "Manage Events", it is not shown in the event list. However, when I search for the event by time period, it once again appears. Why can't I see the event all of the time?

# Answer
> 2 votes
It's assumed that once an event is complete, you're not so interested in it. I also find it a slightly annoying interface, but I get used to doing that search.

On the other hand, for organizations that are hosting lots of events, it's a sensible default.

---
Tags: civievent
---


title: Report Preview PDF not working in 4.7.6

text:
# Question
Title: Report Preview PDF not working in 4.7.6
We are finding that a membership report and Preview PDF often goes to a page not found error. It seems to depend on the fields selected -- the fewer fields then better chance of getting a PDF to appear. What is the advice or guideline for this feature? Can we preset the page format to landscape to allow for more columns?

# Answer
I doubt the page format is the issue, it's more likely an issue about custom fields. There have been recent changes (due to security issues) with how custom fields are being handled, I'd update to the latest 4.7 before pursuing further.
> 1 votes

---
Tags: wordpress, civireport, 4.7.6
---


# Question
Title: How to set all donation to redirect users to another page if successful payment is made
I want to set all civicrm Thankyou page to redirect to another page in Drupal 7.50 site.

CiviCRM version is 4.6.8

Can I add a URL direct(In drupal) for the Thankyou page which has a dynamic URL.

Any suggestion on this?

Thank you

# Answer
This is not supported by CiviCRM by default and i cant find any drupal modules which can do the redirect from the thank you page.

If you are a developer, you can do this using hook\_civicrm\_buildForm hook.

We have done something similar to redirect from thank you page using buildForm hook. I have packaged the hook in an extension. You can download the extension here - https://github.com/rajeshrhino/uk.co.vedaconsulting.module.contributionpagesredirect

Before installing the extension, you need to edit main PHP file (Line no.6 - https://github.com/rajeshrhino/uk.co.vedaconsulting.module.contributionpagesredirect/blob/master/contributionpagesredirect.php#L6) and change the redirect URL to the URL in your site.

Hope this helps.
> 1 votes

# Answer
Since all the thank you pages have the same url (from Drupal's point of view), using Drupal's redirect module https://www.drupal.org/project/redirect should work.
> 1 votes

# Answer
You may find this Fuzion extension may help with what you require. "Options added are 1) ability to choose an alternate thank you page instead of standard CiviCRM landing page"

EDIT: this mostly provides a field for where to send users. If you want this for 'all' your contribution pages, then you would have to retro-fill those.
> 0 votes

---
Tags: civicontribute, drupal, contribution-page, redirect
---


title: Importing and updating pledges

text:
# Question
Title: Importing and updating pledges
I want to import a bulk pledges to my CiviCRM installation and also I need to updating the pledges in every month. If I do it in manual it is very time consuming process. is there any easy way like import to update the pledges ?

# Answer
You can import pledges with the API csv Import GUI extension mentioned in these questions:

api csv import - cannot find start page

Importing Pledges
> 1 votes

# Answer
There is currently no built-in pledge import like there is for contributions. By updating the pledge each month, do you mean recording payments against them? If so, then as of 4.6, you can use batch data entry to enter payments against pledges, but only cash/check payments, not credit card payments - instructions can be found at the following link: https://docs.civicrm.org/user/en/4.6/pledges/everyday-tasks/
> 0 votes

---
Tags: import, pledges
---


# Question
Title: How do I update CiviCRM following a security update?
I am getting a warning to update security. It says:

> New security release 4.7.9 is available. The site is currently running 4.7.3.

How do I update it?

Thanks.

Melissa Brooklyn Commons commonsbrooklyn.org

# Answer
> 6 votes
First of all, I should say that this is a job for someone who is reasonably technically minded and comfortable with using the command line. If this doesn't sound like you, then I would suggest that you look for help with this - perhaps from the person that installed CiviCRM in the first place.

You can find detailed instructions in the Administrator Guide. There are different versions depending on which CMS you use:

See also my question on upgrading with drush (Drupal only):

Is it easy to upgrade CiviCRM using drush?

I would strongly recommend that you take a full backup before you do this. You should also know how to restore from a backup in case anything goes wrong (which does happen unfortunately and can leave your site completely broken).

I would also recommend that you test the update on a development server before you attempt to update the live website.

If none of this makes any sense to you I think you should probably look for help from someone who has this technical knowledge - e.g. a CiviCRM partner. Unfortunately, upgrading CiviCRM is not a simple one-click operation like upgrading WordPress.

# Answer
> 4 votes
Please follow the steps in the link one by one

Link: https://wiki.civicrm.org/confluence/display/CRMDOC/Upgrading+CiviCRM+for+Drupal+7#UpgradingCiviCRMforDrupal7-1.DownloadthemostrecentCiviCRMPackage

I guess this helps !!!

---
Tags: security, upgrade
---


title: Geocoding using google api

text:
# Question
Title: Geocoding using google api
I'm having problems getting consistent behavior from CiviCRM's Address Geocoder scheduled job. Yesterday I was able to geocode a handful (~1700) records but today I am getting an over quota message in the log.

> Parameters raw (from db settings): geocoding=1 start=47000 throttle=5
>
> Parameters parsed (and passed to API method): a:4:{s:7:"version";i:3;s:9:"geocoding";s:1:"1";s:5:"start";s:5:"47000";s:8:"throttle";s:1:"5";}
>
> Full message: Finished execution of Address geocoder with result: Failure, Error message: A fatal error was triggered: Aborting batch geocoding. Hit the over query limit on geocoder.

Using the same parameters yesterday (with the exception of a different CID for the start parameter) I had some success.

> Parameters raw (from db settings): geocoding=1 start=47877 throttle=5
>
> Parameters parsed (and passed to API method): a:4:{s:7:"version";i:3;s:9:"geocoding";s:1:"1";s:5:"start";s:5:"47877";s:8:"throttle";s:2:"10";}
>
> Full message: Finished execution of Address geocoder with result: Success (Addresses Evaluated: 1094 Addresses Geocoded: 1094 )

I'm running CiviCRM 4.4.19 and using Google as my mapping and geocoding provider. I've tried with and without an API key. The job is being executed manually from the UI. Does anyone have any thoughts on what is going on or any ideas how I can troubleshoot this further?

Thanks.

# Answer
> 3 votes
While the Google API has an unauthenticated limit of 2,500 requests per day per IP, using an API key currently gives free a quota of 100,000 requests per day, with additional requests by payment.

You'll need a recent-ish (4.7.9, 4.6.23 or greater) version of CiviCRM to use the API key for geocoding: CRM-18830: Google Geocoding - use SSL, restore API key.

With this you should be able to geocode a larger number of addresses.

Your API key should be configured with the following permissions:

* Google Maps Geocoding API (for geocoding)
* Google Maps JavaScript API (for displaying / mapping)

# Answer
> 2 votes
Google has a limit on encoding per day (2500) records, https://developers.google.com/maps/documentation/geocoding/usage-limits I suspect you've hit that limit. You can enable billing to increase your limits, $0.50 USD / 1000 additional requests, up to 100,000 daily.

# Answer
> 2 votes
You may also want to give the Open Street Map Extension a shot - find some information on our website as well as the repository.

# Answer
> 1 votes
OpenStreetMaps extension by Systopia is better! https://civicrm.org/extensions/openstreetmap-geocoding/version-11

---
Tags: geocoding, google
---


# Question
Title: One Contribution page with multiple webforms
Has anyone had any issues with using one contribution page from CIVI together with multiple webforms.

For example - One webform processing annual memberships, another processing life memberships but using the same contribution page.

Many thanks,

# Answer
> 1 votes
One thing you might want to consider is that the webform uses the receipt language configured on the contribution page you're using, so you might check to confirm that the verbiage is sufficiently generic to cover both types of membership.

Lesley

# Answer
> 1 votes
No problem! Once you indicate you want Membership signup in your Webform -\> CiviCRM tab the Element Membership Type that is then created in your Webform tab is fully configurable \[hit Static Options\] as to which of the Membership Types are to be shown on any given Webform CiviCRM integration. Just check off the ones you want on any given Webform.

# Answer
> 0 votes
It should be alright - contribution page is used for picking up all the memebership and payment instrument from CiviCRM

You shouldn't be get any issue at all

I guess this helps !!!

---
Tags: civicontribute, webform-civicrm
---


# Question
Title: How to handle donors that pay by wire transfer
My foundation has donors. People who become a donor, promise to pay at least €10 per year to the foundation. Because as a result, the whole family gets benefits, I have set this up a membership called 'Donateur'. Memberships are entered on the household.
We don't have a payment processor as we need to keep everything extremely low-cost (as in: there is no IT-budget except in-house computers and web hosting).
The challenges I'm facing are these:

* How can I automatically renew these memberships so they are extended but waiting for payment?
* How can I enter multiple payments for donors who split up their payments (as rediculous as it sounds, I have one who pays €2,17 every quarter), or for those who pay more but in multiple instances?
* How can I tell which households still need to pay (part) of their fee?
* How can I send an e-mail to donors when the e-mail address is on (one of the) household members and not on the household itself?

Or should I completely reconsider the usage of memberships for this type of setup entirely and do something different.
We're running CiviCRM 4.7.9 on Joomla 3.6.0.

# Answer
> 2 votes
I copy and paste your questions in slightly different order and intersperse them with my responses in an attempt to provide a clear answer:

* Should I complete reconsider the usage of memberships for this type of setup entirely and do something different?

> > > Since, as you state, the entire family gets benefits as a result of a single donor making a donation, using memberships makes sense to me.

* How can I automatically renew these memberships so they are extended but waiting for payment?

> > > if you were to use a payment processor like iATS who offers ACH capabilities and who works specifically with non-profit organizations and has developers who are dedicated to the development and maintenance of their CiviCRM extension, you might actually end up saving money since you would be able to set up recurring membership payments directly through Civi on whatever schedule your donors prefer (or your donors would be able to do so themselves online), and you would free up staff time to do other things than to re-enter financial information for payments handled outside of Civi.

* How can I enter multiple payments for donors who split up their payments (as rediculous as it sounds, I have one who pays €2,17 every quarter), or for those who pay more but in multiple instances?

> > > Ah, if you want to speak of the ridiculous, how about a donor that asks to split a $18 contribution to 6 different funds? Joking aside, if you still choose not to use a payment processor, then as Eli suggests, using pledges to be paid in installments is the method that I am most familiar with, but this means maintaining memberships separate of financials which may not be the best process for you.

* How can I tell which households still need to pay (part) of their fee?

> > > Again, the use of pledges is a process that I am more familiar with than the use of membership contributions, but if you continue to manually record these contributions in the back-office, you can enter a membership contribution with a status of "partially paid" or "pending" (in the case that no payment was received upon initial creation of the membership).
> > >
> > > To search for pledges with balances still due, Contributions \> Pledges \> Find Pledges and select the pledge status of Pending, In Progress, Overdue, and Partially paid
> > >
> > > To search for memberships contributions that are either pending or partially paid, you can use Contributions \> Find Contributions, select the relevant pending statuses, and select the financial types you use for those membership contributions.

* How can I send an e-mail to donors when the e-mail address is on (one of the) household members and not on the household itself?

> > > For this, you would either need to have the email address of the primary member on the household record, or you would need to maintain the memberships on the individual record (and related contacts would be provided membership according to the membership type configuration). The latter method is the one we recommend to clients given that when members login, they typically do so with an an individual login, not a household login - if you eventually open up the option for online membership signup, you will then have a mix of household vs. individual memberships that may become difficult to manage and report on consistently. Detailed instruction on how you would set up memberships to manage this process can be found at the following link: https://docs.civicrm.org/user/en/stable/membership/defining-memberships/#membership-types
> > >
> > > If the purpose of your email is to remind members of renewal, you can use scheduled reminders - documentation for setting these up on memberships can be found at the following link: https://docs.civicrm.org/user/en/stable/email/scheduled-reminders/#chasing-members-who-have-not-sent-membership-payments

So, as you can see, there is quite a bit of research to be done, but the best way to figure out the best way to track this information is to learn through testing to see if the end result provides you with easily obtained information through reports that already exist within CiviCRM.

Good luck, Tamar

---
Tags: civicontribute, civimember
---


# Question
Title: Smart Groups - Added contacts show status of 'smart' not 'added'
I have recently upgraded to 4.6.19 which has solved issues to do with the updating of smart groups. However if I add a contact to a smart group it does not show the status of 'added' but shows the status to be 'smart'.

# Answer
> 1 votes
I just tested this in 4.5.5 and 4.7.9 (sorry, don't have a 4.6 test environment) and the status of a contact added to a smart group is indeed "added", so unless it is a bug with your specific version, perhaps the contact you believe to have added actually fit the criteria of the smart group to begin with? In any case, upgrading will resolve the issue.

Kind regards, Tamar

---
Tags: smartgroups
---


title: Email Templates when sending invoices

text:
# Question
Title: Email Templates when sending invoices
I have created an email template for when I send out my invoices. I can't seem to integrate it into the invoice email.

When I send out my invoices by email in CiviCRM I have the option to add email content as in the body of my email. I would like to use a template that I have created for this email being sent out with the invoices. The templates as you know can be added when a person has registered for an event but I can't seem to use a template for sending out my invoice. The invoice is an attachment, so I don't want to write the body of the email every time.

# Answer
> 1 votes
As you have surmised, the option to select a template when emailing an invoice from the contribution is not currently an available feature but it is an interesting feature request. I took the liberty of creating the feature request on JIRA on your behalf: https://issues.civicrm.org/jira/browse/CRM-19155

Kind regards, Tamar

---
Tags: message-templates
---


# Question
Title: How to add Scheduled Reminder CC and BCC email?
I'm using CiviCRM 4.6.11. In my Scheduled Reminders, I have a reminder which will send email to members, reminding them their membership will expire in 3 days.

Is there any way I can add a CC and BCC of the email to send it to selected email address?

# Answer
This doesn't currently seem to be a feature available in CiviCRM, however, when setting up the schedule reminder, there is an option to "Record activity for automated email or SMS" - if this is toggled, then you can set up an activities dashlet on your dashboard filtered on the given activity such that every time you login to the back office you will see if any reminders have been sent - this option might even be preferable to receiving an an email and will definitely keep your inbox more manageable).

Hope this helps! Tamar
> 4 votes

---
Tags: scheduled-reminders
---


# Question
Title: Is there a list of CiviCRM shortcodes for Wordpress?
Is there some list of shortcodes and shortcode modifiers for CiviCRM with Wordpress?

I have put a Civi Profile on a WP page, but I am hoping to hide its title and just use the form fields, but I can't find any documentation on whether this is possible or not.

# Answer
Going by the shortcode function, there are five possible ways to use the shortcode.

Technically there's only one shortcode used (`[civicrm]`) but it uses the `component` attribute to switch between different content.

The five possible components are:

* **Contribution**: `[civicrm component="contribution" id="x"]`

shows a contribution page specified by the `id` attribute.
* **Event**: `[civicrm component="event" action="register" id="x"]` and `[civicrm component="event" action="info" id="x"]`

shows either a registration or information page for the event specified by the `id` attribute.
* **User dashboard**: `[civicrm component="user-dashboard"]`

shows the current user's dashboard page
* **Profile**: `[civicrm component="profile" mode="y" gid="x"]`

shows a page for displaying a user's profile. This can be one of 4 modes - edit, view, create or search. The default is create. The `gid` attribute selects which profile group is displayed.
* **Petition**: `[civicrm component="petition" id="x"]`

displays a petition form specified by the `id` attribute.

In addition, any of these can specify a `hijack` option and they will replace all other content on that page rather than being display inline. This looks like `hijack="1"`. A `force` attribute is mentioned in the code but I'm not clear what it does.

force=1 means it will display the table, force=0 means it will display the search box for the table and you will see the results of the search for the table after you search
> 10 votes

---
Tags: wordpress
---


title: Use of WordPRess "X Theme" with CiviCRM

text:
# Question
Title: Use of WordPRess "X Theme" with CiviCRM
In researching WordPress themes I find that the X Theme from ThemeForest.org is well-regarded, relatively easy to use, and very flexible in terms of resulting public facing website design / capability.

My question for the CiviCRM community is: Does anyone out there have experience using WordPress / X Theme as a basis for implementing and running CiviCRM to provide integrated constituent management with a public facing website (that supports a not-for-profit organization)?

I've done the usual searches and so far turned up nada; so thanks for any insights that you can share with me (and this community).

If we go forward with this approach, I'll document it the same way I have documented the (successful) implementation of TLS secured Ubuntu / LAMP / WordPress / CiviCRM on Amazon Web Services.

Thanks for any insights you can provide.

DVH

# Answer
> 1 votes
I have noticed some quirks with how it handles the wp\_enqueue\_media function. when we disabled that core function, some of the functionality started working. I am still trying to figure it out.

---
Tags: wordpress, theme
---


# Question
Title: How to autofill/autopopulate profile forms?
I created a public profile form with fields First Name, Last Name, email, and I'd like those fields to be auto-filled when a contact is logged in.

I thought it was supposed to do this by default, but it does not seem to in both the official demo Civicrm or my local.

Here is a link to a public profile I created on the CiviCRM, but this link will die when the demo site resets. http://d45.demo.civicrm.org/civicrm/profile/create?gid=15&reset=1

# Answer
> 5 votes
I think the issue is purely to do with your URL - you have the 'create' link - which is intended to provide an empty set of fields.

If you change to http://d45.demo.civicrm.org/civicrm/profile/edit?gid=15&reset=1 you should see the data pre-filled

# Answer
> 0 votes
Install the webform-civicrm module if you're on Drupal. Add a new webform in Drupal. Use Existing Contact for the user who will log in, in the CiviCRM tab. The user's existing info will show on the form. The user can update her own info.

If the user is also entering or updating data for another contact already in CiviCRM, create contact 2 in the CiviCRM tab for the webform, and use Existing Contact for contact 2 for the logged in user (contact 1) to be able to look up contact 2's existing info. Contact 1 can update contact 2's info, or add a new contact.

---
Tags: profile, webform-civicrm
---


# Question
Title: How can I check if Civicrm mails sent through scheduled Cron are bounced or sent successfully?
I can see scheduled reminder in the activity logs and also see the Cron Logs but I am unsure how I can see bounced emails which was bounced while sending mail under scheduled reminder.

I even checked it under advanced search and selected "Contact on Hold" but it gave empty result. Does that mean no emails were bounced?

# Answer
I do not think CiviCRM currently offers a way to catch bounced messages from sending an email direct from a contact record, or via Scheduled Reminders.

The only 'bounce' processing that occurs, afaik, is when CiviMail is used.
> 3 votes

# Answer
As Pete indicates, reports for individual emails are not available through the GUI, but depending on how your mail is handled (e.g. through a service such as SendGrid or through a mail server) then you should be able to view bounces for any communication sent directly from the service provider's portal or by reports that can be generated directly from the server.

Hope this helps, Tamar
> 2 votes

---
Tags: scheduled-reminders, bounce
---


# Question
Title: Do you support SmsGatewayCenter SMS API Module?
I am a customer of https://www.smsgatewaycenter.com/ from past 1 year and definitely like their service and would want to stick to them.

I have seen one of your plugin for sms with different provider, can I replicate this to smsgatewaycenter.com API? https://github.com/osseed/com.osseed.sms.mysmsmantra

or do you have it ready with you? Please update. Thanks

# Answer
CiviCRM is open source software, so there's no "you" to address this to. Anyone is free to make a plugin to interface CiviCRM with this provider.

As of right now, no one has - but SMS provider plugins are relatively simple, and if you (or someone you sponsored) was able to put in a few hours, you could likely make this happen!
> 2 votes

---
Tags: sms
---


# Question
Title: Why does selecting one (or more) tag options in a form created using webform-civicrm add *all* tag options to the user record?
We are on CiviCRM 4.6.19.0 and Drupal 7.50.

I've created a webform using the excellent webform-civicrm. The form is a draft of a data entry/update form for use by staff and volunteers.

I've added tags as a field for contact 2 (the new person whose info is being added, or updated by searching for an Existing Contact) that gets added by contact 1 (the logged-in staff person or volunteer).

I have checkboxes next to each of the 27 tags options, with the multiple selection option checked in settings ("Multiple values will let users select multiple items in this list.").

However, on the webform, when I select the checkbox for any one, or more, of the tags options, and then submit the form, the contact 2 record in CiviCRM shows *all 27* of the tags as having been added to the record.

I added the tag options manually using key-value pairs in the Options settings. In CiviCRM, I removed the parent ID for the issue tags at Administer -\> Customize Data and Screens -\> Tags (Categories) . Removing the parent ID for the tag did not make a difference.

Any thoughts appreciated. I do *not* want to add 27 separate Tags lines in the webform settings for each of the tags. The multiple values option for the single tags field should do the trick.

Thanks!

# Answer
So here's my answer, and solution. I started again from scratch. The steps I followed are:

* deleted the Tags and Groups components from the webform
* disabled Tags and Groups in the CiviCRM tab for Contact 2
* re-enabled Tags and Groups in the CiviCRM tab for Contact 2
* added Tags and Groups components back to the webform.

Then, under the Tags component settings in the webform, I selected:

* Static Options (Fully configurable)
* Checked "Multiple (Check this option if the user should be allowed to choose multiple values.)"
* Unchecked Enabled checkbox at top of Options, the default, un-enabling all Tags as options
* Enabled only the handful of Tags I want on the form
* Clicked Save Component at the bottom

I then tested selecting Tags on the form, submitted the form, and only the three tags selected appear in the contact's record.
> 3 votes

---
Tags: webform-civicrm, tags
---


# Question
Title: How do I configure a free event ticket option for internal use without it showing up on the website?
I want to enter free ticket holders to an event without a free option showing up on the website. How do I create this admin only option?

# Answer
> 1 votes
If you only want to have the free registration be available for back-end registrations you should create a price set. The options for admin-only registration types should be in their own price set field, since only price set fields can be marked "Admin only," not an option within a price set field.

Alternatively, if it's just a matter of the participant not paying and you don't have to report on who's a paid participant and who's a comp, you could just register them in the back end and not record a payment. You could still make this work without a price set by creating another participant type of "Complimentary."

# Answer
> 0 votes
You should be able to do this by installing the CiviDiscount extension and using a discount code(s) in your price set for the event.

---
Tags: civievent, cividiscount
---


title: Note Field Appearing and Dissappearing

text:
# Question
Title: Note Field Appearing and Dissappearing
When entering a new contact, I have an option to enter a Note in the editing mode. However, if I don't use that field when I enter the contact for the first time, the next time I open that contact in the editing mode, I don't see that field - the only place I see it is in the Notes Tab in the View Mode. Is there some option to always keep this field in the both modes? Also, is there an option to see Notes in the Summary Tab or only in the Notes Tab? Thanks!

# Answer
What you're seeing is correct. The reason is mostly because you can have multiple notes, so it gets its own tab.

If you only want one "note" per contact and want it to always appear, you can create a custom field, e.g. called "comments" (to distinguish from notes), and then it will appear on the summary tab and in edit mode in an accordian section.
> 2 votes

---
Tags: contact-view
---


# Question
Title: Do Webform Contributions allow for using Grid Widget?
This is a simple yes/no question, but to explain:

Since price-sets aren't integrated into webform, I'd like to recreate a price-set directly in the webform. The civicrm webform integration help (screenshot below) seems to indicate that this is possible, as does this thread on the integration support request queue.

However, I don't see the grid widget as an option when I look for it, and am wondering whether I should go looking for the issue in my setup or whether grid is simply unsupported by the current integration module. (screenshot below)

I'm using Drupal 7, CiviCRM 4.6.18, Webform 4.12 and Webform CiviCRM Integration 4.14. Does anyone know if there is a setting I'm missing?

# Answer
Ah, that was a bug in the webform\_civicrm module. I've just pushed up a fix, which will be part of 7.x-4.16. Or you can grab the latest -dev release from drupal.org/project/webform\_civicrm now.

Update: 4.16 has been released. Enjoy.
> 4 votes

---
Tags: civicontribute, drupal, webform-civicrm, contributions
---


title: Change the displayed name of languages

text:
# Question
Title: Change the displayed name of languages
We are using CiviCRM in multi language mode (CiviCRM 4.6 on Drupal 7).

For public CiviCRM pages (like event registration), we are offering the CiviCRM language selector, which offers the users to change between "German" and "English (United States)".

Now, I would like to change "English (United States)" to simply "English". How can I accomplish that?

# Answer
Just navigate to

Administer -\> system settings -\> option Groups

This will give you a list of all the Languages - so just edit and save the name which you wanted to.

I guess this helps !!!
> 1 votes

---
Tags: translation
---


title: Can CiviCRM manage sales opportunities?

text:
# Question
Title: Can CiviCRM manage sales opportunities?
Has anyone successfully used CiviCRM to manage sales opportunities?

I appreciate that this is more of a business feature. However, charities and non-profits in the UK (and perhaps elsewhere?) increasingly find themselves working in a more businesslike manner. For this reason some organisations need to be able to record and manage sales opportunities. Has anyone successfully implemented this for an organisation using CiviCRM? If so, how would you suggest doing this?

The type of functionality required is as follows:

* record a potential piece of work as a sales opportunity
* link this to an organisation (and/or individual contact)
* attach a financial value to this opportunity (and ideally a probability of success)
* have a set of predefined stages for an opportunity - i.e. the sales pipeline (initial contact, qualification, meeting, proposal, close)

It should also generate the following reports:

* list of open sales opportunities to follow up
* potential income (value of open leads x probability)
* overview of sales won and lost (monthly/quarterly/annually)
* etc.

# Answer
The following might work as one approach and avoids the 'multiple field' dilemma flagged by Eli.

> record a potential piece of work as a sales opportunity

create a custom Activity Type

> link this to an organisation (and/or individual contact)

easily done via Activities

> attach a financial value to this opportunity (and ideally a probability of success)

set up some Custom Fields for that new Activity Type

> have a set of predefined stages for an opportunity - i.e. the sales pipeline (initial contact, qualification, meeting, proposal, close)

Add some more options to Activity Status

> It should also generate the following reports:
>
> list of open sales opportunities to follow up potential income (value of open leads x probability) overview of sales won and lost (monthly/quarterly/annually) etc.

Activity Report or Drupal Views (latter would be my choice probably)
> 3 votes

# Answer
I don't have enough rep to comment and this isn't exactly the answer you were looking for, but I also had the same question a few months ago and research led me to the answer No. Instead, we are using Salesforce to manage sales leads (in our case, prospective members). I talked with a few people who have a lot of experience integrating CiviCRM for nonprofit orgs, and based on the small size of our staff they did not believe it would be worthwhile to customize CiviCRM to the extent needed, when an out-of-the-box solution would work just as well. I'm in the U.S. so I don't know much about Salesforce in the UK, but here there is a free version for nonprofits.
> 3 votes

# Answer
We have a sort of hybrid approach to this at our organization. We record sales contacts for our exhibit booths in civiCRM along with their value and placement, but we haven't written the difficult reports yet and we don't currently require multiple sales records per contact.

We are using a custom relationship "sales contact for/is" between an organization and an individual, and then we have a set of custom fields for booth value, number, date, etc.

I would imagine for your spec getting this far could work for value, note, probability, and pick-list for the workflow stage in custom fields, and it's a very easy setup.

**Here are the bumps in the road that we have tackled:**

* Custom tokens to send civiMail to sales contacts but include data from their organization through the sales contact relationship. We have implemented these as a custom Drupal module.
* Basic custom reports adding columns + filters for the custom fields. This is not too hard but is probably non-trivial in terms of customization.

**Here are the bumps in the road that we haven't tackled and I think are probably non-trivial:**

* If you require multiple sales opportunities for a given sales contact, you might set the custom field set that accepts multiple entries, but then you run into: "They can not be Exported" and "If they are included in a report as a display column, only the first set of values are shown."

I'm not sure why this is or if a custom report can get around this. I'd imagine it's possible but some advanced mysql etc would be needed. We wipe the booth sales fields each show and archive the data outside of civiCRM.

* Potential income and overview reports - These are a bit harder and we haven't tackled because I am not yet familiar with implementation of the statistics() function when customizing reports, but that functionality *is* built into reports if you're up for the work to figure it out.
> 1 votes

# Answer
It's not a perfect match, but what you are describing is similar to the purpose that the campaign collection of features handles. On a client site, I helped implement a phonebanking campaign using the approached described on this page: https://docs.civicrm.org/user/en/4.6/civic-engagement/everyday-tasks/

As Pete notes - the Activity record is a key to tying things together, and as Eli observes, their are lots of fiddly bits that require assembly, though most of the building blocks are in CiviCRM, imperfectly. And no is often the correct answer, depending.
> 1 votes

---
Tags: evaluating-civicrm, sales
---


title: Expanding the Relationship Notes field

text:
# Question
Title: Expanding the Relationship Notes field
Is there a way to increase the size of the Relationship Notes field?

In 4.6, it appears to be stored in the varchar(255) "description" column of the civicrm\_relationship table. Nevertheless, Webform-CiviCRM integration let us use a textarea as a widget for this field, and now that the client has become accustomed to the idea of using this field for longer content.

I tried simply increasing the column size in the database and flushing caches, but it does not seem to make any difference by itself; submitting the webform to create the relationship results in the same error:

> The CiviCRM "relationship create" API returned the error: "Value for description is 884 characters - This field has a maxlength of 255 characters." when called by function "preSave" on line 187 of wf\_crm\_webform\_postprocess.inc with parameters: "Array ( \[relationship\_type\_id\] =\> 17 \[is\_active\] =\> 1 \[start\_date\] =\> now \[description\] =\> *884-character description went here* \[contact\_id\_a\] =\> 26305 \[contact\_id\_b\] =\> 13475 \[is\_permission\_b\_a\] =\> 1 \[is\_permission\_a\_b\] =\> 0 \[check\_permissions\] =\> \[version\] =\> 3 ) "

The site is a Drupal 7.44 / CiviCRM 4.6.19 site, with Webform 7.x-4.x-dev and Webform-CiviCRM Integration 7.x-4.15. The ability to add case relationships was added back in 7.x-3.x.

# Answer
> 2 votes
Modifying field types in CiviCRM is bound to create problems later on (e.g. with upgrades), so I wouldn't do that.

The straightforward approach would be to create a custom fieldset for relationships and add in a new custom field that is large enough for your data. I suspect there might be a few gotchas in terms of accessing this field, but if you're in Drupal, then the entity support in Drupal might solve this.

Apropos of this, here's an article about Drupal that points to how important this kind of fieldable relationship entity can be: http://atendesigngroup.com/blog/drupals-weak-link

---
Tags: webform-civicrm, relationships, 4.6, fields
---


# Question
Title: CiviCRM integration with bespoke custom CMS?
Can CiviCRM be integrated into a bespoke custom built cms, I see that you can download it for drupal, wordpress and joomla but our cms was built specifically for our non for profit, if someone could help me with this that would be fantastic

# Answer
> 3 votes
It's possible that you could build an integration component to make it work with your custom cms, but it probably wouldn't be worth the effort.

Your best bet would probably be to use the api to accomplish an integration on the pieces you care about. The api includes methods for most functions, including inserting, updating, deleting and retrieving data using php, rest, smarty and javascript interfaces. As well as html/js snippets for forms to be embedded into your cms html. See: http://dmaster.demo.civicrm.org/civicrm/api#explorer log in as demo/demo.

# Answer
> 3 votes
An alternative would be to skin up a Drupal CMS to have the same look/navigation as your bespoke system and push people through to it for Contribution pages etc. The user would probably not notice as they move from yoursite.com to eg donate.yoursite.com

# Answer
> 0 votes
I would say it is possible but you would be in not well-charted territory. I'm assuming you are a developer. You'd need have a thorough understanding of how the CMS works under the hood.

Have a look at https://github.com/civicrm/civicrm-core/blob/master/CRM/Core/Invoke.php

I am not certain if CiviDesk is maintaining a "standalone" (CMS-free) fork.

Along the lines of the other the other replies... you'd probably be better off adding single-sign-on features to your CMS for a seamless integration with a minimal drupal instance that houses Civi.

---
Tags: integration
---


# Question
Title: 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?

# Answer
> 1 votes
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.

---
Tags: wordpress, paypal, issues, recurring-contributions
---


title: Migrate from Drupal To Joomla

text:
# Question
Title: Migrate from Drupal To Joomla
I have completed the following steps:

* sql backup civicrm database from Drupal
* create fresh joomla install (3.6)
* install fresh civicrm (4.2 - same as on drupal install)
* import and replace civicrm tables from sql backup into the Joomla database

all seemed to be going well, but now when I log into the admin area I am getting a white screen stating

> > Sorry but we are not able to provide this at the moment. DB Error: unknown error Return to home page.

it then logs me out,

when i check the error\_log on the server it states:

> ```
> PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/extensions/no-debug-non-zts-20121212/gd.so' -
>
> ```
>
> /usr/local/lib/php/extensions/no-debug-non-zts-20121212/gd.so: cannot open shared object file: No such file or directory in Unknown on line 0

also, in PHPmyadmin when i try to edit a civicrm table i get the following error:

> **#1449 - The user specified as a definer ('civicrm'@'localhost') does not exist**

if anyone can advise on how to correct please advise :-)

thanks in advance.

# Answer
> 1 votes
I'm assuming this is a new server as well. The first sounds like a PHP issue - some kind of mismatch for the GD extension in php.ini or php-gd rpm package is not even installed. When I say extension I mean PHP extension, nothing to do with CiviCRM other than GD might be used by CiviCRM, but it's usually installed by default. In joomla admin you can go into site system information and see the output from phpinfo to see if it's installed.

The second is probably a mysql trigger/view issue, where you have a different mysql user for your joomla database than the one that created the original civicrm trigger/view. You can either create and use the same mysql user (civicrm@localhost) for your database, or recreate the trigger/views manually. A third option is start again and edit the sql file and edit the part of the trigger/view creation that sets the definer before you import it to the mysql user that you are actually using.

# Answer
> 1 votes
I highly doubt that such an old version of CiviCRM would work on a modern version of Joomla. You'll also want to upgrade for security reasons. I would recommend upgrading CiviCRM on Drupal before migrating to Joomla, and your "Unknown Error" will likely disappear.

Also, to troubleshoot the "Unknown Error", turn on debug mode and backtraces: In CiviCRM, please go to **Administer menu \> System Settings \> Debugging and Error Handling**, select "Yes" to both "Enable Debugging" and "Display Backtrace", and press "Save". If you're not sure what to do, please update the question with the expanded debugging info.

Demerit is correct about the definer error. See here to fix that error.

---
Tags: drupal, joomla
---


# Question
Title: Civicrm fails to launch - Wordpress gives "The plugin does not have a valid header."
We have been running CiviCRM 4.6.8 for a while now on our site. Last evening, while trying to access our site, Wordpress gives us this error: The plugin civicrm/civicrm.php has been deactivated due to an error: The plugin does not have a valid header.

we had plans to update to 4.7.9, so we backed up our SQL database and entire CiviCRM installation and proceeded with updating to 4.7.9 as per https://wiki.civicrm.org/confluence/display/CRMDOC/Upgrading+CiviCRM+for+WordPress. However, when point our browser to the upgrade url: http:///wp-admin/admin.php?page=CiviCRM&q=civicrm/upgrade&reset=1, we get this error: You do not have sufficient permissions to access this page.

I would have thought that upgrading would have resolved any issues with invalid headers, but now it seems we have even further issues. Any ideas on how to go about resolving these problems?

# Answer
As regarrds the error message "You do not have sufficient permissions to access this page", please have a look at the Civicrm wiki page at the following link. https://wiki.civicrm.org/confluence/display/CRMDOC/Upgrading+CiviCRM+for+Wordpress

If you get this error when trying to run the upgrade script, you most likely deactivated CiviCRM plugin during the upgrade process. You just have to visit /wp-admin/plugins.php and activate the plugin.

I regret I can't help with the "valid header" problem.

Hope this helps.
> 1 votes

---
Tags: wordpress
---


title: Can Civiccrm do this?

text:
# Question
Title: Can Civiccrm do this?
I am volunteering for a non profit organization to implement the following functionalities in their WordPress website:

1.New members would have a registration form (with full range of personal, education, career and business fields including photo) for entering their complete profile

2.New members who have a front-end dashboard.

3.Members would have the ability to edit their profile through the front end dashboard

4.Members registration details would be fed into their profile and included in a general membership directory view-able to website visitors I have never used civiccrm and since I have not found a full list of its features I wonder if it is capable to add them.

Thank you.

# Answer
Welcome to CiviCRM

CiviCRM can do all the above listed features and more

But first you need know more about wordpress and CiviCRM - you can do this by palying around in Civicrm wordpress demo site which will give you more idea regarding your need

Demo Link: https://civicrm.org/sandboxes \- http://wpmaster.demo.civicrm.org/wp-login.php

refer: https://civicrm.org/will-civicrm-meet-your-needs

All the best for your CiviCRM Learning

I guess this helps !!!
> 3 votes

---
Tags: wordpress
---


# Question
Title: Does Civi CRM have ISO 27001? And is it compliant with ISO 27002 and ISO 27017?
Does Civi CRM have ISO 27001?

And is it compliant with ISO 27002 and ISO 27017?

# Answer
The standards you reference all relate to information security infrastructure and processes. It doesn't look to me like they apply directly at the application layer.

CiviCRM is going to rely on the security of the underlying platform (LAMP stack) and how it's managed. I suggest you rephrase your question with a specific concern about CiviCRM.
> 1 votes

---
Tags: security
---


# Question
Title: When creating or editing a CiviRule, not all custom fields are available in Condition Parameters
Civi 4.6.9 Drupal 7.44 CiviRule 1.2

I am trying to build a CiviRule that creates a scheduled activity based on a custom field used for activities.

All looks to be good until I get to the CiviRules Edit Condition parameters form. I select Activity for entity. When I go to fields, I see most custom fields that were created but the list is not complete. It appears to get cut off.

The fields are listed in the order they were created. In our case, the list cuts off between custom field sets 92 and 93 and displays 154 fields.

Of course I need the ones further down!

Any guidance?

# Answer
You probably need to file an issue on the Github page, and hope for technical guidance on how to solve it there.

However, I could think of a hack...

You could take one custom field before 92 that you are not using (or not using for CiviRules), and swap the id directly in the SQL-database. In that way you will probably see your custom field in the list.
> 1 votes

---
Tags: activities, civirules
---


# Question
Title: Smart group cache not updating with timeout of 0
We are on 4.6.18 and Drupal. The code in CRM\Contact\BAO\GroupContactCache.php has updated since 4.6.17.

We have users joining our public site to get a Drupal username and a CiviCRM membership (having paid a contribution). They then have a link to view and update their profile. When new users click to view their profile, they see "Permission Denied You do not have permission to view this contact record. Contact the site administrator if you need assistance."

From looking at the code, this message appears if the contact is not in the profile's group. The CiviCRM profile does indeed Limit listing to a specific group, which is a smart group with contacts with the relevant membership types. Our smart group timeout is zero so it should update immediately. However this seems not now to be happening. If I "Cleanup Caches" then the contact is put in the group and it works fine.

I haven't got detailed evidence but it seemed like our smart group cache was never updating.

I could set the cache timeout and set up a scheduled task to rebuild the smart group cache. However this would not be ideal.

I haven't looked at GroupContactCache.php Has the above behaviour changed in recently? How can I fix this? Or any other suggestions on how to avoid this problem?

Thanks, Chris

# Answer
With a timeout setting of 0 for the smart group cache, Civi was none-the-less working with a timeout of 5 minutes. When a contact is added, clearContactCaches() is called which does call CRM\_Contact\_BAO\_GroupContactCache::remove(). However smart groups that have not timed out will not be cleared.

To fix my issue I added to clearContactCaches() a call to clear the specific group that might be used immediately, ie: CRM\_Contact\_BAO\_GroupContactCache::remove(1234);

I also found a bug in GroupContactCache.php in 4.6.18, reported here: https://issues.civicrm.org/jira/browse/CRM-19005
> 1 votes

# Answer
Experienced the same problem...with 4.6.18

Went hunting through CiviCRM's JIRA issue tracker and found many interrelated issues surrounding smart group cache problems for 4.6

Look here and make the changes: https://github.com/civicrm/civicrm-core/pull/6694/files

The patch won't apply cleanly, but you can figure out where to make the 2 line change....

Also did the changes in this commit for good measure: https://github.com/civicrm/civicrm-core/pull/8637/commits/189d2597929fc6d39f2f587ec5696f74b0ea8775

Boom, immediately smart groups started to respond immediately
> 0 votes

---
Tags: smartgroups
---


# Question
Title: How do I scrape an old website into a .CSV file for data migration?
I'm organizing my data to prep for CiviCrm. One of the data banks we have is an online directory listing of hundreds of names, contact information and bios. NONE of this is organized into a spreadsheet.

The information is 1. Hand coded into HTML 2. Landing page has an alphabetical listing of hundreds of names that link to 3. A page in a separate digital directory with a html table with the contact information on one side and the bio on the left.

QUESTION: How do I automate the scrapping of this information and pushing into a .CSV without having to do this one by one?

Here is an example of the full directory.

# Answer
I would recommend to use "Open Refine" for preparing your data!

Open Refine (formerly: Google Refine) is an open source tool, running on your own computer, that allows to perform data manipulation as you need for any CiviCRM migration project.

To get a quick idea how it works, you could take a look on these tutorial videos:

https://www.youtube.com/watch?v=yNccGtn3Wb0 (Introduction 1 of 3)

https://www.youtube.com/watch?v=45EnWK-fE9k (Introduction 2 of 3)

https://www.youtube.com/watch?v=5tsyz3ibYzk (Introduction 3 of 3)

The third video will show how to "add column by fetching URL's" - this should deliver what you need!

I have save hundreds of hours using OpenRefine during CiviCRM data migration projects. Of course, you will have a learning curve in using it. But this is one of the rare tools where you will save time already the first time you are using it.
> 2 votes

# Answer
I've actually had good luck ("luck" being the operative word here) copying and pasting HTML tables in to a spreadsheet. You might need to paste it into a word processor document so it's in a table there first. I've done this with OpenOffice. YMMV with Microsoft Office.
> 1 votes

# Answer
Maybe a PHP script that uses DOM references to build an array of all the `<li>` items' names and link URLs, then cURLs each page and again uses DOM references to grab the contact info and add it to the relevant item in the array. There's probably a less procedural/more OOPy way to do it if that's your flavour.

In the linked pages, you may be able to distinguish between the email address, web address, and bio with an if/elseif type of thing where if the contents of the A HREF contain "mailto:", that's the email; if it contains "http://" it's the web URL; failing both those conditions it's the bio.

CSV is literally just comma-separated plain text where commas delineate columns and line-returns indicate rows, so if you can get your script to output "Name, email, web URL, bio (line return)" for each person in the database, you should be able to copy that text, paste it into a plain text document, and save it as CSV.

Good luck!
> 1 votes

---
Tags: contacts, database, export
---


title: add user to CIVICRM with Wordpress

text:
# Question
Title: add user to CIVICRM with Wordpress
I need to add a new CIVI CRm user, how can I do that please???

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

I tried Users and Permissions but it didn't work

# Answer
> 3 votes
If you need to synchronise the user from WP to CiviCRM you can do it by

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

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

---
Tags: user
---


title: Unsubscribe links have missing slash

text:
# Question
Title: Unsubscribe links have missing slash
This one has me perplexed since I haven't seen the missing link issue cause any other problems. In the Civimail unsubscribe links, there's a missing slash right after the domain URL. For example, assume a domain of mycivisite.dom. When the ubsubscribe link is generated in the emails, it looks like this:

http://mycivisite.domcivicrm/mailing/optout/yaddayadda/etc

As you can see, there's no slash between mycivisite.dom and civicrm. Where am I not looking?

-- Marcel

# Answer
> 2 votes
I would check `civicrm.settings.php` for the `CIVICRM_UF_BASEURL` to ensure it has a trailing slash.

If you update your question with your CMS and the CiviCRM version, there might be more specific advice folks can give.

---
Tags: civimail, unsubscribe
---


# Question
Title: What of these CiviCRM features comes 'out of the box'?
On the CiviCRM demo -- there are lots of great features / fields etc. What comes *standard*?

# Answer
I'd caution that 'standard' is a slippery word. Since CiviCRM is of the 'community' style of open source, there's no 'pro' version with extra features, so Ramesh has the right answer to that question.

On the other hand, even after you put aside the financial hurdles, there's still the complexity hurdles of additional 'features'. So another answer is that you actually get more than the demo, and still for free, as you climb these hills:

1. Understanding how CiviCRM can be configured 'out of the box', beyond what you see in the demo (see ramesh's documentation link)
2. Understanding how extensions can be downloaded/enabled and finding ones that match your needs.
3. Understanding the open sourceness and 'plugability' of the code to extend CiviCRM in ways that are specific to your organization and no one else has (yet), by writing your own extension and or contributing to core.

For someone coming from the WordPress community, you'll find that there are a lot more free but still high-quality extensions and not the same kind of 'market' that Wordpress world is used to.
> 6 votes

# Answer
The demo has the following extensions enabled by default, which are not part of CiviCRM core:

* CiviVolunteer (features under the "Volunteer" menu)
* CiviRules (Administer \> CiviRules; this is a rather advanced extension)
* Civisualize (it might be disabled at the moment, it provides fancy graphics)

All these extensions are freely available under the same terms as CiviCRM, and are available for Drupal, WordPress and Joomla. If I recall correctly, they can all be installed using the one-click installer in the Administer \> System settings \> Extensions screen (if the file permissions allow it).
> 6 votes

# Answer
Welcome to CiviCRM

Yes is the answer

Anything you see in the demo are in-build feature which comes with the core

Indeed it has lots of great features - If you explore further you will find more amazing features

refer: http://dmaster.demo.civicrm.org/civicrm/dashboard

documentation: https://civicrm.org/documentation

I guess this helps !!!
> 3 votes

---
Tags: evaluating-civicrm
---


title: Compatible IATS Payment Extension

text:
# Question
Title: Compatible IATS Payment Extension
What version of IATS Payments extension is compatible with Civicrm 4.7 Beta5 release?

# Answer
We're just setting up for a large test grid with master on CiviCRM 4.7 - I've done some preliminary testing - and look forward to completing the entire grid. If you're able to run some tests yourself - clone master from https://github.com/iATSPayments/com.iatspayments.civicrm \- and let us know what you find \[in the GitHub queue is best\].
> 2 votes

# Answer
Karin, hello! I installed the clone master and it broke the backend of CiviCRM. Had to reinstall 4.7.10 (no db util run needed). What version works with 4.7.x? Otherwise, we are dead in the water with donations.
> 0 votes

---
Tags: civicontribute
---


# Question
Title: How to create new custom event page in the admin area
I have set the "Custom PHP Directory" as \[civicrm.files\]/custom\_php/
Under custom\_php/ I have created the folders CRM -\> Event -\> Page -\> SessionTypes.php
I have added the menu as a hook under Events (in the admin area) which points to /wp-admin/admin.php?page=CiviCRM&q=civicrm/sessiontypes but the page does not get hit.
What am I missing? Below is the content of the SessionTypes.php

require\_once 'CRM/Core/Page.php';
class CRM\_Event\_Page\_SessionTypes extends CRM\_Core\_Page {
function run() {
die('innn');
parent::run();
}
}

# Answer
> 0 votes
Alongside with civicrm\_navigationMenu (which only creates the menu item) I had to use the hook civicrm\_xmlMenu which is where you specify the xml file that manages the record for civicrm\_menu. This is where civicrm knows what the page\_callback is for every path i.e. civicrm/sessiontypes

---
Tags: wordpress, civievent, admin
---


title: Authorize.net ARB stopped working

text:
# Question
Title: Authorize.net ARB stopped working
Individual contributions on our site are working find but ARB transactions stopped working in March of 2016. Nothing has changed on our end as far as I know. I've upgraded to the latest Civicrm for Wordpress (v4.7.10), verified our silent post URL is correct at authorize.net, checked the API Access Key and Transaction Key are correct.

For recurring transactions, the initial transaction is processed fine by Authorize.net but an ARB subscription isn't configured and the transaction remains pending in CiviCRM.

I reached out to authorize.net and they stated they have no logs to assist troubleshooting and everything must be reviewed on our end.

Any ideas on where to check? We've got everything setup according to https://wiki.civicrm.org/confluence/display/CRMDOC/Authorize.net+Configuration

Only change I've done is to try the Akamai URLs rather than the older URLs.

# Answer
> 1 votes
It's hard to answer definitively without knowing your version of CiviCRM. However:

* If you're using CiviCRM 4.5+, IPN transactions (the silent post URL) are stored in `civicrm_system_log`. You can also replay them.
* You should search your web server logs (Apache/Nginx/etc.) for references to the IPN URL. If you're not seeing them, then Authorize isn't talking to your server. If they ARE there, check to see whether there was a 200 (success) response or another response (e.g. 404 error).
* Try visiting your IPN URL in your web browser. Do you get a response along the lines of "The transaction has failed", or do you get something like your site's web page? If the latter, you may have a broken redirect rule in your web server settings.

---
Tags: recurring-contributions, authorize.net
---


# Question
Title: Should a second receipt be sent when payment method is ACH with iATS?
Using the iATS payment extension, credit cards and ACH transactions are going through just like they're supposed to. The only hiccup is that one-time ACH transactions are generating a second 'online' receipt when the transaction is later moved from Pending to Completed via the iATS Payments Verification scheduled job. **Is that supposed to happen? If not, any ideas on how to track down what is causing it?**

*Further Details*

When the ACH transaction is first submitted (upon the donor hitting the Submit button on the contribution page), a receipt is issued with all relevant details and the contribution is marked as Pending in CiviCRM (as it should). Later that day or the next business day, iATS receives the okay from the donor's bank and marks the transaction as OK:BankAccept in their system (as it should). When the iATS Payments Verification scheduled job next runs (it runs hourly), the contribution is changed to Completed in CiviCRM (as it should) and a second receipt is generated (??). The second receipt has the basic information (amount, date of transaction, transaction id) and our profile we include in the Online Receipt message template, but none of the financial information nor the billing address info.

The receipt time and date for the contribution is updated to the time of the second receipt and matches when the iATS Payment Verification job ran, so it would appear that is the link. There are two activities in the contact's record, one for the actual contribution when it first occurred and then a second activity for when the contribution status got changed from Pending to Completed.

What causes the online receipt message to fire? Could the recording of the second activity be causing the 2nd receipt?

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

# Answer
What do you have for: Enable email receipting for each recurring contribution.

on: /civicrm/admin/contribute/iatssettings

is it checked?
> 1 votes

---
Tags: civicontribute, payment-processor, message-templates, receipts, iats
---


# Question
Title: Import Multi-value Custom Data Fails for Household Contact Type
The "Import Multi-value Custom Data" fails when importing data into a multi-value custom field set that applies to only a Household contact type or Household sub-types. When the field set was change to "All Contacts" the import works. I didn't test it with multi-value custom field sets restricted to "Individual" or "Organization" contact types. It may fail with these also.

The Import Errors file show "Invalid value for field(s) : field ID; ; field ID; ; field ID; field ID" as the reason for the error when four fields are imported.

We use CiviCRM for WordPress.

To duplicate this setup a simple multi-value custom field set restricted to Households. Then try to import data into it.

# Answer
> 1 votes
I think this might be the relevant JIRA issue https://issues.civicrm.org/jira/browse/CRM-18959

---
Tags: custom-fields, import, households
---


# Question
Title: Linking directly to Contact's Activity from Scheduled Reminder Email
I've created a Scheduled Reminder email that triggers 1 hour before each SCHEDULED Meeting or Phone Activity.

In the reminder email I want to include a link directly to the "With Contact" for the Activity. Or, even better, link to the Activity so that I can easily update the Activity.

What's the URL/Token combination needed for a direct link to the Contact's Activity?

This doesn't appear to be covered in the documentation: https://wiki.civicrm.org/confluence/display/CRMDOC/Tokens

I'm using Wordpress as my CMS.

# Answer
SOLUTION FOUND It wasn't rocket science but I'm putting it here in case others need it (or when I forget).

Here's how to create a link that will take you directly to an Activity in CiviCRM.

EDIT ACTIVITY PAGE ON WORDPRESS CMS

http://www.MyOrganization.org/wp-admin/admin.php?page=CiviCRM&q=civicrm/contact/view/activity&atype=2&action=UPDATE&reset=1&id={activity.activity\_id}&cid={contact.contact\_id}&{contact.checksum}&context=activity

VIEW ACTIVITY

http://www.MyOrganization.org/wp-admin/admin.php?page=CiviCRM&q=civicrm/contact/view/activity&atype=2&action=VIEW&reset=1&id={activity.activity\_id}&cid={contact.contact\_id}&{contact.checksum}&context=activity

If you're using a different CMS you can find the root URL structures at https://wiki.civicrm.org/confluence/display/CRMDOC/Tokens
> 1 votes

---
Tags: wordpress, activities, scheduled-reminders
---


# Question
Title: CiviCRM for Outlook - Invalid Credentials
I set everything up for the civicrm for outlook extension according to these instructions http://www.vedaconsulting.co.uk/outlookforcivicrm-release. I am using the api extension to generate the api key. But i keep getting the "Invalid Credentials" error message in outlook when i try to connect it. Any thoughts on what could be causing this to not be able to connect?

# Answer
> 2 votes
I'm not a civi expert by any means, but thought I would share my experience - I had a similar issue, and it turned out to be a firewall issue - civi was hosted on a machine on the net, and my Outlook client was on our corporate network. When I was connected to our company network, I would get that error. When I took the machine home and tried connecting there - it worked fine.

Other things that got me to start with - in the URL path, make sure you have the trailing / on the path (check by copying the url and trying to access the url in a browser), and make sure you're using the correct site key from the civicrm.settings.php file

Hope something here helps!

---
Tags: civimail, error
---


title: Can't import Event participants

text:
# Question
Title: Can't import Event participants
I can't figure out how to import event participants. I have created an event (ID=1). Same problem with event ID=3.

No matter whether I use Participant status or Participant status ID, CiviCRM gives me error for all lines.

*Missing required field(s) :Event Participant Status.*

What data should I be providing to CiviCRM to make it work?

# Answer
**PROBLEM SOLVED!**

It turns out that **semicolon** does not work as *Import Field Separator*. With **comma** every went as it was supposed.

P.S. Microsoft Excel saves CSV files semicolon-separated.
> 3 votes

# Answer
Here is how I set my import up and use it every week and it works.

This is how my csv is setup.
> 1 votes

# Answer
Along with the *CiviCRM has detected invalid data or formatting errors in 50 records* message you should have an option to download a CSV of the records which had errors. If you open this CSV, you should see the particular records and field(s) that didn't make sense to CiviCRM.

The easiest way to get the "expected" (=valid) values for import is to add a single record with values like you want to see, and then export it from CiviCRM.
> 1 votes

---
Tags: wordpress, import
---


title: Financial Softwares to use with CiviCRM

text:
# Question
Title: Financial Softwares to use with CiviCRM
What is the best software to use with CiviCRM? I've been using Quickbooks premier 2015 which has no option to import transactions. Are there Quickbooks versions that allow for transaction import?

# Answer
I use Xero with the CiviXero integration extension
> 2 votes

# Answer
I use Aplos Software. It's specifically for non-profit organizations with Fund Accounting. It has an api and ability to do imports.
> 0 votes

---
Tags: bookkeeping
---