There have been a few questions on this site relating to:

CiviCRM not displaying pages under certain WordPress themes, or
CiviCRM showing only CiviCRM content - without the theme!

In particular I'd recommend checking out this question which, while it describes different symptoms to what you're reporting, may help point you in the right direction.

There is also a question on which WordPress themes are thought to work well.

My suggestion would be to try other "stock" WordPress themes first, and see if the page contents start appearing. If so, then you have a good reference point to analyse the problem. If not, then you might be looking at a CiviCRM bug.

Twenty Fourteen theme is a "core" (if older?) Wordpress theme that CiviCRM is likely to have been tested with. Other WordPress plugins might be a factor still, so if you have the same issue with all themes then look into the possibility that a plugin is interfering.

Some other questions which seem similar or related to issues with CiviCRM in WordPress themes:

The contribution payment verification page has lost the site theme styling
Why does CiviCRM render a validation failure without the Wordpress theme?
CiviMail Unsubscribe link goes to an empty Wordpress page
Wordpress Theme on Contribution pages (maybe)


to CRM_Core_BAO_CustomGroup::mapTableName
I had to add this:

case 'Lead':
    return 'civicrm_lead';

after that I'm able to add custom fields for my custom entity.

so steps to add custom data for custom entity you need these things:
Add entity to this group cg_extend_objects
and then map type to table here: CRM_Core_BAO_CustomGroup::mapTableName


