Civimail is not sending scheduled mailings, could it be Cronjob syntax or Bluehost?

Success, with minor change in syntax I am now able to send schedule mail using Cron jobs to kick off schedule mails.  Here is my method for running CiviCRM cron jobs on Bluehost shared hosting every 16 minutes. Previously I had also specified the the parameter job.execute, which I have removed.
wget -O - -q -t 1 'https://<my-domain>/wp-content/plugins/civicrm/civicrm/bin/cron.php?name=<username>&pass=<password>&key=<sitekey>'

I have scheduled 5 different mailing jobs at 15-60 minute intervals and each has delivered within 3 minutes of scheduled sending.  Moreover, my Cron status is "Cron Running OK".
Bluehost does limit the frequency of cron jobs on shared hosting to between 16 and 25 minutes, so cron is kicking off as frequently as possible.


Not sure what CMS you're using - it would be nice if you could permission this but I can't in WordPress so I see the need you have.

Just add the parent selector as well:

.contact-summary-relationship-tab .action-link
(the parent id an ID not a class but when I place the pound sign it thinks it's formatting)

Keep in mind, there is still an option in the actions menu as well that you'll want to hide.


Take a look at the file civicrm_handler_field_pseudo_constant.inc - this is what handles the option value lookup.


What's the recommended way to handle redirection after quickform submissions?

Here is what I do in a page:

$session = CRM_Core_Session::singleton();
$session->pushUserContext(CRM_Utils_System::url('civicrm/pumexpenseclaims/page/claimlevel', 'reset=1', true));

Then in the form I do nothing in the postProcess. The only thing I take into consideration is when I press something like delete on the page where I take an action but do not need a form. If that is the case I tend to do this:

$session = CRM_Core_Session::singleton();
CRM_Utils_System::redirect($session->readUserContext());

Mind you, it could well be that this pattern no longer works in 4.7? What are the issues you run in to?


It seems to be an issue with xero (I'm assuming it's an extension/plugin that you have enabled on your site)?

If you are using fuzion's extension, you might want to check if it's already logged as an issue or if there is a solution already

https://github.com/eileenmcnaughton/nz.co.fuzion.civixero


Membership start date and "member since" date not set with online contributions

This problem was seen on one of our sites and the issue was in the status rule page where Pending is selected as Member = Yes.
Pending is a reserved status that defaults to Current Member = No. Civi doesn't allow you to edit this status via UI but i see inline edit still works on these statuses. This is clearly a bug in core.

So i think it was unintentionally updated to Yes on your site since i see the same case on your attached screenshot.
Reverting this value back to No fixes the problem with the dates.


Aside from the general arguments against Salesforce, which are well-detailed elsewhere - it's designed for business-to-business interactions.  That results in odd architectural decisions.  For instance, all individuals must have an organization they're tied to.  That often doesn't make sense in the non-profit world, with individual donors, social services clients, etc.

To combat that, a group of folks with the financial backing of the Salesforce Foundation created the Salesforce Non-Profit Starter Pack (NPSP).  This is available at no cost, and alleviates a lot of the pain of using Salesforce in the non-profit context.

Unfortunately...in the past year, Salesforce Foundation has decided to create a new package called "NGO Connect", and it's much more expensive.  Instead of 10 free user seats, you get 2 - and after that it's $90/user/month.  Salesforce Foundation has started to redirect its resources there.  As a result, a lot of features that many non-profits consider essential are ending up in the more expensive NGO Connect, and will likely never end up in the NPSP.

Whether this matters to your clients, who sounds like their CRM needs are quite basic, I'm not sure - but this is the primary concern with the non-profit Salesforce ecosystem right now.

EDIT: By request, I'm updating this with more info.

Here's a comparison of NPSP vs. NGO Connect.  I wouldn't expect features developed for NGO Connect to be available for NPSP users, or they'd kill their differentiation.  In fairness, NPSP seems to still be under active development.
The power of Salesforce is in its integrations.  However, the integrations are a) additional paid packages, b) are generally priced for enterprise use.  You can end up spending a lot to get a strong Salesforce experience.
The Salesforce real-time API is slow, and you're subject to API limits.  Those API limits are dinged every time you use a non-Salesforce native integration.


Getting Drupal error messages with Silent User Registration extension

I got some help from a friend and we got it working. The problem seems to be that the database was not finished writing to the email table when the CiviRule fires. We switched the rule to Trigger on "Email is created".


@Dino62 - I dont think you can execute multiple SQL at the same time

But still you can split the SQL in to different task and create a temp table and input all the values which you want to display in the report

Use the below to run the SQL against Database separately

CRM_Core_DAO::executeQuery( $query, $sqlParams );

If the above is not helping then try to use

function alterRow( &$row ) {
    $row['sort_name'] .= ' ( altered )';
}

where you can handle each row individually

I guess this helps !!!


how to drop all civicrm tables using drush?

There's a file in the [civicrm root]/sql folder called civicrm_drop.mysql. You should be able to use that as source sql/civicrm_drop.mysql. It doesn't drop views or the canary table, but you can do that separately.


System Status: Error "Cron Not Running" after update to 4.7.4

A similar-sounding bug report has been filed here:

https://issues.civicrm.org/jira/browse/CRM-18514

There are scattered reports of cron-related issues in 4.7 but people have been not giving detailed enough information to really pin the problem down. Can you say exactly how you have your Civi cron jobs configured to run? From your question it is not clear that you ever had cron set up correctly... the warning message about that is a new feature in 4.7 - it may simply be telling you about a problem that's been there all along.


What's the story behind the name 'CiviCRM'?

The canonical explanation is that Civi comes from "civil society", ie " "aggregate of non-governmental organizations and institutions that manifest interests and will of citizens."

Over the years, I've heard various other explanations, one is that Dave and Lobo are extremely polite borderline canadian, so when they built a crm, they wanted it civil.

After the first civicon, at the end of a long night involving lots of tequila shots, I've heard a sinister plot that Dave is an 5-star general in the army that is going rogue and wants to take control of the UN. According to the legend, the cividog has fought back and protected the civilians. Those knowing Dave (or Scout) would take that explanation with a pinch of salt.


Event registrant cancel/transfer error - getFieldValue failed - in SelfSvcUpdate.php

Do you have pid supplied as param in cancel/transfer url? Does the requested participant has event id attached? Does this error is consistent?


I need to migrate data from one CiviCRM on Drupal instance to a clean one. HELP?

Before pronouncing the old database deceased, I would make sure the structure is correct and if not what is broken.  You can try this: https://github.com/progressivetech/civi-schema-harmonizer or http://wiki.civicrm.org/confluence/plugins/servlet/mobile#content/view/86213632.  The current dB may be ok.


Change multi select custom field to single select?

I am not sure what would happen if the field contains multiple values.

What I would do if I where you is the following:

Create a new field, exactly as you want.
Export your contacts with only 2 fields: internal id, and the multi-select field
Check the export and fix the records with multiple values
Import again, but then use the new field via import mapping
Check your data
Disable old field (disabling means you can enable again when needed)
After a few months and no need to see the old field -> Delete old field


API creation: my action is not found (only on Linux server)

Even i have faced such problems many times in past. But i do some work around and fix it. What i would do

rename file ImportData.php to WD2.php
move WD2.php to org.civicrmitalia.washdog\api\v3\
Use lower case as function name. eg civicrm_api3_w_d2_importdata($params)

HTH

Pradeep


I don't think there's a way in the user interface but if you're comfortable with directly accessing the database and don't need to update any timelines/activities you can do something like:

UPDATE civicrm_case SET case_type_id = CONCAT(CHAR(1), '8', CHAR(1)) WHERE case_type_id = CONCAT(CHAR(1), '1', CHAR(1));

This would take the ones who have case type 1 and convert them to 8. You'd have to look and see what the existing numbers are:

select ov.label, ov.value from civicrm_option_group og inner join civicrm_option_value ov on (ov.option_group_id = og.id and og.name = 'case_type');

And of course do this on a test site first, and make a backup.


Webform CiviCRM activity - prevent email notification

CiviCRM Core will (by default) send out an E-mail to Contacts who are assigned to an Activity.

You can change this setting to Not send out any E-mail to Contacts who are assigned to an Activity and handle Email notifications on a per webform level. If you need an example of that - let me know.