Fatal error: Uncaught CRM_Core_Exception: [0: Transaction integrity error: Expected to find active frame

I was able to narrow this down to the Member ID extension. Disabled that and the DB Error resolved it's self. ONE member is unable to renew at this time, but I can process manually


How do you approach "things that you would use Drupal views for" in WordPress?

Interesting, we (as in CiviCooP) are on the same quest. We will do a work-together on 9 November and I expect one of the projects coming out of that to develop a View-type of Wordpress plugin. Want to join us if we are going to do this in a sprint?


Accessing fields/data from a lookup field

I'm not sure I understood exactly what you try to access, but pretty much every entity in civicrm is accessible via an API, and you can easily use it from javascript.

https://docs.civicrm.org/dev/en/latest/api/interfaces/

you can use the api explorer and experiment, once you have succeeded fetching the data, you can copy paste the generated javascript code and add it in your own extension, or wherever you want to put your custom code.


Competing CiviDiscount Automatic Discounts

I would suspect that CiviDiscount is taking the first available discount applicable for the specific event and ignoring the second (since only one can be used).  Have you tried removing this particular event from the list of allowed events for the 10% discount to see whether the $5 discount gets applied?


Drupal 8 version of CiviVRM Membership Roles Sync?

There is a alpha version for d8(https://www.drupal.org/project/civicrm_member_roles) which seems to be working for me.


I've managed to solve problems like this by generating custom activities, and then creating scheduled reminders which trigger on these activities.  This is better than using sendmail directly, because the email more easily managed from the front end.  For more information on automated reminders, see the docs.

For generating activities on forms submits, you could use hook_civicrm_postProcess to trap the form submit.  For generating activities on new contact creation, you could use hook_civicrm_post.  For more information on hooks, see the docs.

From within the hooks, you can create new activities like so:

civicrm_api3('Activity', 'create', array(
    'source_contact_id' => $id,
    'activity_type_id' => $activity_type_id,
    'subject' => "Participant $id Status Changed to $pstatus",
    'status_id' => 2,
    'assignee_id' => $member_org_poc_id,
    'details' => "Participant #{$id} Status Changed to $pstatus",
));


How should I add CiviCRM contact fields to Drupal node submit / comment submit forms?

I'd try using civicrm_entity with entityreference.


Removing empty fields from event registration templates

If you want to remove them when they are empty you will have to create a customization using the CiviCRM hooks. If you want to remove them from the email and do not really care about the data in them, you could contemplate disabling the custom fields?


Use Drupal views to generate contact Reports in Civicrm

If you prefer a solution which is editable via a web GUI, then Drupal Views are a great flexible approach. We use them extensively. You may hit the occasional limitation (either a "Views-ism" or a lack of support for some minor feature) but that's rare. If you are comfortable with Views, you'll be right at home :)

If you prefer writing SQL and are comfortable with PHP, a CiviCRM Report is a solution which offers you a lot of customisation, and building extensions is much easier now with civix.


What Permission to view a user's own Profile/Dashboard

Dashboard & Permissions

If you want to give the user ability to see information on themself, the permission seems to be CiviCRM: access Contact Dashboard. (I expected CiviCRM: view my contact to be a requirement also, but it doesn't seem to be necessary for a contact to view their own dashboard.)

If you also want to give the ability to edit the logged in user via the contact dashboard, the permission is CiviCRM: edit my contact.

Permission to access to other CiviCRM components may dictate which Dashboard elements appear on the user's dashboard.

Here's CiviCRM's documentation on permissions.


CiviCRM and PayPal Pro's Transparent Redirect

So far there is some support for transparent redirect in the Omnipay extension but not in the core codebase, as it requires an extra form in the process.

It's likely that at some point Omnipay will ship with core - so developing it in this context is fine. However, although there is an Omnipay library for Paypal its not currently in the extension


Problem with upgrade from 4.5.5 in drupal

The problem overcomes when deactivated AT Commerce 7.x-3.2 as the enabled theme. Then buttons and menus worked. Upgrade was successful finally.


Event registration with participant approval: missing e-mail notification when rejected

I don't know of any magic that happens if you use the "Rejected" status.  I think it's probably no different than if you created "Flaky" or "In absentia" as statuses: most participant statuses are just there for you to keep track of attendees and cause no special behavior.

Consequently, CiviCRM won't really do anything different whether you are saying someone is "rejected" versus "attended" or "no show" or whatever.  In particular, there is no "rejection notice" email template in the System Workflow Templates that would be triggered.  (In contrast, there is a "cancellation notice" for canceled registrations.)

Unfortunately, that means that the default registration email is what would automatically go out, just as if you had approved the registration.

I would suggest that you leave the box unchecked and manually send an email to the rejected applicant(s) explaining the situation.  I suspect that the reason there is no "rejection notice" template is that few organizations would want to send out generic, antiseptic notices to the effect of

Your registration for the Rain-forest Cup has been rejected.

Sending an email manually would let you be cordial and detailed.  You could send the same message to everyone you cancel (all at once, and they'll receive individual messages), or you could be as specific as you'd like for each rejected participant.

As for the different templates, here goes:

Events - Pending Registration Expiration Notice: if you run the scheduled job to process pending registrations, and the pending participant expiration field is set on an event, this will let people know they've been dropped by the scheduled job.
Events - Receipt only: this is what you get if the site has the event registration in cart mode and you register for one or more events.
Events - Registration Cancellation Notice: automatically sent when the status is "canceled" and (I'm pretty sure) the event is in the future.
Events - Registration Confirmation and Receipt (off-line): generated if you register someone as an admin and check the receipt box.
Events - Registration Confirmation and Receipt (on-line): generated by regular online event registration.
Events - Registration Confirmation Invite: if you're on the waitlist, and a spot opens up, when the scheduled job to update participant statuses automatically bumps you to "pending from waitlist" status, this lets you know you're now allowed to go register.


Increase the import limit (3MB) for Contact import

The size limit that is an issue is on your webserver php configuration, usually under /etc/php5 on linux

However and by experience, importing a lot of contacts via the web interface is painful. it will time out, you will need to restart and do the mapping of columns->fields, go through the wizard, wonder where it got stuck, see that civi expects "GB" and not "UK" or whatever...

It's much better to write a simple cli script that uses the api to import them, it's going to be easier to run again if needed and way faster.

importing 1.5 million organisations is definitely something you want to do from the cli if you value your time, and care about your mental health.

check out the api explorer, it will generate you the code needed to import a contact

$result = civicrm_api3('Contact', 'create', array(
  'sequential' => 1,
  'contact_type' => "Organization",
  'organization_name' => "bla",
  'api.Address.create' => array('country' => "FR", 'city' => "Paris"),
));

wrap that with your loop reading your csv and you're good to go ;)


Outlook "Failed Fraud Detection" notice--only for some addresses from same domain

Email delivery can be a tricky business and there can be many reasons why this is happening.

To diagnose, I use https://www.mail-tester.com/

It will give you a score out of 10 and let you know where you can improve, giving you details of SPF and DKIM records which may be causing issues with delivery.

You can just put the testing email provided by Mail Tester in the same place you put any email to send a test message in CiviMail. I'd recommend changing the from address on different tests and see how the score changes. Based on what you described, I would expect some feedback about your mail records.


I had verified by running php -v (after shelling in) that (cli) was supposedly enabled but I could not submit a cron job using wp-cli.  I tried using curl, but got "Protocol http or https not supported or disabled in libcurl".  I didn't fare well with easyCron - I felt uneasy supplying my pswd there; but after seeing jobs tagged with 200 ('succeeded') in logs, my installation didn't reflect that.  One important bit of information - this site isn't live yet, so I am pointing to it via my Hosts file. But I have to verify that stuff works BEFORE go-live.
So, from where I stand, using the URL method seemed to be the one workable method.
(also, I could run it locally and debug it!)


Automated Messages - Welcome message not working

To clarify, there are a few features you are mentioning that work as follows:

Notification of a profile form submission is managed in the Advanced Settings of the profile (reached by clicking on the Settings hyperlink to the right-hand side of the profile) - typically this would be the email of someone on staff/responsible for follow up:

You ask how to disable the option of automated emails being sent in conjunction with the headers and footers of mass email - but I think you meant to ask whether it is possible to send an automated message after profile submission to the person who is submitting the profile (please correct me if I'm wrong), but if I'm right, there are two ways to go about this:

Enable the double opt-in process feature that sends a very generic email asking the contact to confirm their subscription. You can read more about it HERE.
If you want to send a warm and fuzzy welcome message, then you could accomplish this with the use of a handy extension called CiviRules - if you don't have this extension, have your system admin install it - once it is enabled, you would first create your welcome message template(s), then configure the rule as follows:

Trigger = "Contact is Added to Group"
Condition = "Contact (not) in group" > Save
On the next screen of the Condition, leave the default of "In one of selected" and click to highlight the group(s) of interest (these would be your mailing groups as configured in the profile - if you want to send a different email to each group, then you'll need to create a separate rule for each group)
Action = "Send email" > Save
On the next screen of the email, there are detailed instructions at the top of the screen - the default behavior is that the email is sent to the primary email address of the contact who is submitting the profile (which is what you want), so don't toggle the "Send to Alternative Email Address" option
Test the rule(s) out by submitting the profile and confirming that you receive a welcome message

Note:
You often have to save to get to the next step of the configuration in CiviRules, so when in doubt, click the Save button and see what's on the next screen :-)

Hope this helps!


Recommended set up for Individuals -> Member of Organisation -> State Governing Body

It took me a minute to get my head around this because I'm not sure what a "band" is in your context - I haven't seen the word used that way before.  However, I realized that I could answer your questions regardless.

Question 1:  Bands should be recorded as organizations - possibly as an organization subtype, but if they're the primary type of organization you track, that may be unnecessary.  The reason to track them as organizations is...

Question 2:  This allows you to use CiviMember to track memberships for individuals based on whether the band is in good standing.  You're correct to create a relationship between individual and band.  Now - when defining membership types (Administer menu > CiviMember > Membership Types), you must set the "Relationship Type" to match the relationship type you used to connect the individuals to the bands.  This will automatically extend a band's membership to an individual.

Question 3: I would actually argue that if you need to track both type and date, a new activity type "Award" is most appropriate.  Groups and tags won't let you record the date the award was given.  Custom fields would, but you could only issue one award per individual unless you used multi-record custom fields, which are awkward and best avoided.  However, activities actually fits quite nicely and will report well.


Civimember: token for membership end date not working

I'll call this an answer, only because it worked. I discovered this link after googling around. civicrm.org/extensions/nzcofuzioncivitoken
After installing the extension, my Expiration Template now contains:

  Your membership is paid thru: {latestcurrentmembership.allend_date}

  Member since: {latestcurrentmembership.alljoin_date}

Since this seems a practical necessity for Membership-related Scheduled Reminders, I updated the documentation for Membership > Renewals to point to this extension for others who wish to associate membership information to the contact in the reminder.


It's not the easiest to work with, but you could do this with the Profile Conditionals extension.


I think that this is simply not covered. You can read more related threads on SE question How to create a contribution or event report that indicates amount of payment and balance owed and at the old forum on Event Income Report Misleading - need to look at actual contributions, not fees.

How can we get reports with real event payment status and no expected incomes? This is a very common request from our users that we have yet to respond.


How to set read only field in Drupal CiviCRM

Try $element->updateAttributes(array('readonly'=>true));

The difference between readonly and disabled is a common thing with HTML and forms.

See for example https://stackoverflow.com/questions/7730695/whats-the-difference-between-disabled-disabled-and-readonly-readonly-for-ht


Crons are running but system status page says otherwise

You do not need to have a separate cronjob for each job: on the admin interface, set the frequency for each job you want to (nightly is good for most of them, but the one that process the mailing and handle the bounces are better run hourly or more frequently)

And then if you wget without the "job=cleanup" it will automatically try to process all the ones that you have enabled... and should properly log that they were processed


Cron is a operating system level function, which may be available for you to manage in your host panel of your server.  It is basically a scheduler that can run programs on regular, scheduled times.... like every 10 minutes.

The first thing to do is to see if other scheduled jobs are running via cron.  Go to Administer | System Settings | Scheduled Jobs.  On the resulting page is a list of all the possible jobs that might run via cron.  Note the column "Last Run"... if cron is running hopefully you will see a recent date/time shown in here.

If cron is running, then find the scheduled job entitled, "Send Scheduled Mailings".  This is the job that actually will send your CiviMail job out.  Make sure it is enabled.  If not, enable it and see if things run.

If cron is not running, your best bet is to contact with your hosting company to have them check for you.  Refer to the CiviCRM documenation for help in setting it up:  http://wiki.civicrm.org/confluence/display/CRMDOC/Managing+Scheduled+Jobs


How to add a 'Confirm Email Address' to an event registration form

If you’re on Drupal create your event registration with webform_civicrm module and you can do just that

Here’s an example:


appended &hideSearch=1 and that took care of it. Modified the css for the cart to width 100%.


profile email notifications: can CiviCRM indicate what information has changed?

I think what you want is Logging.

In the Civi menu, go to Administer > System Settings > Misc (Undelete, PDFs, Limits, Logging, Captcha, etc.)

Enable logging, and from then on all changes to contact records will be recorded. You can view them by visiting the "Change Log" tab on the contact summary screen.


Setting up a view to list the current user's activity details

have a look at this one. Not sure it has the Source v Target how you want it but it should provide an example of how to ensure the logged in User sees 'their' Activities. Good luck

In summary.

Create an Activities based View
Set the Relationship up in Views to join the relevant type of Contact to the Activity
Add another relationship to join that Contact to their drupal user.
Add a filter that sets 'current user IS Active) (or similar drupal description of the filter) and that Filter will use the Relationship you created above and mean it checks 'who is logged in' and then server up the Activities they are the Target of (or whatever Activity Contact type you need)


Thanks for reporting this and describing it so clearly. I have reproduced this problem on the latest version of CiviCRM, though in my testing I found the problem to be limited to editing the label of existing contact types (adding new contact types work okay in my testing).

Bug

This looks like a bug to me. I would suggest you take this a step further by filing a bug report. You can use the text you wrote already and even link to this page too.

Work-around

In the mean time, if you're still in the process of configuring CiviCRM (and haven't yet created contacts with your desired sub-types), you can delete those problematic sub-types and create new sub-types for "Member", "Intern", and "Staff".


ContributionDashboard correct amount not equal CiviReport

I found that the donor had two home phone numbers in her contact info. Removing the second home phone, resulted in the amount not being doubled.


404 on link to edit contact with contact hash

I tend to use this for my instructions on adding tokens - which in the case of joomla says the url construction should be like

Joomla!: http://www.myorganization.org/index.php?option=com_civicrm&task=civicrm/profile/edit&reset=1&gid=N&{contact.checksum}&id={contact.contact_id}


You can use api 4 if you want to use as the name
$contacts = civicrm_api4('Contact', 'get', [
  'select' => [
    'constituent_information.Most_Important_Issue',
  ],
  'where' => [
    ['id', '=', 123],
  ],
]);


CiviCRM Profile Forms: Label and TextBox on the same line

You can add some CSS to your theme to do this; use Firefox Firebug / Firefox Developer Edition or Chrome's Developer Tools to inspect the html and find the class you need to edit - to float the elements side by side.


Entity Relationship Between Grant and Case

If you are using Drupal as your CMS then one option would be to set-up a webform that simultaneously opens a case and a grant (yes, webforms can do both at once). In that case the webform submission itself could serve as the link between the two, or you could make a more explicit link via custom fields.


Is there a way to easily locate Profile entries?

Profile don't really work like that.  They are just a way to view, enter and/or change data.  Once submitted, the data is put into the database and the profile zeroed out, so to speak.  By default no record is kept of when a specific profile was used.

Now having said that, there can be ways to get at the data.  If the data changes something on the contact record than you can look at the last modified date on the contact record (under advanced search, change log).  Granted if someone changes something via the standard form you'll get those as well.

You can add a custom field or fields with a default name for the profile so every time that profile gets used that custom field gets populated.  Capturing the date is doable but requires hooks or database triggers.

I think if you turn on complete logging (administer => System Settings => Misc) you can capture all changes to any table.  This options creates a lot of tables and triggers in the database so if you use it, try it in test first.

If you are using drupal then you might look at webforms.  They act like a bit more like I think you'd like. The data from each form submission is saved as a form, kind of like having a paper form of each.  There are some options for analysis, viewing the data as a table or downloading it into excel.


There is no hook or api specifically for writing to a field added to the civicrm_contact table, as that is a bad unsupported hack to core. I'd suggest changing your code to use the support provided for custom fields. That way you can be more confident that a code review of the extension won't end up preventing it from being published on civicrm.org for auto-distribution. If you still want to proceed with this bad pattern, then you might want to consider writing SQL and submitting it via db_query.


retrieve amount of male/female participants

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


can't edit Contact Details for records with a custom subtype (Error: One or more contact subtypes have been de-selected from the list ...")

It seems to be problem with data how its saved in database. The settings for Custom group might have been corrupted during upgrade or some scenario are not being handle during upgrade. To debug or fix this you will need to do some troubleshooting

Check each Individual and sub types custom groups and re save the settings for each such custom groups so that the settings are saved correctly.
Check when updating contacts does the data from all custom data gets deleted or only the subtypes
Check if Contact subtype are pre populated correctly on edit screen of contact and also Custom group fieldsets gets loaded of subtype and non subtype.
Put debug statements to check what values are loaded in smarty variables for $oldSubtypes

HTH

Pradeep


I think at some point we did do that. However, we also noticed that some smtp mailers are not very good at reporting back errors and jobs would hang / not deliver email. We put in some code to get around that and periodically check for the connection to be alive and valid

We do check the 'persist' flag in the mailer library.Check

CRM_Core_Config::getMailer

for more details


CiviCRM by default does not have an option to import groups. However, there is a third-party extension that provides a user interface to import anything through the more powerful CiviCRM API.

First, install the API CSV GUI extension:
https://civicrm.org/extensions/api-csv-import-gui

Then click the new menu item that appears and select Entity to Import: Group.

Version 1.1 includes the wrong alias path, so remember to type "civicrm/" before "csvimporter/import" or else a Page Not Found error will be thrown.

mywebsite.com/csvimporter/import

should really be...

mywebsite.com/civicrm/csvimporter/import

Alternatively, install from git: https://github.com/eileenmcnaughton/nz.co.fuzion.csvimport


As already pointed out, the created date is shown on the summary anyway - but since your question is more about using hook_civicrm_summary(), here's an simple example to add the date above the existing summary content:

function demo_civicrm_summary($contactID, &$content, &$contentPlacement) {
  // Lookup 'created_date' for the specified contact
  $dateCreated = civicrm_api3('Contact', 'getValue', array(
    'id' => $contactID,
    'return' => 'created_date',
  ));

  // Set $content to what we want to display
  // Can add html with classes for formatting ...
  $content = 'Date created: ' . $dateCreated;

  // Set $contentPlacement to specify where our content is displayed.
  // The default if we don't set this is to display below the existing summary
  $contentPlacement = CRM_Utils_Hook::SUMMARY_ABOVE;
}


Tips for synchronizing data from a local branch to the main office

If you can, try to use the same instance with ACL to limit what the branch can see (eg only their contacts).

If not, you will need to write at least one extension on the main, to automatically create the relevant contacts on the branch civi, and probably another one on the branch to update the contacts on the main.

Synchronising in both direction is tricky, and you might have situation where one is updating the other with older/incorrect data, think about who "owns" the master data and should be considered always right.

I'm aware of a few projects that helps synchronizing different civi install, but I don't think any is ready to be used the way you want - at least without coding -


Is this the correct patch for CiviCRM version 4.6 here CIVI-SA-2016-23?

Specific answer on patching CRM-19709 for 4.6.10

Go to the appropriate Github repo, civicrm-core
Select the branch you want to find a backported patch for, 4.6
Read the commit messages and find commit(s) you want to apply, 3a7376 and 675201
Append .patch to those commit URLs: 3a7376.patch, 675201.patch
Try a patch --dry-run dry-run to see if the patches apply, in the order they were applied to the 4.6 branch.
If that works (no errors), apply the patches by dropping the --dry-run option.

To perform the actual patch, I tend to use curl PATCHURL(S) | patch -p1, so the command I'd use to test if the patches will apply will be:

curl \
  https://github.com/civicrm/civicrm-core/commit/67520196442e493ea1c6ddfcd4954d0f3c7ab3fe.patch \
  https://github.com/civicrm/civicrm-core/commit/3a73760d967edab137fe8eae20fdf63967be9ecf.patch \
| patch -p1 --dry-run

Pulling patches directly from a URL saves a few steps, and means we don't end up with abcdef.patch left on disk after.

Please see also my separate answer on how to avoid getting into this situation :)


Case Details Report- Active Case Role filter

Craig - it's worse than that: creating two reports with 'Yes' & 'No' will still not give you all the cases if they don't have relationships.

See https://lab.civicrm.org/dev/report/issues/24 and the related PR.


Cannot Require Once When Loading CiviCRM After Drupal Upgrade

The $civicrm_paths['civicrm.root']['path'] should match with $civicrm_root,
can you try by updating your $civicrm_paths['civicrm.root']['path'] to
$civicrm_paths['civicrm.root']['path'] = '/var/www/networkpaao/vendor/civicrm/civicrm-core/';


CiviVolunteer Not Working After CiviCRM 5.5.2 Upgrade

Matt,

Can you perform CiviCRM cleanup cache? This usually happens when menu is not registered. You can do this by navigating to CiviCRM >> Administer >> System Settings >> Cleanup caches and reset paths and then click on cleanup cache. Or you can just hit the url with civicrm/menu/rebuild&reset=1

HTH

Pradeep


I have an uncorrect css path in the front-end html code

Are the paths in the civicrm.settings.php files each pointing to the right place?

There's one for each of front and backend:
 - /components/com_civicrm/civicrm.settings.php
 - /administrator/com_civicrm/civicrm.settings.php

If you just copy and past the paths that are set those two files (e.g. after a server migration) then you might get the error you currently have. But the paths in one file need to point to front-end Civi, and in the other point to back-end Civi (ie with /administrator appended).


Considerations when choosing a theme for Drupal 7 + CiviCRM?

One consideration is to use different themes for the front office and the back office.

The front office are the profile pages used to gather information from the constituents (or maybe you are using webforms in combination with webform_civicrm). These should be themed according to the official stylebook of your organization. They are part of the marketing strategy. It is often a limited set of screens, so almost any theme can be selected. But in these days responsive is a must, making bootstrap a good option.
The back office are standard CiviCRM screens used by your internal staff for searching and processing the data. These are complex screens, that work best with a simple, readable theme that uses the complete screen. I use adminimal for this task.

More of this discussion can be found at Theming Civi Vs Drupal.


Is there an out of the box way to put mailto: links on the emails in the contact search results?

Yes, its possible using hook_civicrm_searchColumns to rewrite the email row to include mailto


The External ID (external_identifier) is maintained in the database with a unique index, so any attempt to enter a duplicate value will take an error.

The external_identifier itself is simply a variable character string of 64 char in length (varchar(64)).  As such it cannot auto-increment.

Remember, the external_identifier is designed to contain an identifier of the contact that might originate in a separate system.  In practice, it is most common to use it when migrating from some other CRM system into CiviCRM, wherein the other systems identifier is stored in the External ID.   This can be invaluable for audit purposes.

If you are looking for an auto-incremented identifier, you should consider using the contact_id.


Can a profile submission redirect to a PDF?

How about redirecting the user to a page that has the pdf download link? Granted its not automatic...


Why do field labels in Event Registration forms not display correctly

This is specifically a problem with Bootstrap.  In its infinite wisdom, it has laid claim to the class "label" to display an element like it's a tag or label.  Unfortunately, you just have to add the following CSS, which overrides everything that Bootstrap adds:

.crm-container .label {
  display: inherit;
  padding: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  color: inherit;
  text-align: inherit;
  white-space: inherit;
  vertical-align: inherit;
  border-radius: inherit;
}

Big picture, this is a deep-seated problem with Bootstrap: the class names it uses are way too broad and common.  Other UI frameworks play much more nicely and prefix their magical classes with something that'll avoid this kind of namespace clash.


Can not access System Status & New Mailing

Check whether image Image Directory and Image Upload URL share the same path in System Setting -> Directoty & Resource URL page.

This issue of 404 has been seen on some installs. See - Status page angular load error


Basically you need to :

Download the language files from SF (it seems you have already done this)
Unpack the language-tarball in wp-content/plugins/civicrm. it creates subdirectories civicrm/i10n and civicrm/l18n with several files
Login to CiviCRM and Go to Administer » Localization » Languages, Currency, Locations
Enable Portuguese as default language

Beleza, should be working!

More details can be found here:
https://wiki.civicrm.org/confluence/display/CRMDOC/i18n+Administrator's+Guide:+Using+CiviCRM+in+your+own+language


Guidance Needed on using CiviCRM API + PayPal to Complete Membership Contribution Payment

Although I have no experience with PayPal I would expect that the payment processor makes sure the payment details get passed on, AFAIK there is no API for credit card details nor is it required! Perhaps this might give you some clues: https://docs.civicrm.org/dev/en/latest/extensions/payment-processors/


From what I can tell, css from your drupal site is majorly interfering with CiviCRM. Specifically, the interference is targeting jQuery UI, probably because you have a copy of jQuery UI loading via Drupal. Try:

Disabling the jQuery UI module (or find a way to disable it just for CiviCRM pages)
Choosing a simpler theme for CiviCRM pages, particularly one that does not bundle a copy of jQuery UI.


Documentation on the _civicrm_api3_* _spec functions

Have a look at api/v3/Generic.php's civicrm_api3_generic_getfields method


iATS recurring payments: "mismatched contact id for the customer code"

Table civicrm_iats_customer_codes does not have the correct Customer id to match what iATS has on file. This is likely because you edited or merged the customer at some point and something got messed up in the process.
You can use the iATS web portal to view what customer code (I know you said you found it already--but the next person might not know where to find it) iATS has associated with that donation. You can look under reports for the donation or in the Virtual Terminal for the customer name.
You can use the API Explorer to find what civi has for the iATS customer id in the civicrm_iatscustomer_codes table. I used the settings below to find what customer ID is currently in Civi. Locate the invoice id associated with the failed transactions. Then search for that. Click the Execute button and search for "cstc": "AXXXXXXXX",in the returned data.
WARNING; you can change your data via the API so poke around in there with caution. Generally a Get action should be safe but create, edit, or replace actions will make changes.

To fix the problem you will need to change the Customer Code for that entry in your civicrm_iats_customer_code table so it matches what iATS. iATS does not let you edit the customer code at their end so you have to do it on the civi end.


This seems to be a long-standing issue with the Stripe processor, and from what I can tell (and from what I have experienced), in some cases this extension doesn't play well with other payment processors (including the "pay later" option).

Try disabling Paypal (and Pay Later, if applicable) and then test Stripe again.

See also:
https://github.com/drastik/com.drastikbydesign.stripe/issues/76


Can I mock the CiviCRM API for unit tests?

Generally, you need to get a reference to the API kernel. (For testing, I usually build up a custom instance, but you can use Civi::service("civi_api_kernel")). Then  call registerApiProvider(...) and pass along a new provider. I usually define mock APIs using new AdhocProvider(...).

There are examples of mocking an API in api_v3_UtilsTest and CRM_Core_ManagedEntitiesTest.

(Update) I originally thought api_v3_UtilsTest was easier to read, but maybe CRM_Core_ManagedEntitiesTest is easier to generalize/imitate. Note how the setup() registers the API provider:

$this->apiKernel = \Civi::service('civi_api_kernel');
$this->adhocProvider = new \Civi\API\Provider\AdhocProvider(3, 'CustomSearch');
$this->apiKernel->registerApiProvider($this->adhocProvider);

and how testRemoveDeclaration_CleanupUnused() manipulates the CustomSearch.getrefcount API to return different values at different times, e.g.:

// Override 'getrefcount' ==> The refcount is 1
$this->adhocProvider->addAction('getrefcount', 'access CiviCRM', function ($apiRequest) {
  return civicrm_api3_create_success(array(
    array(
      'name' => 'mock',
      'type' => 'mock',
      'count' => 1,
    ),
  ));
});


Can civirules be triggered off a custom field of type date for eg Date equals Now

You are on the right track with using now in field comparision. See my Question and Answer here.

trigger: daily trigger for group members
condition: field value comparison for a date, datetime or timestamp field, where you can use any string recognized by the php function strtotime. So you should be able to use now as explained in the PHP documentation. In your case i would use "+5 days" as the comparison value.

After saving the condition the description should show Contact.custom_127 = 2016-05-19 (date when you saved the condition.)

Hint: use the latest CiviRules from Github, as support for timestamps was added a few days ago.


How to show time zone in event details page and registration confirmation page

a) This will happen automatically, assuming you want the "Event Info" page.  In fact, it's far more common for folks to ask how to disable or style this.  See my next answer for info on that.

b) will require programming knowledge.  You can write a CiviCRM extension, or hire someone to do it.  Use hook_civicrm_buildForm to look up the custom field, inject it into a PHP variable, and to load a template snippet to display it.  Maybe also a little bit of jQuery or CSS to alter its appearance/location on the page.

c) depends on whether the custom field is already loaded into the template (I'm not sure).  To check, insert {debug} into the template and send yourself a test message.  If it IS there, great!  Just copy/paste the token.

If it's not there, see this answer: How do I pass a variable to a smarty template?


What data fields are available to me at receipt template

In the message template, put this in the  section of the html format section and then send yourself a contribution receipt.

{assign_debug_info}

    {section name=vars loop=$_debug_keys}

            {ldelim}${$_debug_keys[vars]|escape:'html'}{rdelim}
            {$_debug_vals[vars]|@debug_print_var}

    {/section}

This does basically the same thing as using {debug} in regular smarty templates to see the variables in the UI.


CiviMobileAPI Extension vs APIv3 for mobile app integration

The CiviMobile API extension was developed specifically for the CiviMobile App. It's not a generic end point for other apps to use. If you were planning on using it in this way, then at the very least it would be wise to reach out to those developers to let them know that this is what you were doing, so they might re-consider implementing breaking changes.
CiviMobile is a closed source app. Open source back-end extension.
For comparison, CiviContact is open source app and open source back-end extension, https://civicrm.org/blog/justinfreeman/civicontact-for-android-and-ios-released-manage-civicrm-contacts-groups - and was developed as a platform, reference for building other CiviCRM mobile apps. Although, no one so far has taken up that challenge.
Both apps utilise a back-end extension to provide API end points for the app. That's a valid model to follow.
The question really should be whether or not CiviCRM APIv3 or CiviCRM APIv4 should be used. Given that at this point in time v4 does not have a REST end point implementation, any integration which uses REST must therefore use APIv3.
There's no problem in mixing and matching APIv3 and APIv4 calls. Since they both work fine and APIv3 is not going to be deprecated anytime soon.
Personally, I would use Flutter for any new app development. That's just my opinion - do you own research.


yes, agreed. Can you work on this and submit a PR for this against master (4.7). Should be a relatively easy fix. I'd probably recommend keeping Timestamp for the 4.7 cycle and mark it as deprecated and get rid of it in the 4.8 / 5.0 version


This has been answered before indeed: noob query : Importing contacts and membership
and here: https://docs.civicrm.org/user/en/latest/membership/manual-entry-of-memberships/
Thanks for the exchange:-)


Fixing the CiviCRM db when someone deleted "phone" from system dropdown menu options

If you have logging on then take a look in the log_ tables related to the above - you will then be able to a/ see who did what when, and b/ have a template that may help you to restore the missing options


If you use Drupal's webform (with webform civicrm to integrate civicrm), you can use the "webform conditionals" function.

Alternatively, you could create some custom javascript for the form.


add to group automatically according to custom logic

This is what Smart Groups can do for you. So instead of setting the Group in the Profile, just set up a Smart Group based on the field eg language.

Or if you need people to be added to a Group via the profile AND then set up subgroups based on language, add the primary Group X via the Profile, then create a Smart Group based on 'is added to Group X AND has preferred language = Mongolian"


Import Contribution failing, how to fix?

This patch fixed the problem. Thanks to @skherraz

https://lab.civicrm.org/dev/core/issues/1269


Event signup - email address verification?

You might want to consider using Caldera Form Wordpress plugin, then add the CIVICRM Caldera Form as well (https://github.com/mecachisenros/cf-civicrm).  This provides a more powerful way to register various forms with CIVICRM including events.  Though i have not done what you asked here on email verification as part of registration, i saw that Caldera has a free plugin with registration (Verify Email for Caldera Forms) which does what you mentioned.  I think it is worth a try.


CiviCRM Home Dashlets - making them wider, possibly span over right and left column

You can make the dashlets wider on the dashboard.

It's hard to give exact instructions because I don't know what CMS you're using - it's a good idea to post your CMS and CiviCRM version with a question for this reason - but if you're using Drupal 7, I like the Civi Bartik theme for my back end.  It makes a number of sections wider, including the dashlets.  Make sure that civicrm_theme is enabled, then go to the "Appearance" section of Drupal and set the CiviCRM back-end theme to Civi Bartik.


Could anyone review our extension for donation receipts?

Awesome

Did you look at the extension from Karin? Do you know how it compares?
https://civicrm.org/extensions/cdn-tax-receipts


CiviMail tracked URLs give "Missing input parameters" from /extern/url.php

It seems your host configuration is the problem, as it forces redirection from https to http and somehow lost the parameters in the convertion

Can you try to access the https version with the parameters?

https://mysite.org/sites/all/modules/civicrm/extern/url.php?u=193&qid=52

In any case, if you want to use https, be sure your configuration is set with https (CIVICRM_UF_BASEURL in your civicrm.settings.php), so it directly creates the right url and avoid a redirect


Integration with a swipe card check-in system?

Not exactly the same but for a similar way of automating check-in take a look at https://civicrm.org/extensions/qr-code-checkin


https://github.com/civicrm/civicrm-core/compare/4.4.20...4.4.21

Nothing that looks security-sensitive to me. Are the three 2016 flaws also present in 4.4.20/4.4.21?


Jon G, for Authorize, the answer is Yes, using Eileen's extension - see:

What should drush cvapi NotificationLog.retry sequential=1 system_log_id=XXX do?

and get the extension at:

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


What to do when a CiviCRM demo site is not working?

The demo site may have been down but is currently working.

Demo sites are periodically reset and I'm not sure if there's any downtime when that happens. In any case if CiviCRM infrastructure like demo sites is not functioning correctly, you can try the IRC and someone there may be able to assist.


What is the CiviCRM LTS Version, and should I use it or the latest stable release?

LTS stands for Long Term Stable version. It is intended for use on more conservative sites that are more concerned with having a stable CiviCRM environment than with having access to the latest features in CiviCRM. You should decide which type of site yours is.

The LTS version contains all fixes for security vulnerabilities that affect the software, and many but not all of the bug fixes that are available in the stable version. As mentioned, it does not contain the new features made available in more recent versions.

The LTS version tends to be one or two minor versions behind the latest stable version. So a little while after 4.5 was released as the latest stable version, the LTS version switched from 4.2 to 4.4, skipping 4.3. Similarly, in late 2015 likely after 4.7 came out, 4.6 became the LTS version, skipping 4.5. Now that it is April 2016, the expectation is that 4.7 could become the next Long Term Stable release after 4.6, in anticipation of significant changes in 5.0.
But the final decision on this won't likely be made until late 2016 / early 2017.

The benefits of using the LTS (long term stable) release are:

There are fewer unknown bugs in the software since it has been used extensively for a long time.
Upgrading within one release branch like 4.2 or 4.4 is less likely to require extra effort or cause problems than upgrades from 4.2 to 4.3, or 4.4 to 4.5.

Downsides to using LTS include:

Not having access to the features available in more recent versions of CiviCRM.
Not having access to extensions or releases of extensions that are only available for more recent versions of CiviCRM.
Not having access to some bug fixes that are included in more recent versions of CiviCRM (usually ones that are not important or that require a lot of work to backport).


Recurring contributions not sending emails (Stripe)

CRM-15629 produces similar symptoms with certain configurations of PayPal.  Also, please update your question with a CiviCRM version?


So a little research takes me to Totten's blog where he lays out the rational for splitting out entity definitions into seperate PHP files.

The full definition of the array format is laid out in the hook_civicrm_managed guide and an example .mgd.php file is here


How to remove CiviCRM links from Drupal user account page?

Permissions are going to be your friend here. If it's a Drupal site you can set a variety of roles with permissions to access parts of CiviCRM; ie:

CiviCRM: access Contact Dashboard
CiviCRM: access CiviCRM
CiviCRM: view my contact
CiviCRM: edit my contact

To supress the View Contact Record link, remove the edit and view my contact permissions from the relevant roles.

If you want to get more granular then you can do so within CiviCRM's ACL (Access Control) settings


Send contribution receipt when updating contribution via API

I found my own answer in this api function:

civicrm_api3('contribution', 'sendconfirmation', array('id' => $result['id']));

This triggers the confirmation email to be sent.

P.S. I wish there was something similar for the Event Participants, that seems to be quite trickier.


To address the export to excel part of the question, you can use this (well-written and maintained) extension:

https://civicrm.org/extensions/export-native-excel

But the field ordering is harder - by default, you can't change that.


Integrating CiviCRM events with Drupal Commerce?

Having spent time working with the CiviCRM Commerce module approach, the route we now recommend is using CiviCRM Entities and Drupal Rules. We don't have a package of such Rules yet as the project that was going to give us the time to do this has been deferred.


CiviCRM Navigation Menu is not displayed

I've seen a number of causes including perhaps gremlins

Permissions on the directories used by the asset builder plug in
The URL (including either http or https) in the civicrm.settings file
Cache in both Drupal and Civi
Reset directories in Civi


Blank page normally suggests a PHP error, so your error logs are a good place to start.


Event registration form does not show submit button when a 100% discount coupon is used

That looks like a bug, but I notice your CiviCRM is 4 versions behind the current one, so I'd update your CiviCRM first before doing anything else.

I have seen some similar issues in the past - when you have an on-site payment processor, there is some logic that hides the payment form when no payment is due. Perhaps in combination with an off-site processor like Paypal Standard, the hiding of the payment form turns into hiding the submit button.


The answer you're referring to says you need the Group-Based Pricing extension installed.  It also seems that the extension isn't being maintained, and folks have had to tweak it to work with modern versions of CiviCRM.  This fork seems more up-to-date.


Dequeue Backbone from theme load and load CiviCRM Backbone

Assuming the file you want to load is the one located in the CiviCRM plugin folder at 'civicrm/packages/backbone/backbone-min.js', then you'd use:

wp_enqueue_script( 'your_backbone_handle', CIVICRM_PLUGIN_URL . 'civicrm/packages/backbone/backbone-min.js', array(), CIVICRM_PLUGIN_VERSION );

See https://developer.wordpress.org/reference/functions/wp_enqueue_script/

The only slight issue with this is that the constant CIVICRM_PLUGIN_VERSION is not updated with each minor dot release (it should be) which means that you may need to manually bump this each time you upgrade CiviCRM in case it ships with a new version. Replace it with your own version numbering in that case.

Disclaimer: I'm not sure if this is the only Backbone-related file you need to enqueue. Also, this may not solve the issue with your theme but it is the method by which you should target CiviCRM's copy of Backbone :-)


Workflow approach for anonymous users, or limited roles to create events

I admire the principle of not being too ambitious in building customizations, but I worry that you'd be going through far more trouble than you'd need to.  You might consider just building a custom Drupal module that did exactly what you need.

Set up a Drupal form with all the fields that you need.  Then in the submit function, use the CiviCRM API to create the event, location, and whatever else--including leaving the event inactive.  It won't be very reuseable, but it will be more reliable and understandable than a Rube Goldberg Does Drupal sort of contraption.


Some of it is added via javascript, e.g. https://github.com/civicrm/civicrm-core/blob/5.15.2/js/crm.menubar.js#L104

But as this ticket notes the rest depends a bit on the CMS and the theme and is inconsistent:   https://lab.civicrm.org/dev/core/issues/300


DB error on listing mailing recipients. Did anybody see that before?

The issue you getting has been now fixed and will be part of 5.23 release. You can either wait for 5.23 release and upgrade CiviCRM or apply patch from here.

HTH

Pradeep


Check out Charts, Google Charts module - if not for this purpose you'll be using it for some other data displays soon!

Below is a screenshot of a View - Page of Format: Chart -> aggregating by Grant Type over a certain time period [PS - the Table is an attachment -> Format: table]. For your use case try Aggregate by your custom field containing the Colors.


Creating a custom (select) field and update option values from php

The hook you are looking for is hook_civicrm_customFieldOptions. Example from the docs:

function civitest_civicrm_customFieldOptions($fieldID, &$options, $detailedFormat = false ) {
    if ( $fieldID == 1 || $fieldID == 2 ) {
        if ( $detailedFormat ) {
            $options['fake_id_1'] = array( 'id'    => 'fake_id_1',
                                           'value' => 'XXX',
                                           'label' => 'XXX' );
            $options['fake_id_2'] = array( 'id'    => 'fake_id_2',
                                           'value' => 'YYY',
                                           'label' => 'YYY' );
        } else {
            $options['XXX'] = 'XXX';
            $options['YYY'] = 'YYY';
        }
    }
}


Need help setting up Scheduled Reminders

That depends on how you record your renewals.  The "correct" way to renew a membership doesn't create a second membership, but changes the end date on your original membership.  However, that's not workable for many organizations for a variety of reasons.

However, if you do renewals the "correct" way, then you could set your August 1st scheduled reminder to go out 1 month before the membership end date.  See screenshot.  October 1st can be one month after membership end date, and so on.


Does Email Signature extension work on CiviCRM 4.7?

Current usage is 8 - that may include some old dev/stage installs by the authors - and almost certainly are 4.5 installs by current CiviCRM users (latest stable release for that extension).


How to collect user and billing email address at same time?

At the moment contribution pages don't allow additional email addresses (they get stripped out). There is an open issue in JIRA but I believe it needs funding.


CiviMail link to view in browser gets error on mobile

I strongly suspect the reason is because of CRM-16549.  Please update to CiviCRM 4.6.4 and try again?


URGENT HELP Account Suspended This Account has been suspended

This sounds like an issue with your hosting provider rather than a problem with CiviCRM.  I would suggest that you get in touch with your hosting provider as the error message says.

If you don't know who your hosting provider is, I would suggest that you contact the person who set up CiviCRM for you.


Tags for contact in drupal view shown on separate rows

You can use the views_merge_rows module to render the Tags in to a comma separated list


How do I fix the "Incorrect Resource URL" alert?

The Resource URL lookup uses the PHP setting curl.cainfo to look up a certificate file, e.g. CACert.pem to validate the server certificate.  I found the problem went away when I added the server certificate to that file.

See Installing drupal 8 using civicrm-setup leads to "incorrect resource url" system status check errors


CRM_Mailing_BAO_Mailing - Error 500 trying to view Draft, Unscheduled, Scheduled, and Sent Mailings

I just looked at a stock install of Civi 4.7.15, and the getPublicViewUrl() method is present in <civiroot>/CRM/Mailing/BAO/Mailing.php.  So if you're getting an "undefined method" error, I would assume that your CRM_Mailing_BAO_mailing class is getting overridden.  My wild guess is you have an extension installed that isn't compatible with 4.7.

Here's what I would do:

Ensure that the file <civiroot>/CRM/Mailing/BAO/Mailing.php exists, and the line public static function getPublicViewUrl($id, $absolute = TRUE) { is present in it.  This is pretty much guaranteed unless you're doing something really wacky, but it's a good sanity check.
Look for any PHP overrides you might have.  Go to Administer menu » System Settings » Directories and locate both your "extensions" and "PHP overrides" directory.
Go into your PHP overrides directory.  Is there a subdirectory CRM/Mailing/BAO?  If so, and it has a file Mailing.php, then you need to figure out why.  The resolution should be either to remove the override, or to copy the latest version of Mailing.php into the folder and incorporate your override.  PHP overrides are difficult to maintain because they're not upgrade-safe; if you have one, I suggest finding a way to remove it.
Any of your extensions may also have a CRM/Mailing/BAO subfolder.  If so, identify if you can disable that extension.  If not, you may want to follow up, either in the comments to this answer, or with the extension author.


Would like to know how difficult customise CIVICRM ? did anyone contacted the partners ?

That's like asking how difficult it is to customise your car: it depends on multiple factors but primarily what you want to do and your skills.  If you just want to add a fluffy steering wheel cover - go right ahead, anyone can do that.  If you want go-faster stripes painting on, then you might do that yourself depending on your artistic abilities.  Tinkering (safely!) with the suspension or engine is a specialist job beyond most of us.

Many people do work with partners and contributors but they are all different so the experience of working with one doesn't tell you how that might work out with another one.  Each practitioner has their own unique set of experiences, skills and interests so you might want to talk to more than one to find someone who is a good fit for your organisation.

There is a lot of documentation around and there's no "external magic" - all the code is right there on your server, so if you or your graduates have the time, inclination and skill then they can learn. That will give them knowledge but not experience although you can benefit from the experience of others as Pete has already described. All of us started sometime from the point of knowing nothing about Civi!


Yes, we did with the Contact Form 7 API (which we created for a specific customer as you mentioned :-))

The Contact Form 7 API submits the form data with an API WpCivi Submit with a form type which links to the class that is called in CiviCRM. You can find the CiviCRM part of the customer extension we created here, hope that helps you on your way!


Error loading module file () - Wordpress

This typically happens when either a) an extension is deleted, or b) the location of the extension changes.

First, make the easy fix.  Go to Administer menu > System Settings > Cleanup Caches and Update Paths.  Press "Clear Caches", and reload the page TWICE.  Hopefully that fixes the error.  If not - check that page and make sure the paths are 100% correct.

If that doesn't work, go to Administer menu > System Settings > Manage Extensions and look for anything amiss.  Take special note of missing extensions - see if they're actually missing in the file system.

This should get you all cleaned up, or at least on the right track!


From @kakajaran's 26 November comment on veda-consulting/uk.co.vedaconsulting.payment.gocardlessdd#5, it seems at this time the extension is expected to work with recurring payments only.

I would suggest filing an issue on the project's Github to signal that you'd like support for this, then either reaching out to the extension developers directly or finding other ways to support the fix you require (eg by submitting a patch directly, or sponsoring work to make it happen).


Possible error in Contributions and Membership Details report

You don't specify the version of CiviCRM you're using? Depending on CiviCRM version, you might be seeing one of these issues -

CRM-16636 Duplicate primary addresses causes error in report (issue opened as a result of this response, see comments)
CRM-16338 Incorrect Contribution Summary Report when a contributions has multiple soft credits (<= 4.6.3)
CRM-15374 Contribution FEES are affecting Balance and Total Paid incorrectly (<= 4.5.1)
CRM-11703 Contribution and Membership Details report showing incorrect contribution amounts (<= 4.2.8)