Here is an example:
On the form: E-mail + a checkbox (without label:   and text: Send E-mail Notification:

Conditionals -> if the checkbox is checked -> show the E-mail field:

In Webform -> E-mails -> send E-mail to Component -> E-mail:

Of course you can make this as complicated as you want (also e.g. by including Activity Status and/or Activity Type in the Conditionals.


Does Using CiviMail for mailing lists on AWS violate the AWS Terms of Service?

"Probably, no."

This seems to be a legal question, and CiviCRM is a tool. CiviCRM provides a lot of support for not violating those terms ... but someone could still contrive ways to break the agreement, so as with any tool it's how you use it that really matters.

If a large number of spammers used a specific tool, you might see bans targeted against the tool itself. I don't think this is the case for CiviCRM.

  You will not distribute, publish, send, or facilitate the sending of unsolicited mass e-mail or other messages, promotions, advertising, or solicitations (like “spam”), including commercial advertising and informational announcements.

If your emails are solicited (opt-in) you should be OK here.

  You will not alter or obscure mail headers or assume a sender’s identity without the sender’s explicit permission.

CiviCRM should be OK here, provided you aren't pretending to be someone else.

  You will not collect replies to messages sent from another internet service provider if those messages violate this Policy or the acceptable use policy of that provider.

This applies the policy to inbound/return email also.


Is the cache field 'expired_date' no longer used?

I had the same reaction when I saw that field -- it doesn't appear to be used.

In fact, I don't think it was ever used. Grepping some of the older releases (http://svn.civicrm.org/civicrm/branches/v2.0, http://svn.civicrm.org/civicrm/branches/v2.2), the field appears as part of the 2.1 schema upgrade; however, even then it's not used in any logic.

My suspicion is that the field is more aspirational. (Theory: One person designed the cache layer and included expired_date in the schema because it's standard in caching systems; then another person implemented the cache logic but ignored that part of the design.)

I wish the cache supported expiration/TTL, so I'm not anxious to remove the field. It would be even better if someone finished TTL support.


I had a similar experience when I cleaned out and reverted to a slightly earlier CiviCRM DB because we had made a goof (no need to elaborate on that). When I imported the desired backup, I had neither ANY triggers nor the MySQL routine civicrm_strip_non_numeric. We are running Wordpress 4.7.3 and Civi 4.7.16. I was able to recreate both the routine and the 27 triggers we use for our install by executing one of the functions for a typical site migration, namely:
{$SITE_URL}/wp-admin/admin.php?page=CiviCRM&q=civicrm/menu/rebuild&reset=1&triggerRebuild=1

If you're running Drupal or Joomla, there's a similar invocation. I didn't quite understand how/why it worked, but glad I stumbled across it ;). Evidently, it not only recreates triggers if missing, but adds in the missing routine. Perhaps someone with a little more experience might weigh in. I was just about to pose a question to that effect when I stumbled on your post via a search for "trigger."


CiviCRM mail sent 200% of intended recipients. Why?

Check under-the-hood. If the "execute query" was double clicked, could that have caused this?


I finally succeeded :

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


How to make backup joomla CiviCRM smaller?

One great way to shrink the backup is to only backup the bespoke bits (e.g. custom extensions and themes) and the database, not the actual Joomla! and CiviCRM code files that are freely downloaded from elsewhere.

This depends on you not having edited any core files, which your developers shouldn't be doing anyway.


Is there a way to make report filters mandatory

If you are setting the filter value (with a default) and don't want the user to change it, you can use the 'no_display' parameter to hide the filter from the user.  (Per the docs here: https://wiki.civicrm.org/confluence/display/CRMDOC/CiviReport+Reference#CiviReportReference-filters ) Unfortunately, it doesn't look like the Required parameter is an option for filters like it is for fields.


Checksum and Shifting Expiration Windows

The checksum string is created when the token is processed, so everytime the checksum string is created it has the expiry date based on 'Checksum Lifespan' set in your systems under CiviCRM >> Administer >> System Settings >> MISC.
When validating the checksum is decoded to get the exipry date and checked against now().
Regarding your question

1 -> Yes
2 -> Yes(since the checksum has expiry date)
3 - No


Unable to load the recipients group when sending mailing with Civimail

Turns out this was caused by some server settings by my hosting provider (apparently they did some changes to the firewall). They managed to fix it and it seems to be working fine.


why are non admin users having fatal error when accessing CiviCRM and dashboard doesn't load?

Based on this line:

#8 ../sites/all/modules/civicrm/CRM/Contact/Page/AJAX.php(606): CRM_Core_BAO_Dashboard::getDashletInfo(5)

I can see that the error is to do with dashlet number 5.  Since CiviCRM generally ships with 6 dashboards pre-built, that means that what I see as dashlet 5 in the database is the same as you.  So I ran:

mysql> SELECT id, name, label, permission FROM civicrm_dashboard WHERE id = 5;
+----+----------+-----------+---------------------------------+
| id | name     | label     | permission                      |
+----+----------+-----------+---------------------------------+
|  5 | allCases | All Cases | access all cases and activities |
+----+----------+-----------+---------------------------------+

So my guess here is that you have this dashlet, but CiviCase may not be enabled.

Check your Drupal permissions to make sure your users have the "access all cases and activities" permission.  If you're not using CiviCase, remove this dashlet from user's dashboards with this SQL command:

DELETE FROM civicrm_dashboard_contact WHERE dashboard_id = 5;

Also - if CiviCase is disabled, you may be able to temporarily enable it to modify the permissions appropriately.


Can I import a drupal block into a mosaico mailing template?

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


Subject line problem when using action "Thank-you Letters for Contributions" in Find Contributions v4.6.8

I tried searching for solutions before posting this, but but clearly didn't search on the right thing.  Found a jira reference today.  Looks like this was solved last month. Check it out here: https://issues.civicrm.org/jira/browse/CRM-17548


How do I find the contact ID on a checksum link, after a form is submitted?

Please have a look at the code here and see if it can help with what you need.


Error when creating new Case: One of parameters (value: ) is not of the type Integer

Not sure what was actually causing this but it has been resolved by updating Civirules.


Duplicate contact when i log with this one

You can dedupe contacts in two ways in CiviCRM.

The first one to do a search and find both contacts and then check the checkbox in front of both contacts and select the Merge Contacts from the action list (screenshot is in Dutch).

The other way is from the dedupe functionality under the Contacts --> Dedupe menu.

You have to select a rule and it will try to find matching contacts which you could then merge.


How to handle event payments that include contributions

An event payment will create a contribution. To add a donation to the event payment form I suggest you look at pricesets. There you can add a donation field. http://gitbook.civicrm.org/events/complex-event-fees.html


4.7.14 Wordpress 4.7 problem with contribution form Birth Date

Hi there there was an issue due to a change made in 4.7.14, It has been fixed in the up coming 4.7.15 version however I would suggest probably the better option is to upgrade and apply the following patch to your code base. https://github.com/civicrm/civicrm-core/pull/9530/


Best way to create a new DB table in an extension with logging

Per Lobo's comment - the logging triggers & tables are automatically created. But, from experience sometimes you have to turn logging off & on to get the tables created. The triggers seem to create & cause lots of errors which stop when you turn logging off & on.

Obviously the function called by turning logging on is more thorough than the enable extension function


Unable to use discount codes when registering in admin area

As the error states, if you use the built-in fees section or a price set with a required price field option (of which you should always have at least one), you will not be able to submit the registration without selecting an option, even if it is a $0 option after applying a discount.

That said, no need to create a separate price set (especially when you are offering only one fee option) - all you need to do is select the $0 option after applying the discount code (or save yourself a click by making the fee option the default), then click the Save button - this will record the registration with a $0 contribution.

If you add a click and remove the "Record payment?" flag that is checkmarked by default when registering someone from the back-office, that will still result in a registration with a status of "Registered" but without the $0 contribution.

Hope this helps,
Tamar


Can an extension remove its custom fields on uninstall?

Your extension needs to include an Upgrader class containing an uninstall function. In there you can use the api to delete the custom fields and custom group. Generate the Upgrader class in civix using the command:

civix generate:upgrader

Read more documentation on this at https://docs.civicrm.org/dev/en/master/extensions/civix/#add-a-database-upgrader-installer-and-uninstaller


Membership Status not updating beyond Grace to Expired

It sounds like there's a misconfiguration of your Membership Status Rules.
Please review them at Administer menu >> CiviMember >> Membership Status Rules.  Pay special attention to the Grace and Expired rules, especially to the Start Date Adjustment and End Date Adjustment.
If you're not sure how to interpret what you're seeing, feel free to edit your question to include screenshots.


CiviCRM Extended Security Release details

There is better information coming which will include a statement along the lines of

  While Extended Security Release provides for longer term stability and fewer upgrades for subscribers, it does not include any additional level of support over and above what is provided via the community. For organizations that need professional support, we recommend working with an expert that specializes in CiviCRM ESR.


How do I make "on behalf of" user proof?

This is how we solved this problem for a client that has teachers as their constituents who all belong to a School Board/District. We're using the autocomplete functionality that webform_civicrm module provides to force teachers to select rather than to type. You can only imagine how many ways one could type "Grande Prairie Roman Catholic Separate School Disctrict No. 28" before we locked this down...


utfmb4 conversion gone wrong - Some columns in the databse have utf8mb4_general_ci others utf8mb4_unicode_ci causing and Illegal mix of collations

@mattwire helped me on chat.civicrm.org to identify the problem.
It was caused by the drupal script I used to convert drupal tables (to the wrong collation), and that script included the tables from civicrm which were listed in the drupal settings.php
I've rerun the civicrm api conversion and the drupal script properly and now everything works.


I would go down the CiviContribute approach first with a PriceSet and a specific 'contribution type'


How can I create a public list of event attendees?

You can do this using profiles

Create a smart group of all attendees of the event
Create manage acl to grant view permission for authenticated and anonymous user to view contacts from smart group.
Create a profile for search and include fields that you want to show.
Create manage acl to use the above  created profile for search for anonymous user
Create a post/page on wordpress and include profile search short code.

Also you can use content views wordpress instead profile to show contact belonging to smart group


DBError and Network Error when saving phone numbers to contacts

Your error log says:

  ** You do not have the SUPER privilege and binary logging is enabled (you might want to use the less safe log_bin_trust_function_creators variable)]

If you turn off logging at Administer > System settings > Misc (Undelete, PDFs, Limits, Logging, Captcha, etc.)  can you save phone numbers?

You can find information on the MySQL privileges needed for CiviCRM at http://wiki.civicrm.org/confluence/display/CRMDOC/CiviCRM+MySQL+Permission+Requirements

Not all hosting companies provide these privileges without a specific request to do so (and even then some will refuse to do so).


How to get my Green Party email address added to the CiviMail from dropdown list

This is a setting in CiviCRM setting under Administer --> System settings --> Outbound E-mail.

There is a checkbox to allow different from e-mail addresses. If this is checkbox is set to no you can only send from a predefined list of senders.

The from e-mail addresses could be found under Administer --> CiviMail --> From Email Addresses


Securiy certificate expired for installation documentation

Thank you for reporting this, I believe the certificate issue has now been fixed. Future issues like this should be reported in the infrastructure channel of CiviCRM chat https://chat.civicrm.org


Where is IPN information stored in Civi?

Your IPN path is configured in paypal - the best path to point it to is yoursite/civicrm/payment/ipn/x where x is the number of the processor. Once you have updated it in paypal it is possible to re-send missed ipns from the paypal console


Do compiled templates (in templates_c) contain URL data, or get corrupted?

To answer the last part, yes you can safely delete the contents of /sites/default/files/civicrm/templates_c/.  That is a recommended step in the upgrade process


I believe there is a notation for issuing multiple chains by appending ".2", ".3", etc. For example, in api/v3/examples/Contact/ChainTwoWebsites.php, it uses:

'api.website.create' => array(
  'url' => 'http://civicrm.org',
),
'api.website.create.2' => array(
  'url' => 'http://chained.org',
),

As far as I know, there is no way to do aliases.

Note: The class which handles chaining is ChainSubscriber. In skimming that code, I don't see anything which explicitly processes the ".2" suffix as a number. It would be worth a try to use a prettier/symbolic suffix (e.g. api.Contact.getsingle.self, api.Contact.getsingle.manager) -


Problem with Aggregating Households Extension after upgrade to 5.3.1

Its not a good idea to add manually in CiviCRM module folder. The system should pick the file from custom php or extension. Looking initially at the debug you provided looks like the custom php path or extension path is not included. Here are few things i would try before making it work in a unusual way

Check directory path is set correctly.
Clean up CiviCRM caches
Uninstall/disbale and install/enable extension. (Note: If the extension is responsible to store data and uninstall would cause data loss than try disabling-enabling extension)
Check if existing extensions is conflicting any problem by disabling the extension and trying.


Creating a public Members directory with CiviCRM in Wordpress using Profiles

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

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

create and edit profiles ( or profile listings and forms)

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

See the Book for more details:

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

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

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

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

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

This could be a bigger bug that needs reported/fixed


Administrative activity under wrong admin user

Usually the source is the logged in user. Are you by any way logged in as Ritson?  Or did you accendentially overwrite your own civicrm profile?


How do you import contributions as Pending (Pay Later)?

Make sure you have 'Pay Later' Column set to 1 and Status column set to 'Pending' for the contribution rows that are pending from pay later. If you don't have status column that its set as Completed by default


Yes.

There is a way that doesn't involve nginx regex's (https://xkcd.com/208/)

If you are comfortable accessing your civicrm database directly you can locate the correct row in the civicrm_mailing_trackable_url and update the value of the url.

If you run

select id, url, mailing_id from civicrm_mailing_trackable_url where mailing_id = X;

Where X is the mailing id - you will get a list of urls for that mailing and you should be able to pick out the broken link and update it.


The way we do it is to set up multiple price fields on one price set. The first price field you would make required, the second field wouldn't be required. Then people are required to select something from the first field, but then can choose what (if anything) they select from the second field.

We do it to have a required registration at the top, but then a textbook you can choose whether or not you purchase. You can have multiple items in each field, we just only have one in each.


petednz - fuzion was right. Type of data that can be selected during custom field setup is related to data. display, not to data type. Database needs full date (even if field was setup as yyyy). Adding 01-01 helped.


Why is there a hyphen following the postal code with this address format?

It looks like CiviCRM automatically includes the postal code suffix in the {civicrm.postal_code} token, so I think you can just remove the suffix and hyphen from your address configuration.

Using your stated configuration in Administer > Localization > Address Settings, I see the same behaviour on http://d46.demo.civicrm.org when printing address labels.

Using this format (with postcode suffix and hyphen removed), I see the suffix included in the output of the postal_code token.

{contact.addressee} {contact.street_address}
{contact.supplemental_address_1} {contact.supplemental_address_2}
{contact.city}{, }{contact.state_province}{ }{contact.postal_code}
{contact.country}

Results in -


Token for Contribution custom field outputting "Array" for a Multi-Select custom field

I found I could get the value I needed by using contribution.custom_xx[0], though I was dealing with a field with only one option.

For multi-select I presume you would need a foreach to output all of the array values, or implode it into a string if you just want the contents as a list.  I had tried implode but found I didn't need it, something like this might work
{', '|implode:contribution.custom_xx}


How to alter and manipulate the behavior and action of button through extension?

you can use hook_civicrm_postProcess or hook_civicrm_post

which ever you need based on your requirement below is the link for more reference http://wiki.civicrm.org/confluence/display/CRMDOC/Hook+Reference


See https://docs.civicrm.org/sysadmin/en/latest/integration/drupal/#civicrm-organic-groups-sync

I'll look into getting that updated. Thanks for reporting.

https://lab.civicrm.org/dev/drupal/issues/102


Error - search members belonging to a group

Group Status "Added" is included in the search automatically and is what you probably mean by being 'a member of the group'.  Group Status can have other values such as "Removed" - meaning that the contact was in the group but is no longer.

The message simply means that there are no contacts currently in the Client Mailchimp Newsletter.  Have you tried to add any contacts to that group yet?


How can I search by relationship in Contact.get?

This is going to require a second api call, first to retrieve a list of relationships for the 2nd contact, use a php loop to turn the list of relations into an array, and then you can add that to the original api call like

'id' => array('IN', $related_contact_ids)

PS. I'm not sure if the contact api3 supports this syntax.


Assigning multiple participant roles in civi event, through imports

The value for all Role data is stored in a single field so I think however you tackle this you are at risk of overwriting existing Roles. Here is one process that at least makes existing Role values visible so you won't overwrite them accidentally.

Create a Profile for updating Participants that includes the Import your Contact IDs and add them to a Group

Use Adv Search to find those Contacts but set the search "Display Results As" to be Participants.

Select the records you want to update - under Actions choose Update multiple participants - select the Profile you created above - this should then give you a batch updates screen where each Role is shown as a checkbox


Permission to see Campaigns in Activity search criteria

This is related to this bug 'CiviCampaign: access CiviCampaign' permission missing. Unfortunately at this time, in order to get Campaigns search showing in Search -> Find Activities, you have to grant permission to administer CiviCampaign.

Depending on your user base (trust and size) and how bad you need this working now, you could give administer CiviCampaign and then change the menu permission for the Campaigns top nav menu item to administer CiviCRM. They would only be able to get to those menu links if they knew the URL directly (unlikely).


How to have credit card option appear without enabling Pay Later option

I believe you're coming up against this bug: https://issues.civicrm.org/jira/browse/CRM-17735.  I believe CiviCRM 4.6.11 comes out Wednesday with a fix!


Civimail Urls don't load and show Could not load the settings file at:

You'll see from civicrm_conf_init() that CiviCRM assumes the site's settings.php and civicrm.settings.php have a specific (relative) location to the CiviCRM codebase. When CiviCRM is installed in a profiles folder, this isn't the case, so config discovery fails.

I believe this could be addressed fairly easily (eg via available Drupal functions like conf_path() for the config directory and drupal_get_path() for the module path), and it would probably make CiviCRM a better "Drupal" citizen if that was the case.

AFAIK the reason CiviCRM doesn't use functions provided by the host CMS when initialising site config is just to handle a few remaining locations where CiviCRM scripts are called directly, without being initialised via the CMS itself.

These are scripts like extern/ipn.php (for which civicrm/payment/ipn/%processor_id would be preferable: CRM-9779), and other files in that extern directory.

While a patch to support locating CiviCRM in the profiles directory alone could be contributed, I'd encourage working towards eliminating remaining scripts in those deprecated locations. Then CiviCRM doesn't have to duplicate the logic of each CMS's config discovery (amongst other benefits), and it'll "play nicer" in that CMS ecosystem.

Some background:

Forum: Remove CiviCRM entry points except via CMS frontend
CRM-11212: Drupal does not bootstrap from extern/rest.php
CRM-9779: Common payment notification framework for payment processor extensions


Best practice: Multiple event types or custom data fields?

For your reporting perspective, it'll be basically the same.  However, the two options would make your registration process very different.  This should guide your decision.

If you have a "one-room schoolhouse" model for your classes where one session includes advanced students taking it as Basketweaving 103 as well as new folks registered as Basketweaving 101, the participant custom field would allow for them to choose which one they're registering for.  From a logistical perspective, having a single event would make it easier to set a cap on total enrollment, see the full roster, and only have to set the location and time once.

On the other hand, if you have Basketweaving 101 on Tuesday evenings, 102 on Wednesday evenings, and 103 on Saturday mornings, perhaps with different instructors, you'll want completely separate events.  You could set up event types for each, or you could have a single event type for all basketweaving and an event custom field for course number.  If you have a dozen or more separate courses, you'll probably want to put the course number in an event custom field so you don't have an overwhelming number of event types.

You should be aware that if site visitors have the ability to view event custom fields, the custom field is displayed on the event info page.


How to inherit data from Organization to contact?

Welcome to SE.  There is no inheritance of custom fields via relationships.
I'm not aware of an extension that does that but it would be possible to write one that copies fields from an org to an individual based on a relationship and keeps them updated if the org fields are changed.
Alternatively you might be able to achieve what you need with CiviRules


If Drupal you need to update the temporary files folder under Administer - Configuration - File System, and possibly in the files table you might have paths using a backslash that need to be converted.

Also even for non-drupal for the windows to linux direction pay attention to capitalization for any file paths. Linux is case-sensitive but windows is not.

And your civicrm.settings.php file may need updating for backslashes and capitalization.

File permissions and file/folder ownership also tend to be more varied on linux. You may have to grant permission to the web server (see e.g. Are there recommended directory ownership and permission settings for CiviCRM files?)


Like Jon said auto filtering the search using url param is in progress. But a work around for this until its available is to

Create a smart group using advance search for each contact type.
Grab search id (civicrm_group.saved_search_id) of the smart group either from database or api.
Replace the id in the url for ssID civicrm/contact/search/advanced?reset=1&ssID=1&force=1 and add it in your menu item.

Thanks

Pradeep


Error Fetching HTTP headers - iATS Recurring contribution

Sorry - we've not seen this (yet) - best to post an issue on our GitHub queue: https://github.com/iATSPayments/com.iatspayments.civicrm - so that both Alan and myself as well as iATS staff sees this.

Perhaps the automatic ones are not run as -u your webuser but as another user - different env - different drush?

My favourite/most stable/like clockwork (no drift) way to run the recurring contributions job is:

to switch it OFF in the scheduled jobs GUI

and then to:

  apache crontab for drupal/civicrm:

  0 2 * * * /usr/bin/php /usr/local/bin/drush.php --root='/var/www/platform/site/' --uri='https://site.org' -u 1 civicrm-api job.iatsrecurringcontributions auth=0 -y

  and then run the scheduled jobs that are switched ON:

  3 * * * * /usr/bin/php /usr/local/bin/drush.php --root='/var/www/platform/site/' --uri='https://site.org' -u 1 civicrm-api job.execute auth=0 -y


This isn't a direct answer to the problem but definitely helps with accessing the log errors to help further diagnosis.

The excellent Log Viewer extension gives UI access to your logs.


Unable to View Household members on Contact Dashboard

In recent versions of CiviCRM, if you go to Contact Summary Page, Relationships tab, and edit a relationship, there are options there for each side of the relationship to edit, view or have no permission for the other contact. I'm pretty sure this predated 4.6.


Is there a way to alternate between different outbound mail servers?

My proposal is using CiviCRM Extension like this one Alternate Mailing Server.

Assumptions:

each alternate server has own setting mailing_backend_alternate[1-9],

first at mailing_backend_alternate1,
second at mailing_backend_alternate2,

in session variable is stored which server will be used,
server is changed by hook_civicrm_alterMailer().


Eric, if you are using Drupal, "Recent Items" are contained in a block.  You can disable the block and it will no longer display.


How to re-process failed recurring contributions after updating card info?

Payment processors handle failed installments differently - currently, Authorize.net will not attempt to re-process a failed installment, but other payment processors might. Also, updates to credit card information can occur proactively without having missed an installment, so the re-process action should be user driven and separate from the card update action (the latest version of the iATS extension allows for the ability to process a contribution for the card on file specifically for this scenario). We have a bit of custom code that allows you to to link a one-time credit card transaction to the recurring contribution ID - it works exactly the same way as linking a contribution to an online contribution page under the "Additional Details" section of the record contribution screen (i.e. there is a select box that will show the recurring contributions based on the contact for whom the contribution is being recorded, by selecting an option from the list, it includes the recurring contribution ID in the values inserted into civicrm_contribution upon clicking "Save").

Hope this helps,
Tamar


It's not very strait forward, but here are the steps needs, (credit to Kasia Wakarecy) as commented in the old CiviCRM forum (https://forum.civicrm.org/index.php?topic=35420.0):

The new badge templates can be added through Administer > System Settings > Option Groups > Name Badge Format. That interface only allows to enter the new badge name and a description but no info about the layout. To actually tell CiviCRM some details about that badge layout, direct database update is required to add that value:

To know which value to update in the database, run first this query:
SELECT id FROMcivicrm_option_valueWHERE name = "Avery 5392"
where "Avery 5392" is the name of the new badge layout you just added. The result is going to be like id = 847.
Enter the layout details for that badge into the DB using this query:
UPDATE civicrm_option_value
SET value = '{"name":"Avery 5392","paper-size":"letter","metric":"mm","lMargin":2,"tMargin":25.4,"NX":2,"NY":3,"SpaceX":0,"SpaceY":0,"width":101.6,"height":76.2,"font-size":12,"orientation":"portrait","font-name":"helvetica","font-style":"","lPadding":3,"tPadding":3}' WHERE `civicrm_option_value`.`id` = 847;

Update the id = 847 with the id number from the first query.

The fields above mean:

'name' => '5395' // name of label
'paper-size' => 'a4' // paper size
'metric' => 'mm' // units
'lMargin' => 15 // left margin in mm (because metric = mm)
'tMargin' => 26 // top margin in mm (because metric = mm)
'NX' => 2 // number of items in x (left to right) direction
'NY' => 4 // number of items in y (top to bottom) direction
'SpaceX' => 10 // spacing between items in x (left to right) direction in mm (because metric = mm)
'SpaceY' => 5 // spacing between items in y (top to bottom) direction in mm (because metric = mm)
'width' => 83 // width of one item in mm (because metric = mm)
'height' => 57 // height of one item in mm (because metric = mm)
'font-size' => 12 // font size
'lPadding' => 3 // left padding in mm (because metric = mm)
'tPadding => 3 // top padding in mm (because metric = mm)

Now, that new layout/template is available when adding new Event Badge Layouts (civicrm/admin/badgelayout?reset=1&action=browse)


Issue upgrading from 4.34 - Fatal Error (value: is not of the type integer

The code that is failing is trying to update a name_badge format.  It looks like 3 new types of labels were added at some point but one of them had an issue and this code is updating that one.

It looks for the id of name_badge in the civicrm_option_group table. It uses that in this sql

 UPDATE civicrm_option_value
 SET value = '{$dimension}'
 WHERE option_group_id = %1 AND name = 'Fattorini Name Badge 100x65'

I'm guessing for some reason the array that feeds %1 is not an integer.

So what to do?  You can, as link in the comment suggest, comment out the update.  In this case in civicrm/CRM/Upgrade/Incremental/php/FourFour.php around line 176 comment out this code:

CRM_Core_DAO::executeQuery($query, array(1 => array($ogID, 'Integer')));

You might get the problem again with another upgrade.

You might check to see if the following sql comes back with anything

SELECT * FROM `civicrm_option_group` WHERE name = 'name_badge'

I think it will.  If so, use the id in the following query.

SELECT name FROM civicrm_option_value WHERE option_group_id =

I think you should get back four rows

Avery 5395
A6 Badge Portrait 150x106
Fattorini Name Badge 100x65
Hanging Badge 3-3/4" x 4-3"/4

If you don't get anything back from the civicrm_option_group` WHERE name = 'name_badge' query check to see if the civicrm_option_value exists

SELECT option_group_id,
       name
FROM   civicrm_option_value
WHERE  name in ('Avery 5395',
                'A6 Badge Portrait 150x106',
                'Fattorini Name Badge 100x65',
                'Hanging Badge 3-3/4" x 4-3"/4')

I'm not sure how recommended this is but you can just add the missing name badge row to the civicrm_option_group table.

INSERT INTO `civicrm_option_group` (`name`, `title`, `is_reserved`, `is_active`, `is_locked`)
                        VALUES ('name_badge','Name Badge Format',true, true, false)

Now if you got any of the four option values back you'll need to change their option_group_id to match the id of the row you added with the insert.


I think it's unlikely you'll be able to perform this search within any of CiviCRM's existing searches.

Fortunately, it's possible to create custom searches. The process requires some coding, but gives you a tremendous amount of power and flexibility.


How to find all activities generated by one schedule reminder?

The easy answer is to search by the email's subject line - but I'm assuming you have multiple scheduled reminders with the same subject line.

You can find details in the civicrm_action_log table.  The action_schedule_id is the ID of the scheduled reminder.  That said, I can't 100% recall how this handles sending the same reminder multiple times - either because repetition is enabled, or because the same membership comes up for renewal multiple times.  Hopefully neither of those apply to you, but if they do, you may need to compare that data against the activity log to see how it's represented.


New Mailing Cannot "Review and Schedule"

After trial and error got it to work by modifying record in table: civicrm_mailing
1) Set Is_Completed to 1 and
2) Approval_Status_ID to 1


mailing labels for contributors AND their spouses/families

This is not possible with the standard functionality.

However it is possible to develop custom tokens which will print the name of the spouse. I don't know if you have any experience with developing customisations for Civicrm


Unable to Upgrade from CiviCRM 4.6.16 to 4.7 (Wordpress)

Problem is old field was lost in the upgrade. Try updating this file:

CRM/Upgrade/Incremental/php/FourSeven.php

with code at this GIT pull request.

This post here explains it in more detail.


Payment Processor. MD5 Hash Removal/Disablement from Authorize.Net

Thanks to your question, the immediate issue has been resolved.  Issue financial#39 removes MD5 hashing from CiviCRM starting with the March release.

Note that Authorize.Net is removing the ability to ADD MD5 hashing to your account in January - but MD5 hashing won't stop working for several months after that.


PayPal Receipts Showing a Pending (Incomplete Transaction)

The guys on the core team have done a tremendous job in resolving this issue in v 4.7.13 - you can refer to the following JIRA ticket for details: https://issues.civicrm.org/jira/browse/CRM-18483

Hope this helps!
Tamar


Sending SMS Error : Invalid or missing integration API Key

Zeak,

As per Clickatell api documentation the api url to send sms is
  https://platform.clickatell.com/messages/http/send?apiKey=xxxxxxxxxxxxxxxx==&to=xxxxxxxxxxx&content=Test+message+text

Please cross check in clickatell the api key under SMS Integration tab(it should be of 24 chars with '==' at the end).


How do i export all the data in civicrm?

The way to export the complete data is a full database dump, eg via mysqldump.

Much of the data will be exported if you do it piece by piece, but it will not be complete and as you suggest there is risk of missing some fields doing so manually.

It's possible your hosting environment will offer some interface to make a db dump - they should have documentation, or you can ask their support staff.

If possible, I'd recommend talking to a technical advisor to ensure you get a complete copy. One you have this, make sure you verify it's complete somehow (ie by loading it into a new system); an untested backup shouldn't be trusted on faith alone.


CiviCRM upgrade from 5.12 to 5.29 - failure

Welcome to SE!  There's lots of useful advice from Luke in his answer but I'd start by looking at the CiviCRM log file.
That error message is a bit misleading.  It's not random luck as to whether an upgrade succeeds so restoring to the previous state and just trying the same upgrade code is very unlikely to produce a better result.  The upgrade probably failed because of a mismatch between what the code was expecting to find in your system, and what it actually found.  Until you track down and correct that problem reloading and repeating won't help.
You can often fix the problem and continue the upgrade without reloading a backup.
If you look at the log file you should see the various upgrade steps logged there.  What was the last successful upgrade step?  What messages do you get after that?
Update
The log file shows:
Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
Updated table to row_format=dynamic and then reran the upgrade.


I do not think there is an action yet to do what you want it to do. It is not a complicated action though, so it should be relatively easy to add. Do you have any PHP skills? If so, it would be great if you could do a PR and add the action? There is documentation on how to create an action here: https://docs.civicrm.org/civirules/en/latest/create-your-own-action/


Expected import behavior when setting custom field to view only

It seems a probable bug.
I ran an import of a file containing same field as my custom field and the field was updated by the information mentioned in csv and did not retain its default value. So, Yes, the issue was replicated.
The value of custom field is only retained when we create a contact through CiviCRM and not importing, so it looks to be an inconsistency in the behaviour while importing. An issue will be opened for the same in issue tracker of CiviCRM.  Thanks for reporting!


Image / file upload issue on civivolunteer public form

da_adamt, Welcome to CiviCRM SE. This seems to be bug in Civi Volunteer extension. I have just submitted a PR for this. Can you try applying patch from here?

Thanks

Pradeep


Changing hosts for CiviCRM -without current host cooperation

How can we extract the data of our CiviCRM install without support from the hosting provider?

MySQL via network / phpMyAdmin / DB backups

If your hosting company provides CPanel, remote MySQL, or a web interface like phpMyAdmin, then you may be able to take a snapshot of your database. This is the core of your CiviCRM data.

You'll need your hosting provider login credentials to access this. You may have multiple login/password combos to access various services.

This would not include customisations stored in code, nor media (eg uploaded PDFs relating to contact activities), but it would give you the core CRM dataset.

FTP / SFTP / web upload

If you can edit the codebase on your server, you can upload tools which would let you make a backup of your DB. You can also copy down a copy of your site codebase. You could upload a copy of phpMyAdmin or a CMS plugin like Drupal's Backup & Migrate. Some CMS will let you upload backup plugins within the CMS admin section.

Again, you'll need your login details (to work).

Exports

If you don't have access methods like the above, but you can still log into CiviCRM, you can search for contact data and then select the Export option. This method of export will probably not retain the full dataset, and you'll need to aspect each core type (Contacts, Memberships, Contributions, ...) separately. I'd only look this way if a full DB export isn't an option.

API

CiviCRM has an API. Building an exporter wouldn't be trivial, but it's another possible route so worth mentioning.

"Other technical approaches"

Ever locked yourself out of your car? It happens to site owners too ... There may be means to obtain access even when you're "locked out"; this requires technical chops. (Remember, to get into your locked car you call a car technician, not a car thief!)


How do I prepare for Developer Training in Denver?

I'm going to be starting here at the developer wiki - http://wiki.civicrm.org/confluence/display/CRMDOC/Develop

and continuing here -
http://wiki.civicrm.org/confluence/display/CRMDOC/GitHub+for+CiviCRM

and I might just buy the book here, though it may be out of date- http://www.amazon.com/Using-CiviCRM-Joseph-Murray/dp/1849512264


Missing Activities tab when viewing contacts

this is configurable at this path civicrm/admin/setting/preferences/display?reset=1 which is found from Administer > Customise > Display Preferences.

The top section is called Viewing Contacts and has a checkbox for eg Activities


Views Proximity Search on Latitude / Longitude

We've done this with OpenLayers
https://www.drupal.org/project/openlayers
and Openlayers Proximity
https://www.drupal.org/project/openlayers_proximity

I wrote a blog article which in part describes how to create a OpenLayers map and Openlayers Map Views overlay with CiviCRM Event location plotted on a map.
This should give you enough pointers to design your own Openlayers Map, View and get you started:
http://jackrabbithanna.com/articles/drupalcivicrm-integration

This article does not include the Proximiy functionality you are looking for, but just install Openlayers Proximity and the filtering will be made available in the Views UI


Yes it's intentional that there are no links if there's mixed record types in a profile.

It's been like that for a LONG time:

https://issues.civicrm.org/jira/browse/CRM-1974

Also for reference:
https://github.com/civicrm/civicrm-core/blob/5.15.1/CRM/UF/Page/Group.php#L353

UPDATE: Based on the comments, I think this is what is desired:

Create a profile that has just the membership fields.
On the manage contribution pages, on the profile tab for your membership contribution page, include the profile either at top or bottom.
When the person goes to buy their membership using your contribution page they'll see the custom fields from your profile.


How to tell which .extra.tpl files CiviCRM is trying (and failing) to load?

This code might help shed some light:

  $template = CRM_Core_Smarty::singleton();
  print_r($template->template_dir);


There is some inconsistent/confusing workflow managing contacts from smart groups?

https://issues.civicrm.org/jira/browse/CRM-19435 fixes the static assignments to smart groups.


Mosaico Pre-header "View in Browser" broke all my tokens in the footer

I can't speak to the first issue, but the second issue (can't "View in Browser" when logged out), I have a solution.

You're looking for the permission labeled CiviMail: view public CiviMail content.  Go to CiviCRM's Administer menu » Users and Permissions » Permissions (Access Control).  Select [Drupal/WordPress/Backdrop/Joomla] Access Control, and check the appropriate box for anonymous users to view public CiviMail content.


Manually 'Grant' last event places by 'Pending from waitlist' and override 'max participants'

Currently we use this as a workaround:
In CRM/Event/Form/Registration/ParticipantConfirm.php we manually edit the emptyseats to allow the registration to finish.

//Allow confirmation even when waitlist is still on
$emptySeats = 99
//$emptySeats = CRM_Event_BAO_Participant::pendingToConfirmSpaces($this->_eventId);

In this way the event is still full and new registrations will be on the waitlist. But the people I manually edited to "pending from Waitlist" can finish their registration.


Outdated CiviCRM, blind SQL injection risk on parameters? (PCI compliance failure)

CiviCRM 4.5.x branch has stopped receiving security updates a very long time ago. Best to upgrade to 4.6.x or 4.7.x as soon as possible!

If you need help - find a partner near you in the partner listings: https://civicrm.org/partners-contributors


Can't Install CiviCRM on Joomla! 3.9.23 mod_fcgid error

The timeout issue itself is caused by a new issue that is created in the latest joomla version itself (3.9.23). Joomla version 3.9.23 introduced an issue: unzipping an install file with several zips inside itself won't work. This causes the behavior you describe.
In the next version this issue will be solved. You can solve the issue now by manually installing a patch made by Yootheme, which can be found here:
https://yootheme.com/support/question/142357


Where is the privacy filters located in report templates?

I think it's at the below link and yes it's strangely missing. Do you want to open a lab ticket?
https://github.com/civicrm/civicrm-core/blob/33307b5a0da280c63ed0d8fa1f8a3e899a217ad0/CRM/Report/Form.php#L5473


How do I prevent blank fields on a profile from overwriting existing data when using the profile to register or donations from existing contacts?

Created jira CRM-20731.

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


This sounds like a civicrm bug. I have tried locally and have the same error.

I found a work around: you can give the custom group a different title (the title Areas is also used for another group which is reserved).

I have created a bug report: https://lab.civicrm.org/dev/core/issues/141


Is there a letter preview w/o activity generation

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

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

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

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


Restore default "mailing footer" in civicrm WordPress 4.2.4

You don't have to reset the default to fix this problem.

In your CiviCRM mass mailing, you need to have the following piece of code (tokens) :

{domain.address} which will display the full address of your organization as defined in the menu Administer -> Communications -> Organization Address and Contact Info (https://yourwebsite.org/civicrm/admin/domain?action=update&reset=1)
{action.optOutUrl} or {action.unsubscribeUrl} to allow the contact to unsuscribe to the mailing

Both tokens are a safe-guard which facilitate compliance with the US CAN-SPAM Act.

You could put the tokens either in the footer / header but you don't have to. You could also add them in your email content.

Also, while not recommended, you could deactivate those verification by checking option Disable check for mandatory tokens in menu Administer -> CiviMail -> CiviMail Component Settings (https://yourwebsite.org/civicrm/admin/setting/preferences/mailing?reset=1)


I just took a look at your pages. If you select a pricing level (which generates an amount due) the options for payment type appear. These options are hidden until there is a total amount due. For your event since there is only one price you may want to make it default.


How do I search for all unsubscribed e-mails across any/all groups

Not sure what version of Civi you are on (I'm on 4.7.9), but take a looking under Reports > Mailing Reports > Mailing Detail Report - I think this will give you a good solid list to work with (see attached screen shot for available columns) - on the filters tab you also have the option to filter by group.

Hope this helps!
Tamar


CiviEvent : display future and past events

The CiviCRM HTML listing URL may help.

By default this displays all current and upcoming events that are active and have been set to public –

/civicrm/event/ical?reset=1&list=1&html=1

You can add parameters to this URL to filter by dates and event types –

This example will display events that start from 1st Jan 2019 -

/civicrm/event/ical?reset=1&list=1&html=1&start=20190101

This example will display events of type conference (type=1 is the ID of event type Conference)-

/civicrm/event/ical?reset=1&list=1&html=1type=1

This example will display events of type conference AND with a start date >= 1st Jan 2019 –

/civicrm/event/ical?reset=1&list=1&html=1&start=20190101&type=1

You can use the end date parameter to display past events, for example, this link will display all events that were held in 2018 -

/civicrm/event/ical?reset=1&list=1&html=1&start=20180101&end=20181231

Downsides without any development –

The title of all the pages will display as Current and Upcoming events even if you are displaying past events.

You can’t remove/add/reorder the columns.


Translate Personal Campaign Pages / User interface

Some of these strings are configurations, others are core-strings in the CiviCRM source code.

templates/CRM/PCP/Page/PCPInfo.tpl :
{$achieved}% towards our goal

This string is missing the {ts}...{/ts} to expose the string to the translation system.
It should also be noted that since this has a variable, the variable should be passed like this: {ts 1=$achieved}{$achieved}% towards our goal.{/ts} (in some languages, there might be a space before the '%' sign, and we can't assume that the string would always translate as "x% [rest of string]".

the other strings in that file, such as 'Goal', 'raised' are in "ts". Looking at Transifex, the strings seem to be there. In what language was it missing? Did you check in Transifex?
"Create your own fundraising page" this is a CiviCRM contrib page configuration, but the configuration does not seem to be flagged as a multi-lingual field. This would require a schema change and an upgrade function.
"This contribution is being made thanks to the effort of xxxx, who supports our campaign..." : looking at the code, this string seems to be mostly hardcoded. However, you can change it using a buildForm hook (change the variable/string assigned to the template).

More information about CiviCRM translation can be found here:
https://wiki.civicrm.org/confluence/display/CRMDOC/Internationalisation+for+Developers


Disable geocoding for contacts but not for events

Off the top of my head, I think geocoding like this is an all or nothing thing. You can manually add the lat/long to an event location, so assuming that you don't have a whole lot of events, this should be pretty much acceptable (and just leave geocoding turned off).

With that said, no real contact details are shared with Google/Yahoo. A street address is simply sent to the geocoder without any names, or anything, and the lat/long is returned. No personally identifiable info is shared.


Issue with CK editor  tag appearing in Token

Try configuring your ck editor as provided here.

Thanks

Pradeep


Paypal standard should give two options. 1 to pay with your PayPal account and 2. To pay with a cc. Sometimes the cc option has a misleading label. For example it will be labeled:"don't have a PayPal account"


how can I embed a civicontribute page in wordpress with gutenberg?

Ok eventually worked this out, with help from the civi sysadmin guide here. You can create a shortcode block, and just add your CiviContribute shortcodes in there, [civicrm component="contribution" id="x"], and it will  embed that form in the page. I will see about updating the civicrm documentation to make this more obvious for people like me :)


Stripe - Billing section not displaying for events

Its resolved, problem was a civicrm custom template file needed to be updated.


Updating an option value with drush cvapi

In Civi 4.6+, you can use pseudoconstants instead of IDs in many places - including for option_group_id.  Civi 4.7 expands the number of places you can use it.

So you can get this down to 2 lines by replacing the first two with:

OPTION_VALUE_ID=`drush cvapi OptionValue.getvalue return=id option_group_id=from_email_address`.

Here's the trick: If the API Explorer allows you to select the value from a select list, that means that pseudoconstant substitution is available on that field.

Unfortunately, I don't think you're going to get this down to one API call.  create requires an ID; you're just not going to get the ID without a get call.

EDIT: It MAY be possible to get this down to one line!  See "options.match" and "options.match-mandatory" on this page.


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.


Displaying the full state or County name in Profile Listing

Turns out the solution was one I'd be staring at for a while.

Administer > Localisation > Address Settings

change the Address Display for state/ province from {contact.state_province} to {contact.state_province_name}


Is there a way to create specific permissions for a tab of information?

You can control the tabs on contact summary page via Contact Layout extension.


Multiple Participants data entry on event not working

Eventually I discovered a {display:none} css style in a custom.css that was being applied to this field


How to create a Drupal rules condition that checks CiviCRM contact's Group or Tag or Subtype

Well to answer this question, basically I had to write a couple of new Rules conditions.  They have been added to the CiviCRM Entity project, right now they are in the -dev version.

I added two new Conditions. CiviCRM Contact is of subtype, and CiviCRM Contact is in Group.

They both require a civicrm_contact object is loaded in the rule, which you get automatically if you are reacting to "CiviCRM Contact is created", or "CiviCRM Contact is updated" Rules events.

The "CiviCRM Contact is of subtype" rule allows you to select which contact subtype to check for.

The "CiviCRM Contact is in Group" rule allows you to select which group to check if the contact is in.

This functionality will be in the next stable version of CiviCRM Entity.

These conditions are used as any other Rules conditions are....

Here's a sample of a Rule that shows a message on the site if a contact with sub-type Student is updated:

{ "rules_show_message_if_contact_is_subtype_student" : {
    "LABEL" : "Show Message if contact is subtype student",
    "PLUGIN" : "reaction rule",
    "OWNER" : "rules",
    "REQUIRES" : [ "civicrm_entity", "rules", "civicrm" ],
    "ON" : { "civicrm_contact_edit" : [] },
    "IF" : [
      { "civicrm_entity_contact_is_subtype" : {
          "civicrm_contact" : [ "civicrm_contact" ],
          "contact_subtype" : "Student"
        }
      }
    ],
    "DO" : [
      { "drupal_message" : { "message" : "Contact of subtype student saved!" } }
    ]
  }
}


How to Fix Missing Organization Profile Dropdown in Contribution Form Settings

The "on behalf of" functionality uses the "On Behalf of Organization" profile which is a default/reserved profile. You should be able to find it by clicking on the Reserved Profiles tab in civicrm/admin/uf/group (or under Administer > Customize Data and Screens > Profiles):


Word Replacement won't replace deceased on contact profile

It's case-sensitive, so if you want to do exact match you can make two entries in word replacements:

deceased => Terminated or Deceased
Deceased => Terminated or Deceased

(without the brackets)


is there a possibility to add custom fields to "notes"

Its possible to add custom fields for Notes through UI, by simply adding an option for Objects a custom group extends to option group.
However the fields wont appear on Add/Edit note form unless you write an extension to build the builds or modify core file to support custom fields(should be couple of hrs of work). Good news is the custom field data can be stored/viewed against the note by api.


Where you return the user depends on your gateway's payment workflow. There are a couple of options.

If the user is returned without additional information (the gateway handles payment confirmation via direct comms between your server and theirs), then you can simply return the donor/registrant to the final "thanks" page.

If the user is returned with additional information (the gateway notifies of payment via some additional tokens / parameters in the browser redirect) then you might want to return the user to civicrm/payment/ipn, in which case you'll be implementing handlePaymentNotification() in your payment method.

If users are redirected back to the IPN you need to consider handling duplicate IPN attempts (browser reload, or IPN from both browser and gateway) by making sure you don't close off the transaction twice. You will probably also want to send an appropriate redirect for browser IPN so that the donor / registrant ends up on the right page eventually.


It sounds like you have civicase enabled and have the setting Redact Activity Emails turned on. Under Admin - CiviCase - CiviCase Settings.


How can I customise site search settings to use a wildcard for a specific entityRef field?

Currently no, it cannot be overridden on a per-field basis. But I could add a core patch to do so if your organization can fund a couple hours work.


What's the right syntax for the API3 "replace" action for the "WordReplacement" entity?

Updated! based on Coleman's answer, and additional testing.
First of all, for WordReplacement, if you want to update a single record it's best and most appropriate to use the get action to get the record ID (civicrm_word_replacement.id). Then (as Coleman noted) use the create action and include the id parameter to update just that record. (Without the id parameter, create throws an error complaining the record already exists. With it, create performs an update.)
For the replace action, the values parameter must be an array of arrays. But, crucially, in addition to the values array, you must provide "scope" parameters outside of the values array.
So for example, with id as the "scope" parameter, the following will update only the record matching the id (equivalently—but more awkwardly—than create):
$result = civicrm_api3('WordReplacement', 'replace', [
  'values' => [
    'id' => 2, // "scope" parameter
    [
      'find_word' => "Contribute",
      'replace_word' => "Give Now",
      'domain_id' => "my-domain-name-here",
      'match_type' => "exactMatch",
      'is_active' => 1
    ]
  ]
]);

The API also supports, and is in fact intended for, multiple replacements. But in this case the values array must contain all of the records that match the "scope" parameter(s). In other words, it replaces the complete set of records that match the "scope" parameter(s). For WordReplacement, if you provide only the domain_id as the "scope" parameter, the replace action will match all of the records for that domain, so your values array must contain the complete set of WordReplacement records for that domain. If you have 3 replacement words, this might look like the following:
$result = civicrm_api3('WordReplacement', 'replace', [
  'values' => [
    'domain_id' => "my-domain-name-here", // "scope" parameter
    [
      'id' => 2,
      'find_word' => "Contribute",
      'replace_word' => "Give Soon",
      'match_type' => "exactMatch",
      'is_active' => 1
    ],
    [
      'id' => 3,
      'find_word' => "Find this",
      'replace_word' => "Replace with that",
      'match_type' => "exactMatch",
      'is_active' => 1
    ],
    [
      'id' => 7,
      'find_word' => "Find this too",
      'replace_word' => "And replace it with this",
      'match_type' => "wildcardMatch",
      'is_active' => 1
    ],
  ]
]);

If you had four WordReplacement records for "my-domain-name-here", you'll end up with only the three above after calling replace. The fourth record will be deleted. Conversely you can add new records by omitting the id parameter (provided the new records have no "already exists" conflicts).
So the replace API action is powerful but potentially dangerous. Test carefully in a development environment before using.


can you upgrade to 4.6.3 and try again. Quite a few bugs were fixed including one that sounds similar to the above

https://issues.civicrm.org/jira/browse/CRM-16251


How to stop CiviCRM deleting a scheduled follow up activity when the original activity is deleted

This is coming from the db schema. There's a delete cascade constraint on parent_id. You could remove that constraint but it might be used elsewhere for different types of activity-pairing (not followup related)  to enforce data consistency. Would have to review all the activity-related code that uses parent_id. It's also possible that parent_id for this pair of activities is never used again anywhere,  so another possibility is remove that linking for followups (via some code, either override or extension), but again would need to review.


Look at MySQL and find the temporary table. It will be names something like "civicrm_tmp_d_dflt_..."
Search status=NEW  and that will tell you the number of rows left to import. Once the table has no NEW rows to import it is done and the table will be removed. If it did not succeed the table will still exist. I find this the best way to monitor the progress of imports using the default importer.


CiviCRM Wordpress Installer Database Instructions incorrect?

This is the MySQL password and not the WordPress administrator password.  If you used the same MySQL database for WordPress and CiviCRM, check wp-config.php in the root of your WordPress installation to find the password.

If you used separate databases (or you're not sure), find civicrm.settings.php.  On a new install, this should be in <webroot>/wp-content/uploads/civicrm.  Open it in a text editor and look for a line that looks like:

define('CIVICRM_DSN', 'mysql://<mysql_user>:<mysql_password>@127.0.0.1:3306/<mysql_database>?new_link=true');

The password should be everything after the second colon and before the @ sign.

Note: there's a very similar-looking like that starts with:
define( 'CIVICRM_UF_DSN'.  This contains your WordPress connection info and not your CiviCRM connection info.


Get a field label instead of value using the api

I assume you mean a drop-down field? You then need to do another lookup on the OptionValue to get the label, e.g. from the api explorer:

    $result = civicrm_api3('OptionValue', 'get', [
      'return' => ["label"],
      'option_group_id' => "custom_marital_status",
      'value' => "S",
    ]);

gives you

"is_error": 0,
    "version": 3,
    "count": 1,
    "id": 866,
    "values": [
        {
            "id": "866",
            "label": "Single"
        }
    ]


Why are my Actions drop downs not working post civicrm security update?

Another clue: the CiviCRM -> Status page /civicrm/a#/status was completely blank
This helped [it's a cache clear of sorts]
Administer -> System Settings -> Asset Caching -> Disable
brought both Actions as well as the Status page back. Then was able to toggle it back to -> Auto
For one project I also had to re-run composer civicrm:publish (some bower assets - only some - most were there) - were just not there post upgrade.
Most sites upgraded just fine. Not sure what was/is different about the three sites I ran into this issue with. I wonder if it's redis... [I usually blame caching ]


Why does the html snippet for a profile not include the url of the site for linked Jscript and css files?

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


"To implement a hook, add a function to the module's main .php file created earlier with civix generate:module" - the developer guide.

However, if you've created your own page class, you may not need to use a hook at all, since you have complete control of the code.

If I haven't answered your question, please update your question with a bit more detail about what you're trying to do.


Forward CiviEvent Registration Confirmation and Receipt

You can include additional email address in the CC or BCC field while configure the event. On the “Online Registration “ tab, at the very bottom, in confirmation email section.


Warning: in_array() expects parameter 2 to be array, null given in CRM_Event_BAO_Event::checkPermission() (line 2053 of BAO/Event.php)

This is likely due to trying to pull a view to a user that isn't allowed to see it. Can you restrict access to those views to only the user and admin user so that other users can't see the views?

If that isn't the intensional effect, check the following permissions:

views permission (in the views settings)
CiviCRM permissions (in People > Permissions on the Drupal side)
block permissions (in the block settings)
permissions on any custom fields that the view uses (in Drupal or in CiviCRM profiles)


What I did to fix:

My php path was wrong. Should have been:

/usr/local/bin/php -q /home/acct123/public_html/wp-content/plugins/civicrm/civicrm/bin/cli.php -j -s mydomain.org -u user -p password -e Job -a process_mailing

Then I created a new wordpress role using a role plugin, "civimailrole" with the only privilege "Access CiviMail".
Then created new wordpress user "civimailusr" and assigned only the role "civimailrole".
Used the new user and password in the command for CPanel cron job editor.
Sent test mailing to myself, worked.

I would appreciate any comments on any security issues for this setup.


Weight Threshold error when creating a Deduplication Rule

This has been fixed and will be part of next 5.36 release this week.
You can either wait for the never version release or apply patch from here.
HTH
Pradeep


Can I change settings for a custom field set for participants without losing any data?

Yes, you are safe to change the Custom field type to any. There won't be any data loss. To be on safer side please take backup of DB and try.


Inbound email formatting differs in Activities compared to CiviCase

This bug has been fixed in RC 4.7.31 -> https://github.com/civicrm/civicrm-core/pull/11661


Ugh. This kind of bug is really hard to diagnose. Good call on noticing that memcache caches this behavior.

Are you on some kind of host with really aggressive caching by default? WPEngine, for example, has caused big problems.

If not, you should report this on issues.civicrm.org. My hunch is that caching/retrieval of the query for visiting the contact summary happens before the ACLs for custom fields are checked.

You may be able to more reliably test this by creating a user not in Role 1 and logging in as them.  I'd be curious if one or both of the following happen:
 - visiting the contact as the non-privileged user causes the privileged user to not see the fields the next time
 - visiting the contact as the privileged user causes the non-privileged user to see the fields the next time (if so, a bad security problem)


Create a user and associate it with an individual of an organization

If you set up a Contribution page to require 'on behalf of organisation', and include a Profile on the page that is set to 'require user creation' then the outcome is that John fills in the form, creates a contact record and a user record for himself, creates an organisation record, is linked to this as a current employer with permissions to edit that record.

If you want to create the individual and organisation contacts prior to him going to the form, ie at the backend, then you will need to eg, create the user and the individual via the 'create mode' of a Profile, then send him a link to login, or an email with a checksum so he can visit the page and have it prefilled.


CiviCRM 4.5.8 - Bounce Fetcher - Max Line Length Exceeded

This issue has been fixed by Zimbra, the email application we use. Can CiviCRM be adjusted to deal with this issue or is it purely on the IMAP server side? Would using POP3 have a different effect?

Their solution is with a caveat that has a drastic effect at the enterprise level:

  The issue stems from the bug reported at -
  https://bugzilla.zimbra.com/show_bug.cgi?id=73266

  Pasting an internal comment from the bug, which help explains the
  issue  --- This goes back to the fix for bug 63644. There are two
  limits at play zimbraImapMaxRequestSize and zimbraMtaMaxMessageSize.
  The latter is used for all literals, regardless of command. Due to the
  way literals are processed there isn't a really clean way to use
  zimbraImapMaxRequestSize for some literals and allow larger literals
  commands such as APPEND where we really want to allow huge literals;
  at least without a big rewrite that is too much for 8.0 at this stage.

  Staff, for the purposes of the test can you also set
  zimbraMtaMaxMessageSize to a really small value (say 5). I think the
  main purpose of those two limits is to protect against buffer
  overflow; so as long as we have some limitations for all commands that
  should be safe enough for now.

  The downside of disabling NIO is that you loose out on the performance
  improvement that NIO offer - http://wiki.zimbra.com/wiki/IMAP_NIO :
  > NIO implementation helps reduce the mailboxd memory footprint with a
  small CPU overhead. NIO eliminates the need of 1 (IMAP
  connection)-to-1 (server thread) mapping and helps reduce the memory
  footprint of the ZCS server. It is useful when there are many
  concurrent IMAP users. The exact benefit depends on the number of IMAP
  users/server and number of live connections/users.

  > The saving is linear to the number of active IMAP connections that are
  in a single mailbox server.

  > Example for 10,000 concurrent IMAP accounts:

  > With NIO: If there are 10,000 IMAP accounts, each of the IMAP accounts
  has an IMAP client which maintains 3 to 4 connections. There are at
  most 100 to 200 Java threads required in the mailboxd process to
  handle requests from those clients. If one thread uses 256k memory, it
  uses 25 to 50MB Java memory.

  > Regarding the CPU and depending on the load, the overhead usage can
  range from 0 to 20%. Since ZCS is not CPU bounded, the CPU increase
  should not be a significant factor to impact the client side response
  time.
  *>
  Without NIO: If there are 10,000 IMAP accounts, each of the IMAP
  accounts has an IMAP client which maintains 3 to 4 connections. There
  are 10,000*3 or 10,000*4 Java threads required in the mailboxd process
  to handle requests from those clients. If one thread uses 256k memory,
  it uses 7,500MB to 10,000MB of Java memory.*


Do I need to sanitize quickform inputs in a extension?

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


View records by date added - not activity date/date received

Since i found the answer - I might as well answer it.

Turn on Detailed Logging at Adminisiter - System Settings - Misc

When thats done - go to reports, contact logging report (now available when logging is turned on) and view results - you can filter for contributions, who entered the contibution (altered by), and other options. Customize to your liking and save as a copy so you can easily access the customized report.

After time - this report can get pretty resource heavy - but it may be worth it to you - like it is for me.  Note: this will not work for past activities - only activities since detailed logging was turned on.


How can I add an additional email id for "work" through API?

Here is an example for creating a new email on an existing contact. Note that the default "Work" is location_type_id 2:

  $params = array(
    'contact_id' => 99,
    'location_type_id' => 2,
    'email' => 'myemail@work.com'

  try{
    $result = civicrm_api3('Email', 'create', $params);
  }
  catch (CiviCRM_API3_Exception $e) {
    // Handle error here.
    $errorMessage = $e->getMessage();
    $errorCode = $e->getErrorCode();
    $errorData = $e->getExtraParams();
    return array(
      'error' => $errorMessage,
      'error_code' => $errorCode,
      'error_data' => $errorData,
    );
  }


How can you set webform to create a new relationship rather than update an expired relationship when the relationship type and person is the same?

This has been resolved in https://github.com/colemanw/webform_civicrm/pull/75

This PR provides a field on the Additional options tab under CiviCRM on your webform so you can set it on a per webform basis. If you check the box then if there is an existing relationship of the same type with the other contact then it will create a new relationship record with the new start date rather than updating the old one.


Events registration via webform + strict accommodation options

via Conditionals you should be able to Hide - Large Tent if number of people is less than 4


Which Extensions are you using with 4.7 which do not yet state they have a 4.7 release

There are two major hurdles preventing my extensions from working:

a) settings storage has changed. Unlike many extensions, mine remove their settings when uninstalled.

b) cj being removed in 4.7 as a valid JS format. My extensions need (in theory) to work on 4.4 and I don't think that allows CRM.$

In short, I'm not convinced that they can be made to work without splitting the codebase along versions somehow.


I'd suspect you didn't actually update CiviCRM, as far as CiviCRM is concerned.

Perhaps the old code is still kicking around and accessible to your CMS (e.g. perhaps you left it in, maybe renamed?).
Perhaps you have a very aggressive opcache that hasn't recognized the new code yet.
Perhaps you didn't install the new CiviCRM codebase that you thought you did (I've done that before often enough ...).


Take a look at petitions. I have accomplished something similar using a petition. The documentation is here: https://docs.civicrm.org/user/en/latest/petition/what-is-civipetition/

Hope this helps


IATS can retry failed donations 7 days after the failure?

The retry attempt on REJ response is dependent on the type of failure. Card Reported Lost or Stolen e.g. will be bumped to next month - whereas other failures will attempt next day. Note that you can always catchup or hit Process (if using iATS Legacy) after e.g. updating a Lost or Stolen card so you don't need to wait until next month to capture the monies.


Why is the clear option missing on a custom field with radio options?

The difference is in the definition. The color field has the Options Per Line set. This has as a side-effect that it disables the clear box (and the change options wrench). Clearing this field makes the clear option return.


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


Multiple branch/chapter management with various access level of information

You should use the CiviCRM Multisite with the Multisite Permissioning extension for this, and give each organization their own domain.  Within the domain, you can use WordPress roles and/or ACLs to get the various intra-domain roles.

Note that this is NOT a newbie task - multisite CiviCRM is an advanced topic.  Consider hiring outside assistance!


All My activities show for other person name

The Problem

When you are logged in to CiviCRM, ALL public-facing pages (event registration, contributions, etc.) will assume that you're the logged-in person.  There's a warning on the page with a link to let you register/contribute as someone else (see screenshot below).

Preventing this

All registrations/contributions should be added via the back-office screens, not public screens.  If you need a public screen, use the link circled below.

Furthermore, the excellent No Overwrite extension should be installed wherever a) it's possible that someone might overwrite another record, and b) you don't need to permit visitors to overwrite their name during registration/contribution.

Fixing After it's Happened

This must be fixed by hand.

Figure out all the information on the shared contact that belongs to the new person.  You can figure this out by looking at the public-facing page.  Any fields on that page are most likely overwritten.
Put the fields (name, etc.) back the way they were before the bad transaction.  If you're not sure, you may want to load a backup of your database on to a test server to compare side-by-side.
Create a new record (if necessary) for the new contact and populate it with their info.
Additionally, this record will have one or more contribution/membership/participant/activity records associated with the transaction.
If you have back-end access to the database, change the contribution/membership/participant/activity records so the contact_id is changed to the new contact.
If you don't have back-end access, you'll need to delete the transaction and do it again (don't forget to refund the money before charging again, if applicable).
If the contact was supposed to be added to a group based on a profile in the page, don't forget to add them (and potentially remove it from the mixed contact).


There are definitely folks using Aegir with Drupal 8/CiviCRM, and more using Drupal 7/CiviCRM.  You can connect with them on https://chat.civicrm.org in the ~sysadmin channel.


I would like to categorize the Contribution pages

Welcome!  Tags and Groups are concepts that apply to Contacts, not Contribution Pages.  It depends what you want to do with the categorization, but Campaigns may be useful.

If you don't see Campaigns in the top menu, you may need to enable the CiviCampaigns component at Administer > System Settings > Components


Is this a bug, or a feature? Redirect on contribution landing page triggering while editing

Looking at the demo site, you are inserting JavaScript directly into the thank-you message:

Thanks for supporting our organization with your membership. You can learn more about membership benefits from our members only page.

CKEditor renders the whole thing when the tab is loaded or the field edited. This causes the JS to run, which fires the redirect. It's technically a feature that CKEditor allows us to enter JavaScript and executes it for us, but I'd never recommend doing this. It will become a huge pain to troubleshoot later, when someone other than you goes to edit the thank-you email receipt and it keeps kicking them to a survey page. I recommend moving your redirect into a template override or an extension, so that it only loads when the user gets to the actual thank-you page.


Custom field group weight order on contact summary page?

The 'order' only controls a field set in respect of other Custom Field sets, it does not relate to Core field sets that show on Summary.

Eg on demo I just made a new field set for Contact. It showed to the right of Constituent Information.

I then edited the order to push my new set to the 'top' and it then showed on the left which Constituent Information then showed on the right.


How to make a Participant Listing menu link in Joomla

Aaagh - got it. I had done everything right - just my only events were in the past, and hence none showed in the selector.


I worked it out! Many of my contacts weren't given a country (must have been forgotten in a profile). I checked what the difference was between the handful that were working and the lots which weren't and spotted the missing country - as soon asI updated the contacts that were missing a country it started finding the longitude and latitude. Thanks for the help!


Setting up CiviCRM with Multisite Wordpress

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


What is the difference between civicrm-drupal/tree/8.x-master and civicrm-drupal-8?

The history of the branches started to diverge around Apr, 2018, and there's a comment on May 1 about creating a separate repo (https://github.com/civicrm/civicrm-drupal/pull/523#issuecomment-385612657):

  To facilitate distribution via composer, the Civi-D8 code is being migrated to a new repository with a slightly different branch naming convention (ie civicrm-drupal@8.x-master becomes civicrm-drupal-8@master).

So at the moment for drupal 8 the more current code to use for the drupal module part is at https://github.com/civicrm/civicrm-drupal-8.


How to debug a recurring subscription that is not updating membership

civicrm_system_log contains records of all the IPNs that Civi gets.  See if it's present there.
PayPal IPNs log quite a bit of data in the CiviCRM log (in the ConfigAndLog directory), even on success.  Find the log entry and look for errors.
You can replay IPNs on CiviCRM 4.5+ using the "notificationlog" extension: Is it possible to do an IPN replay?
In some edge cases, it's worth checking your web server logs to correlate the call to extern/ipn.php with PayPal - I've seen a case where PayPal reported success on delivering the IPN - but it was to the wrong site.
You can resend IPNs from PayPal for a certain number of days after the original: https://hq.palantetech.coop/projects/commons/wiki/PayPal#Resending-an-IPN


Submit redirects to Home page, DB Error: syntax error

It was a redirect issue.  Not all domains were redirecting to the domain that civi had listed as its base domain.  example.com needed to redirect to www.example.com for instance.


Importing Notes with Privacy / Privacy level for Notes

You might want to check out the API Import extension which adds a lot more options than the Civi Import Wizard


They guys at VedaConsulting developed a great extension that integrates Woocommerce with CiviCRM, no sure if is what you are looking for.

You can find it in their github repository


How to assign a Contribution to a different contact or otherwise have the receipt go to a different contact

A long time after the question was asked ... but see https://civicrm.org/extensions/move-contribution


Migrating IPN's from Ubercart to Civicrm, OR syncing membership payments from Ubercart to membersips/contributions in Civi

I've been trying to reverse engineer this problem also, and here's my partial answer so far:

It seems like the IPN is a post back to a url specified in the initial request. I don't see any way to change that postback url for an existing recurring contribution.
The Ubercart postback url looks like  /uc_recurring_hosted/paypal/ipn/<id>
The CiviCRM postback url looks like
<path to civicrm module directory>/civicrm/extern/ipn.php

So .. part one is to set up an apache rewrite rule to redirect that POST to the civicrm one.

Having done that, the next trick will be for civicrm to actually handle that IPN - to do that, you'd need some records in civicrm (i.e. the contribution_recur table) that allow civicrm to handle the ipn.

If you inspect a successful Paypal recurring contribution in CiviCRM, it should give you enough clues about what you need to add for the 'migrated' recurring contribution.

Of course, this will only work if the contents of the POST are not specific to ubercart vs. civicrm. The fact that the ubercart postback includes an id, but the civicrm doesn't is a little bit of a flag, but we'll have to see ...


No Gift Option "Pre selected" Need to fix this please

It looks like you've got some JavaScript errors.  That's going to break all your JavaScript, including the premium enable/disable script.  See if this post on troubleshooting JavaScript for CiviCRM can help you?


I discovered I had an issue with Joomla's database.  Here is the answer I found:
The fix is easy:

Enter your Joomla site's backend
Select from the admin menu: Extensions -> Manage -> Database
Click on the FIX button. You may find that some other updates need to be done to bring the database up to 3.5.
Head to Global Configuration, and turn the site 'off' before this next step to discourage any users for a while.
Then, as mentioned above, head to phpMyAdmin and delete all the entries in the xxxxx_sessions table.
Head to the backend and turn the site back on.

http://forum.joomla.org/viewtopic.php?f=710&t=913838


What is the cause of Error: Call to undefined function civicrmVersion() in sparkpost_civicrm_check()

I found this on the github issue list: https://github.com/cividesk/com.cividesk.email.sparkpost/pull/58/commits/69a0bdb17bb520334da7f472a2d7670b44da8071

Applied the commit and it has resolved the problem.


You have to set the available countries in Administer>Localization>Language and Currency.


Membership doesn't expire for short periods of membership

Your revised order would give them a month of Grace after the one week trial which may not be what you want either.

As per petednz's comment, one set of status rules shared between multiple membership types is limiting.

You could use Status Override to force Expired at the end of the one week membership, possibly with the 'Override until Selected Date' option.


Can one change the order of Groups shown on a profile?

To extend on peterdnz answer:

On drupal, you can install webform and webform_civicrm modules and build the form you want.

Once you have enabled civicrm on that form, you can choose the various fields existing in civicrm (first or last name, email... and groups)

For the list of groups, you can then chose which one(s) you want to display and in which order. You can even change the name of each group (on that form) without having to change the name of the group, so you can use shortcuts as you might call the group differently within the team and with your visitors.

It's fairly intuitive once you get into the logic of having to take the fields as available in civicrm and add them to the form (conceptually similar to profiles, but the interface is IMO clearer)


Another CRON headache: fwrite() expects parameter 1 to be resource, string given in … /WP_CLI/Loggers/Base.php

This one may have been something as simple as a bad username in my CRON script. I say may have been because scheduled jobs are running again, but not consistently. It seems that they run automatically whenever I'm logged into SHELL, but not when I'm logged out.

More to the point of this question, I'd been successfully using an email address as the username in the CRON script. This worked for about three days. When I changed the email address to the WP username, it started working again -- but only (I think) until logged out of SHELL. Currently I'm testing to verify a causal relationship, and if one exists, I'll post a new question.


Try under Administer > Communications > Message Templates. From there you can look in "System Workflow Messages" for the receipt templates.

More about templates is in the docs.