You could search https://issues.civicrm.org/ for other issues if none of those seems like your case (you'll know if you're using soft credits, contribution fees etc).

If you are seeing the issue on a version of CiviCRM that is marked fixed above, post a message on that issue URL - you may be able to assist by providing some (anonymised) example DB data for the core team.


How to see "How often do people log in"?

Drupal Views - CiviCRM integration will let you combine Drupal data (e.g. Username, Role, Last Login) - with CiviCRM data (e.g. Source of Contact). I've trimmed the screenshots to strip out CiviCRM Sort Name, and Email address for privacy reasons.

To figure out who has logged in in the last 2 months - would then simply be a Filter on User: Last Login; If you'd like to filter by Group -> you can do that here too;

If you don't already use Views -> in CiviCRM Core -> Administer -> System Settings -> CMS Database Integration;


Communication preferences are stored against contact. You either update each contact by using the communication preferences section on edit or view screen. Or do a bulk update on N contacts using profile.

Cheerz

Pradeep


Failed to locate Mosaico graphics driver

I've just had a seemingly identical problem on upgrade to 5.13.5 (ImageMagick reported as missing when present & up to date).

Disabling Mosaico/Fleximailer/Shoreditch & then re-enabling them seemed to resolve the issue.


I found the problem.  My csv file was on a staging server that required a user name and password for access.  The error message was misleading, nothing wrong with the csv file.  Once I put the file on the server in a place that is not password protected, it worked fine.


Set Default View for Views For Display Contacts in Advanced Search Form

I guess you trying to use a profile which has Contact, Contact Type and Contact Sub Type Fields. The search preference allows you to choose profiles that have fields of contact and contact type. I have logged the issue at CRM-21655. You can apply patch to make it work or wait for 4.7.31.


Connect to Bitnami using SSH.
Find civicrm.settings.php with find . -name civicrm.settings.php.  You can probably speed things along by first navigating to apps/civicrm/htdocs.
In the file, look for the line that defines CIVICRM_DSN, which can be interpreted as follows:

    define('CIVICRM_DSN', 'mysql://user:password@host/database?new_link=true');

According to the Bitnami CiviCRM docs the port is 3006.  I assume that's correct and not a typo for "3306".


CKeditor security issue--does it impact CiviCRM and what to do?

See https://github.com/civicrm/civicrm-core/pull/20428 which will be in 5.38. But my quick read of it is that the addons affected are not installed by default.


How to configure the MIGS Omnipay gateway?

I got this to work with the following meta-data file. omnipay_Migs_TwoParty.mgd.php. Since the field in the code is merchantAccessCode I changed the label for passwords to "Merchant access code'. Both the debugger and the error message show this.

return [
 [
   'name' => 'OmniPay - MIGS',
   'entity' => 'payment_processor_type',
   'params' => array(
     'version' => 3,
     'title' => 'OmniPay - MIGS',
     'name' => 'Migs_TwoParty',
     'description' => 'Omnipay MIGS',
     // DO NOT CHANGE: Labels are used as Omnipay gateway properties.
    'user_name_label' => 'Merchant Id',
    'password_label' => 'Merchant access code',
    'signature_label' => 'Secure Hash',
    'class_name' => 'Payment_OmnipayMultiProcessor',
    'url_site_default' => 'http://unused.com',
    'url_api_default' => 'http://unused.com',
    'url_recur_default' => 'http://unused.com',
    'url_site_test_default' => 'http://unused.com',
    'url_recur_test_default' => 'http://unused.com',
    'url_api_test_default' => 'http://unused.com',
    'billing_mode' => 1,
    'payment_type' => 1,
    'is_recur' => 1,
   ),
 ]
];


Anonymous user filing out a profile unintentionally remove themselves from groups

Checkboxes are inherently a confusing html element, because when not selecting them, no value is sent (i.e. not even a null or empty placeholder value). So I can imagine that the core code that this is using is trying to handle that kind of situation from other contexts.

If that analysis is correct, then I suspect the empty box is triggering an unsubscribe, and that unsubscribe is getting merged.

To be fair, in some worlds, that might be the right answer - e.g. if that contact was authenticated when filling in the form, it would be checked, and actively unchecking it should remove the contact from the group. I'd bet you can find an issue of a description like "unsubscribing from a group via a profile not working".

Given your observations, I'd say that an anonymous contact should not be generating those unsubscribes, and if you can figure out where this code happens, it could be improved.


I've never seen anything like that done. The only thing I can think of off the top of my head:

Create the ability to purchase the package. You could do the page through a contribution page.

Create a discount code (you'd need to install the extension for discounts) that is specifically for them. Make it a 100% discount. Give it 6 uses.

Email them the code. Be sure they understand that it's specifically for them and can only be used 6 times. If they share it, then they're losing registrations they paid for.

Then they can register for an event and use the code to have it fully paid for.

This will take some manual work on your side (creating the code, sending it to them).


CiviCRM Extension not grabbing latest release

You have to turn on the automated-discovery of new releases by including the git url when you edit your extension node, or you can manually tell Civicrm.org about your new release by clicking on the 'Add CiviCRM-native release' link when viewing your extension page while logged in.


Email greeting settings for contacts without names

You can use Smarty conditionals in greetings in CiviCRM 4.5+.

So the correct pattern would be:

{capture assign=first_name}{contact.first_name}{/capture}Dear {$first_name|default:Supporter},


How can I make a custom report that displays info for three contacts based on relationships?

When starting on reporting I did a lot of debugging in my report and in the parent class to find out what was happening.

Your specific error: I strongly suspect 'relationship_type_c_civireport.label' should be 'relationship_type_id_c....' but I am not sure.

Check if there is a postProcess function in your class. If there is, it should call the parent buildQuery function to build the Query, you can check here how the query is build step by step.

Also, the select part of the query is build in the select function from $this->_columns. If you debug the values of $this->_columns you should be able to find your problem. Happy hunting! And keep going, it is hard work at first but you will get there.


Civicrm - Expense extension [unable to edit expenses]

This sounds like it might be a bug in the expenses extension. It's hitting line 121 in CRM/Expenses/Form/Expense.php but $this->_expense is a string instead of an array at that point.
It's not clear why it's a string - it gets set at line 46 - if you add something like CRM_Core_Error::debug_log_message(var_export($this->_expense, true)); either at line 48 or at line 120 and then check in the ConfigAndLog file it will tell you what it looks like.


How can I assign an External Identifier to each set in a multi-record import?

We are upgrading from CiviCRM 4.6 to 4.7.17.  The Eternal ID is now available for matching to contact records for importing multi-record custom data sets.  I just completed a test and the import worked fine and matched using the External ID.


How best to integrate CiviCRM into our WordPress website

It depends on what type of experience / skills they have.  There are a lot of Wordpress 'developers' that wouldn't be able to go fully into a web development role.

However they likely have no experience of CiviCRM so they will have to learn a new solution from scratch so there will be issues along the way.

If they are having issues they can reach out to the community for advise on how to bring it forward and resolve any issues they are having.


Need Input on Use of an Aggregation in the Data Processor Extension

Use the summary fields extension here:

https://civicrm.org/extensions/summary-fields

It will create some custom fields and calculate the totals, minimums etc. values that you are trying to generate on the fly. That way you don't have to do all those joins. Aggregation is hard.


Adding a dynamic “cover processing fees” checkbox to CiviCRM contribution form

It's pretty late to be answering this, but the Percentage Price Field extension supports something very much like this.

  This extension allows you to add an "Additional Percentage" field to
  any price set, which will automatically calculate and add an
  additional amount to a transaction, as a configurable percentage of
  other selected price set options.

  Want to ask donors to give an extra 3% to cover credit card processing
  fees? Or to give an additional 10% of their membership fee to support
  a special project?   Then you're in the right place.

  Because it's a price set field, this option will appear as a line item
  in contribution records and receipts, allow configuration of financial
  type, label, help text, and other standard price field options, and
  work equally well for contributions, memberships, events -- anywhere
  you can use a price set.

https://civicrm.org/extensions/percentage-price-field

[Disclosure: I'm the author of this extension.]


Automatic discount for membership not working

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

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

Jon-man


CiviCRM Dashboard and Menus disappear after upgrade and GoCardless extension disabling

This is because your cms.root doesn't match properly with civicrm.root variable and you might be using variables in Resource url for 'CiviCRM Resource URL'.

You need to make sure paths are correct in your system

Check the Document root path in your apache or nginx config of site.
It should match exactly with the path of $civicrm_root and template_c path in settings.php

For some cases you add below two line at the end of the file you will need to change

$civicrm_setting['URL Preferences']['userFrameworkResourceURL'] = CIVICRM_UF_BASEURL . 'sites/all/modules/civicrm/';
$civicrm_paths['civicrm.root']['url'] = CIVICRM_UF_BASEURL . 'sites/all/modules/civicrm/';


Does the Stripe extension process payments for companies based in Spain?

I don't know for sure but Mollie is a great alternative. It works with the omnipay module of CiviCRM.


How can I automate printing address labels?

It depends what you mean by "API". If it's a script you're going to run overnight you could do something like this and put it in a file, let's say labels.php:
<?php
$form = new CRM_Contact_Form_Task_Label();
// Array of contact ids - could get this from wherever.
$form->_contactIds = array(2,3,4);
$params = array(
  'label_name' => 3475,
  'location_type_id' => NULL,
  'do_not_mail' => 1,
);
$form->postProcess($params);

Then run the script with cv, e.g. cv scr --user=admin labels.php > output.pdf
Or some variation of that. There's some trickiness to capturing the output within the script if you didn't want to redirect to a file - you'd either have to duplicate a lot of code or rely on something that is internally used for unit tests and could disappear.


How can I identify the hard contributions/contributors that lead to a soft credit?

I just published an extension called Soft Credit Custom Fields.  As a side effect of what it does, it also allows you to search for soft credit type even when returning hard contributions, which should solve this issue.


Search for Individuals with Employee Relationship for Organisations with Certain Criteria

Try using existing search forms.

Search >> Advance Search

Search >> Search Builder

Other option would be to create a smart group having organization contact with specific membership type and then use advance search to search employee of with target contacts in group.

HTH
Pradeep


If you have the profile created, you are nearly there.  You need the Update Multiple Contacts search action. (In 4.6 the action is Batch update via Profile). The action has a limit of 100 contacts so you can update all your surveys in one go, but if you have more than 100 you need to do multiple passes.

In more detail:

Go to Search > Find Contacts
Select your Group in the 'in' box
Search
Scroll to the bottom, change Rows per page to 100, enter
Click the tickbox next to the Name header to select all the records on that page
In the Actions box, select 'Update Multiple Contacts'
On the next screen, select your profile
Continue
You should now have your fields editable
Note that you can copy the value in the first row to all the others by clicking the symbol in the column header

When you're done with that 100, go back to the search, go to the next page and repeat for the next 100 etc

FYI, for these purposes, the profile does not need to be marked as a listings view, or searchable or be limited to your group.  Those options are for other uses of profiles.


Show/Hide a Price Set Section based on Membership

https://civicrm.org/blog/stoob/using-only-jquery-and-civicrm-to-create-members-only-pricing

I used the technique on this page modified with something like this:

if($('#B').length){
   $('#A').hide();
}

So if an anonymous user views the form, a block prints. If that block is on the page, hide the price set option which would reveal member pricing. Its not "secure" but in our case we would just contact someone who cheated and ask them to become a member, so its almost a marketing opportunity ;)


You can add tokens and produce a PDF from that as a printable item. You will find some instructions about this in the manual's postal communication page (thanks to Allen for improving answer)


Kudos to Demerit and petednz-fuzion for helpful pointers, see below:

Demerit: Dummy SMS extension
petednz-fuzion: check your log_civicrm_option_value table for option_group_id = 35 to see who changed it

It is possible to find recipients of each mailing (even scheduled/not sent) via MySQL following these steps:

Table log_civicrm_mailing gives us our Mass SMS id
Table civicrm_mailing_recipients contains all recipients of all mailings (mass sms included) in the format:
mailing_id/contact_id/email_id/phone_id
From here we can explore each "phone_id"  record in civicrm_phone table, where we can see "phone_type_id".

And this is a funny part: all my 5 recipients have phone_type_id=2 ("Phone") while "Mobile" phone type has phone_type_id=1. So, it seems Mass SMS in my case checks if phone type is Phone, not Mobile.
Advanced Search by "Phone type=Phone" returns only 3 numbers, but it seems to be another story. Perhaps, it worth checking what exactly happens on line 227 of \CRM\Mailing\BAO\Mailing.php in this regards:
'location_filter' => CRM_Utils_SQL_Select::fragment()->where("$entityTable.phone_type_id = " . CRM_Core_PseudoConstant::getKey('CRM_Core_DAO_Phone', 'phone_type_id', 'Mobile')),


How can I add soft credits to a Recurring Contribution Series

I don't think this is currently possible, but I've recently been up to my elbows in soft credit customizations.

I think the answer is an extension that checks whether the first gift is soft credited.  If so, it should apply an identical soft credit to succeeding gifts.

I recently released the extension Soft credit Custom Fields.  You could use soft credit custom fields to further specify other options.  E.g. only soft credit the first X contributions; if the contribution amount is increased later, does the soft credit increase as well; etc.


Civicrm5.4-add a cash donation fails after update

Please cancel! I found the problem. sorry to bother


[civicrm.root] wrongly evaluated on Joomla. See: https://lab.civicrm.org/dev/joomla/issues/5

A fix for your particular issue is:
Create an override file in your Custom PHP Directory for CRM/Core/Resources.php

On Line: 738
CHANGE:

'wysisygScriptLocation' => Civi::paths()->getUrl("[civicrm.root]/js/wysiwyg/crm.ckeditor.js"),

TO:

'wysisygScriptLocation' => Civi::paths()->getUrl(Civi::settings()->get('userFrameworkResourceURL')."/js/wysiwyg/crm.ckeditor.js"),


Mailchimp extension terminology: audiences and lists

Here's what you should be seeing:

OR, if you have "Interest sync" enabled:

Words (Note that Mailchimp does not make this terribly easy to refer to as they have changed the words they use, and also because they use "group" and "grouping" interchangeably)

Mailchimp list - these are now called Audiences at Mailchimp. Nb. Mailchimp is heavily pushing people towards only having one "Audience" (List) and using the following to segment within that list.
Mailchimp [interest] grouping which is a set of...
Mailchimp groups - a list member at mailchimp can be in one or more groups within each grouping. Mailchimp's own forms can be configured to allow members to edit these themselves.
CiviCRM group - self explanatory, but just including to show the distinction between Mailchimp group and CiviCRM group!

The extension requires that you have a "membership group" in CiviCRM which will determine whether someone is subscribed/unsubscribed in the selected Mailchimp audience/list. Optionally, after this, you can sync other CiviCRM groups with mailchimp interest groups within that audience. Adding somone in CiviCRM to a group that is mapped to an interest group does not in itself add them to the list; you need to add people to the group used for membership, too.

It's not clear from your question exactly what you're trying to achieve. If you're trying to sync up an audience called Green Gazette with a CiviCRM group so that adding someone in Civi will add them in Mailchimp (and vice versa), then you should select the "Membership Sync" option, then select your list.

CiviCRM remembers which Mailchimp list/audiences and Mailchimp groups are configured by storing a unique ID from Mailchimp. If you delete that audience/group at Mailchimp that link will be broken.

If you get that error message after doing this, but you've been playing around a bit, I would advise just trying edit and saving the CiviCRM group settings again to see if it's repeatable - I know that some of those messages get added to the session at awkward times so can occasionally display at the wrong time. If you've selected a list but when you press save you always get that error, that sounds like a new bug.

  Personal note: the current mailchimp integration (link) has some limitations that I have discussed in my proposed new mailchimp sync extension. Everyone should feel free to comment (issue queue/PR) and input on my plans there.

EDIT (following your edit with screenshot)

It looks like you're seeing the CiviCRM custom field group fields in the normal CiviCRM way. This means that the .extra.tpl file is not firing; it's not loading in the mailchimp settings template file

.extra.tpl files are deprecated these days; the extension needs updating to use the Regions API. I'm not sure which version of CiviCRM you're using; it's entirely possible that they removed .extra.tpl files or somehow otherwise changed something that means the required template addition is not sourced. I'd start looking there (and also check for JS errors). Interesting that it works for new groups, though.


How can I 'or' 2 conditions using the api?

Barring some undocumented feature (which are rife in the API, so someone please correct me), I think you'll have to merge the two.  However, since you're dealing with "get" calls, it's straightforward to merge the two results.

First, you'll want to get rid of the sequential parameter; without it, you'll get arrays of values keyed by ID.  Then, you'll have a pretty simple situation:

$result = civicrm_api3('Contact', 'get', array(
  'birth_date' => array('IS NULL' => 1),
));

$result2 = civicrm_api3('Contact', 'get', array(
  'birth_date' => array('<=' => "1960-01-01"),
));

$combined = array_merge($result['values'], $result2['values']);

The result will have only one row per contact.  Although obviously there's no overlap between people with no birth date and people with birth dates prior to 1960, you could use the same principle for merging potentially overlapping groups since the array key is the ID.


Wordpress page title only fixed in 4.6.4?

On reviewing the situation in the presence of various plugins that try and change the title for SEO or Open Graph reasons, I think there is an issue with the way Civi tries to set the title. I've created at pull request on the CiviCRM WordPress plugin's repo at GitHub that should fix this.


Migration error: “The user specified as a definer does not exist”

Xavier, your answer would have worked if I had had the luxury of re-importing.
It turns out that there is a single function in the CiviCRM DB that for some reason uses a hard-coded username and password. I went in to the DB, located the "civicrm_strip_non_numeric" function and updated the username and password. Problem solved.


Hiking Club Membership and Hike Recording

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

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

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


I set up and scheduled a mailing, but it didn't send. Now what?

This has happened to me in the past for a few reasons

In one instance, my time zone was set wrong so the scheduled time had already passed, and the mailing was never triggered.
My cron jobs weren't running. A temporary fix would be to trigger the job manually in Administer > System Settings > Scheduled Jobs > Send Scheduled Mailings.
My cron job hadn't run yet. For example, I can schedule my email to go out at 1:15, but if my cron jobs run every hour it won't go out until 2:00.


Restrict users who sign up for groups from viewing all groups they have been assigned to

If you go to Contacts menu » Manage Groups, you should be able to click the Settings link next to a group.  Set the Visibility to User and User Admin Only (see screenshot).  This should suppress the visibility of the groups on profiles.


Eway recurring - Any method to record invoice reference and description?

ok - this has fixed for us and the reason was the incorrect param sent to the ProcessPayment operation. The correct way of sending the invoice params is -

$client = CRM_Core_Payment_EwayUtils::getClient($params['payment_processor_id']);
$endPoint = 'https://www.eway.com.au/gateway/managedpayment/ProcessPayment';

$paymentInfo = array(
  'man:managedCustomerID' => $params['managed_customer_id'],
  'man:amount' => $params['amount_in_cents'],
  'man:invoiceReference' => $params['invoice_id'],
  'man:invoiceDescription' => $params['description'],
);
$result = $client->call('man:ProcessPayment', $paymentInfo, '', $endPoint);

Note the correct usage of man:invoiceReference and man:invoiceDescription. It should be case-sensitive.


There are few issues reported against this validation(CRM-21624). Can you please try after applying the patch or you will need to wait for 4.7.31 release.


The post can be found here:
https://civicrm.org/blogs/chrischinchilla/using-civicrm-project-management-and-budgeting

The description how the budgeting/expense tracking is done is quite short and it only mentions that they are using negative contributions for expenses. They are also using CiviCampaign to assign the expenses to "projects".

The poster Chinchilla is describing an implementation on Drupal using drupal-views, if you are using wordpress I am trying to collect recommended plugins here: What is the recommended Wordpress equivalent for drupal-views


CiviCase Users Unable to Edit & Add Activities on Cases They've Been Assigned

To me this reads like a bug - either the description is misleading, or the permission isn't functioning. You should log this at issues.civicrm.org, including all the detail you've added here (and a link back to this page).

Your options from there are basically:
1) Wait for the core team to fix it.
2) Pay for the core team to fix it.
3) Recruit a freelancer or an agency to fix it for you.

Message me if you want me to look at this in more depth for you.


unable to upload image file when creating a message

This isn't fixing the root issue, but I tend to think the best practice here is to load media within the Wordpress Media Gallery and link to it in CiviMail. Content is best put in the CMS. That way, you can use the media for say a blog post and for CiviMail. It's more efficient.

I think some day being able for Civi to query the WP media gallery would be most desirable.


Paid event but Pricing Options can not be required but they must chose a fee

My non-code way of (almost) solving this is to include a zero price "no-selection" option such as "I not attending the full event"  or  "I have selected a different workshop" in each price field and make each price field compulsory.

My experience has been that people forget to tick anything, rather than deliberately choose not to make a selection, so forcing people to make a selection for each field has worked for us.

I should point out that I have only done it with 3 sets of price options, and I didn't get any flack about making people tick so many boxes.  I don't know how people would have reacted if they had been forced to make 6 "selections".

The "almost" in the first sentence is because each year we still got one or two out of 1000 people who chose the "no-selection" option in every set. I set up a smart group for people with a registration value of zero and sent them a standard email alerting them to that fact.


How do you properly setup scheduled job for report mailings?

The format is

instanceId=1
format=csv

No brackets. The format parameter value can also be print for printer-friendly HTML. If no format is specified it will send as PDF.

If you are doing this in the UI, you have to setup a separate job for each report. That is useful, because you may want some reports mailing at a different frequency.


What is the best way to record the primary contact for an organisation?

Option 3 is the clear winner, because neither option 1 nor option 2 have a clear way of indicating which organization they're the primary contact of.  As soon as someone is affiliated with two organizations, that means trouble.

The unfortunate part of this is that you can't assign a profile via a relationship.  You can do so via Webform-CiviCRM, or via Caldera Forms CiviCRM, and when afform comes out, you'll be able to use that.  However, since you also can't create two contacts in one profile, that doesn't generally cause issues.


Which value to use for tag_id to create EntityTag

A few advices :

when you chain, you shouldn't have to define the entity_table. If you want to define it anyway, the entity_table should be the database table - i.e. civicrm_contact in your case.
Label and id of the tag can be used in tag_id but i really encourage you to use the id. The label can change or be language dependent while the id could not change.

But to answer your question, in your case, the real problem is the array part. The EntityTag api is to create one tag assignation. I don't think there is a syntax to assign multiple tag.

It could be nice to be able to add several api.EntityTag.create but because the key is the api call definition, it's impossible right now (or i don't know how).

So while this will work fine :

$result = civicrm_api3('Contact', 'create', array(
  'contact_type' => "Individual",
  'first_name' => "xxx",
  'last_name' => "yyy",
  'api.EntityTag.create' => array('tag_id' => 5),
));

If you have multiple tags, i suggest you do :

$result = civicrm_api3('Contact', 'create', array(
  'contact_type' => "Individual",
  'first_name' => "xxx",
  'last_name' => "yyy",
));
$contact_id = $result['id'];
foreach ($tags as $tag_id) {
  civicrm_api3('EntityTag', 'create', array(
    'entity_table' => 'civicrm_contact',
    'entity_id' => $contact_id,
    'tag_id' => $tag_id,
  );
}

EDIT

For multiple tags, you could try (not tested but work for website for example - https://github.com/civicrm/civicrm-core/blob/master/api/v3/examples/Contact/ChainTwoWebsites.php)

$result = civicrm_api3('Contact', 'create', array(
  'contact_type' => "Individual",
  'first_name' => "xxx",
  'last_name' => "yyy",
  'api.EntityTag.create' => array('tag_id' => 5),
  'api.EntityTag.create.2' => array('tag_id' => 8),
));


I think that message is telling you that the email that your smtp server is trying to send to is "EMAIL ADDRESS HERE", which is clearly a placeholder that needs to be filled in. I'd check the record of the contact who is unable to send themselves a test email for fishy bits (e.g. the primary email address, which perhaps got set via an import). If that record looks good, then I'd guess that the email address it's sending to is something unusual for the mail host machine and has a badly configured forward or something like that.

But no, you don't need to do anything special to enable test emails.


I had an identical experience, here's how I fixed it.

Following @Demerit's clue:

Using sql:

update civicrm_uf_group set is_reserved = 0 where name = 'volunteer_sign_up'
Now remove the profile (previously, you couldn't via the web interface).

Re-do the uninstall, it now succeeds.

As per the note in the uninstall.sql file, the uninstall process is trying to use a foreign key to remove the profile indirectly, but it's failing. I suspect that profiles got more complicated and this strategy no longer works? Alternatively, perhaps when an early version of the extension gets installed it's subtly different?

Also note that this is actually the last line of the uninstall, so it mostly does uninstall.


Since you are using Drupal, I would also suggest considering how much you can save most users getting in to CiviCRM at all, and providing a lot of the UI via Views and Webforms. We have done this for chapter based organisation, and this has often involved using the Permissioned Relationships extension to provide the ACL.

The outcome is that the user can have a (menu) block with links to all the things they most commonly need to access and do so purely by visiting Views and Webforms


Need to search for the contacts who's email greeting or Addressee fields have been left blank

IF you use Search Builder you should be able to build a query like
Contacts + Addressee + Is Null

Ditto for 'email greeting'

Good luck


The import code's use of dedupe rules as of this writing (Civi 5.1) is...interesting.

The rules, which are defined in CRM_Contact_Import_Parser_Contact::getPossibleContactMatches involve short-circuiting the dedupe matching if the external identifier is a match.  After that, it will ALSO run the unsupervised dedupe - and from there, run your dedupe as well.

While it'd be great to fix this (it's happening here) realistically it will take someone putting in resources (coding time or hiring a coder) to resolve this.

For now, the workaround is to modify your unsupervised rule.


4.6.2 on Joomla: Entering Contribution under single contact times out

To debug a PHP timeout issue, locate your PHP error log and check the last line or last few lines.

This should reveal what code is exhausting your allocated time - and also the time you're hosting environment allows.

Add that information to your question and the community may be able to better identify the underlying issue.


crmLoad is triggered on every action. Try:

CRM.$(document).on('crmLoad', function(e, data) {
    console.log(data);
})


Importing Memberships and Contributions but can't seem to link the two together

The key to my instructions are that there is some unique identifier in both your memberships and contributions.  If you don't have one, then you're correct, there's no way to link the two.

That said - you can use some trickery to create a unique identifier after the fact.  For instance, if your import data has a contact ID and a transaction date, and you know that one contact never signs up for two memberships in a day, you can create a unique ID based on the data you've already imported to the memberships.


Call to undefined function _civicrm_api3_basic_get when using CiviRepeat module

Civirepeat seems like a pretty old module that's no longer supported.

https://forum.civicrm.org/index.php?topic=3329.msg76694#msg76694

Maybe if you explain your reasons for using the module it can be done using existing features as the above forum link suggests.


Unknown extension after upgrading CiviCRM in Wordpress

Turn off contributed CiviCRM extensions, (such as PayFlow) before upgrading. Then turn them back on or reinstall them.

From the guide, "Because of the huge number and ever-changing nature of community contributed Wordpress plugins, CiviCRM cannot guarantee compatibility with contributed plugins. A list of know incompatibilities can be found at WordPress plugins/themes incompatible with CiviCRM."
Check the compatibility list.

https://wiki.civicrm.org/confluence/display/CRMDOC/Installing+CiviCRM+for+WordPress


Did you install the extension? It is not automatically shipped with CiviCRM. Check here to see how you can install extensions: http://wiki.civicrm.org/confluence/display/CRMDOC/Extensions


Keep getting this error on Composer require

The memory problem is real - composer does that. You always need to export COMPOSER_MEMORY_LIMIT=-1.
For the conflict, is this drupal 9.1? You can try adding "minimum-stability": "dev" to composer.json.


Transaction went through, but Contribution missing

Rob,

Since you're processing a lot of transactions I think we can assume that there isn't an issue with CiviCRM or the payment processor or gateway.  We have seen this occur with our clients with a variety of payment processors and generally we recommend not spending much time researching unless it starts to happen regularly.

I do recommend that create a daily reconciliation report (you may have already done so) that gets emailed to out accountant each morning so that the CiviCRM transactions and the payment processor transactions can be compared.  For larger organizations something like this is required by their auditing practice.  Ensure the CiviCRM report uses the same time cut-off as the payment processor.


Error "Could not find a valid session key" after contributions are made

This is an issue documented here: https://lab.civicrm.org/dev/core/-/issues/1997  Fixes have been merged into 5.30 branch https://github.com/civicrm/civicrm-core/pull/18525 and https://github.com/civicrm/civicrm-core/pull/18534
So you can apply the patches, or wait until the 5.30 release in early October.


Error when upgrading to 4.6.9 on Drupal 7

Errors such as 'No such file or directory' or 'Failed to open resource' normally suggest that CiviCRM couldn't find certain files where it was expecting to.

The first thing to check is that all your CiviCRM files have been put in the correct place according to the installation/upgrade documentation; and the configuration in your settings file.

This was answered by Hershel and in this case CiviCRM had been unpacked into a sub-directory.


How to setup an auto email for a specific group sign up?

Agree with Peter, you can find the CiviRules extension here: https://civicrm.org/extensions/civirules (or in the extensions list when you do Administer>Extension and then click on the Add New tab)

Documentation on how CiviRules work can be found here : https://docs.civicrm.org/civirules/en/latest/


CiviMail Mailing List opt-in checkboxes?

Yes.  You can add "Groups" as a field to a CiviCRM Profile.  There's similar functionality available on Webform.

If you use profiles, only groups with the Visibility setting of "Public Pages" will be available for the petition signer to click.  If you use Webform, you can modify the widget to show a specific set of groups for that webform.

Note that the profile implementation has a limitation - if someone a) fills in a profile that has the "Groups" field, b) is already in your database, c) is already a member of one of the public groups, and d) does not check off the box for that group, they will be REMOVED from the group.

If that last part is a problem, and you're up for writing a custom extension, you can see a quick and dirty implementation I wrote to handle this exact scenario on Github.


Trying to write a hook to add contribution page name to Main.tpl I'm super close

Looks like you are trying to access a variable that's been assigned to the template, not the object. I'd say just access the variable $form->_id directly. Also, I suggest you do not use raw sql queries to retrieve a CiviCRM entity. Here's an example using the api:

function wordpress_civicrm_buildForm($formName, &$form) {
  $page = civicrm_api3('contribution_page', 'getsingle', array(
    'id' => $form->_id,
    'check_permissions' => FALSE,
    'return' => 'title',
  ));
  $form->assign('cPageName', $page['title']);
}


How to set permissions on an angular page

I found a solution for this. The developer docs (https://docs.civicrm.org/dev/en/latest/framework/angular/loader/) mention how you could create your own angular page, which is a regular civicrm page but at a different url.

Because it is a regular page I could set permissions for that just as I was used to do. See https://docs.civicrm.org/dev/en/latest/framework/routing/#access_arguments for how to do that.