Can you change Added By information via a profile? 5.21.1 D7

Is it possible to change who added an activity/contribution - someone was logged in as someone else and well - its been an internal problem to say the least. I am being asked to change the Added By to the correct person.

Thoughts?

I dont think you can add source contact in profile field and do a bulk update. The options i can think of

Run sql query to update contact_id in civicrm_activity_contact table for record_type_id = source.
Or Export the activities you want to update and import them back with adding source contact id column in the csv file.

Thanks

Pradeep


Find only renewed memberships Is there a way in advanced search to only find members that have renewed their memberships?
It seems obvious but I can't find how :-(

best regards
Guillaume

There is an Activity Type called Membership Renewal :-)

Not an obvious thing to search for but could do what you need


Auto-filing e-mails on Cases: Mail content not shown under details and attachment with extension .unknown created I am trying to set up a workflow with CiviCase to automatically file clients' responses on their respective cases.

According to the documentation, mails arriving in the e-mail-to-activity-Mailbox, containing the pattern [case #123] in their subject line, get automatically filed under the respective case (123 in this case) as an activity ('Incoming E-mail').

This is all working fine so far regarding the overall process. However, the contents of the incoming mail is not visible in the 'details' section of the activity. An attachment with the mail gets created, but with the extension '.unknown'. I can download this attachment, manually select a program to view it (e.g. a text editor) and (only) the body of the mail gets displayed as plain text, the header info seems to be stripped off. This behavior happens for html mails as well as plain text mails.

What I originally expected was something like a plain text representation of the mail under details, the same way as it is handled with outgoing mails. And the attachment should ideally contain the unaltered and entire mail, including the header information (date/time, recipients) and have a filename extension which could be recognized by a mail client after download (e.g. .eml).

My main question for now: Is this the intended behavior (then I can arrange to live with it, since I am quite happy with the overall process) or am I missing some configuration settings somewhere?

(Using CiviCRM 5.13.1 and Wordpress 5.1.1)

Regarding the ".unknown", you can update the list of extensions it recognizes at Administer - System Settings - Safe File Extensions.

Regarding the rest that isn't how it used to work. Not sure if something's changed recently or maybe there is something unusual about those emails. You say it's both html and plain - are all the emails coming from the same source or different types of sources, e.g. MS Exchange, gmail, etc.

UPDATE: https://lab.civicrm.org/dev/core/issues/940


How to change the direction of a relationship type with existing data I have made an organisation / individual relationship type as an a_b relationship while it should be a b_a relationship to be consistent with the existing relationships like employer of which always have a as individual (child) and b as organisation (parent).

There are allready a lot of contacts that have this relationship in the database.

I tried to change the direction of the relationship type at civicrm/admin/reltype?action=update&id=12&reset=1 and then swap the data of the contact_id_a and contact_id_b columns in the database for that relation type id.

So what is the best way to change the direction (swap individual/organisation) of a relationship?
And what else has an influence on this except for the database tables of civicrm_relationship and civicrm_relationship_type?

I agree with ErikH, but if you don't feel comfortable updating the database, you can...

create a new relationship type with the opposite order (b_a vs a_b)
do an advanced search, selecting only individuals with that
relationship
select the action to "export" the contacts
select two    fields (1)the internal contact_id and (2) the
relationship type field    with the internal_contact_id  and export
(verify that you did this    correctly and the ids match as
expected!)
use civicrm import to    import the csv file to new relationship type
created in the first    step.

May more steps, but if you don't know how or want to mess with the database, this will work.


Certain Themes break WYSIWYG in wordpress It appears that the wysiwyg does not work well with ThemeForest themes.  It does not load in certain pages like the title page of contribution pages.   It works just fine when I use a default theme.

Suggestions on how to get this working and override the theme ?

If anyone new is having this problem, the solution is to upgrade to CiviCRM 4.7.31+.  CiviCRM ships with the BackboneJS library; so do certain WordPress themes.  Sometimes that causes a conflict.  Conflict mitigation was added in 4.7.31.


Require suggestions on how to handle custom 'contribution' I run a large non-profit dog registration system.  One of the functions is to require all dogs to be registered with us for this particular sport.

The way I have it now, I have set up individual contacts and added custom, multiple entry custom fields.  Individuals need to purchase a dog registration.  I'm struggling with this setup since if the individual already has a dog registered, that dog info pops up in the form rather than it being blank.
The only way I can see charging for registration of dogs in this manner is through CiviContribute.  I would like:
1. Member accesses page to add a dog
2. Member enters dog info
3. Member enters payment info (I'm using iATS payment gateway)
4. On successful payment, the registration is completed.

Did I shoot myself in the foot by making these multiple custom fields under an individual?  I had heard some suggestions where the dogs should be a sub-class of an individual and then use a membership status to charge for them?
The issue with this is that there are way more fields then needed for a dog - how do I restrict which fields are visible on the backend for this type?

I'm looking for discussion and suggestions on this.  Any help is much appreciated.

Norm

Yeah you probably want to add the custom fields to the contribution record, that way every new registration will be a new contribution and the fields will be blank each time for the user


Insert custom date field from Drupal Webform I'm trying to set up a Drupal Webform that will (among other things), automatically update a custom date field in the connected CiviCRM contact record. The date field in the webform is hidden, and I'm using Drupal Tokens to generate the date/time when the form is submitted; in the webform results I see the correctly generated date and time, but it isn't then passed to the custom date field in the contact record. (I've tried this with both date & time and date being recorded in the CiviCRM custom field, and with different date tokens generated by the webform - none seem to work).

I'm assuming that the webform is generating a date format that can't be interpreted by the custom field, but I can't see a way to match them up.

Other custom fields filled in via the webform are being populated correctly (I haven't tested this extensively).

I'm using Drupal 7.59 and CiviCRM 5.0.2

We're using dates in this example (custom fields on the grant entity) - I just checked - these dates are working properly:

So try this: set the date field to NOW -> using the method I described here: How can I create early bird fees with Webform CiviCRM? -> for your Date fields;

Let me know if that works.


Does archiving mailings do anything in particular? CiviMail has an option to archive mailings (when browsing mailings).

Does changing the status to archived have any concrete impact on mailings, such as cleaning up information in the database? If not, what's the main use case for it?

In my first Civi site (Joomla), I didn't archive my sent emails.  Then, when I tried to send a new email, the old, sent email would be re-sent in the same cron job as well.  CiviDesk told me the fix was to archive sent emails, and I have been doing it without fail ever since.  The problem has not recurred.


How can I find out how many individuals are inputted onto our civi system I need to know how many families and individuals we work with each year. How can civi tell me these figures?

Simplest way :

menu Search -> Find Contacts
is - any contact type - -> replace by the contact type you want to count (Household or Individual)
click Search button

In the result, you will see the total count (here 1238 individual contacts) :

You can use another search to have more criteria and get the total count for each. The search result will always show you the total count.


Create contact report with last added contacts I'm trying to achieve something that sounds trivial. In order to take a look and quantify how many new newsletter subscriber we have, I want to create a contact report listing all contacts belonging to a group (corresponding to a form), filtered by "added_date". Although this date information exists when I consult a contact, I can not find how to filter my contact report!
Thanks for your help!

You could go to Search/Custom Searches and then run 'Search by date added to CiviCRM' and make a smart group from that list.  Then use that group as a filter in the report.


PROBLEM>> The Profile Redirect URL is Limited to One Setting for Multilingual Site I have not found a solution to this as of yet and I scoured through here first with no answers.  Anyways, I have a multilingual Wordpress website (www.gcmf.ca) using the WPML plugin to manage between English (default) and French.  I am using CiviCRM profile forms to "walk" the logged in members through a renewal process. When they fill out the first page and click the Save button, it redirects them to the next page to fill out.  This works beautifully for English!

The problem happens when French is selected and they save the form. Since there can only be one URL entered in that Advanced field, it takes them to the next page, but it's in English.  They have to manually select French again. The path for English looks something like… “https://gcmf.ca/some-web-page/” and for French… “https://gcmf.ca/fr/some-web-page/”.  So you can see my dilemma.

Does anyone have ANY suggestions?  I'm going to  ask the users over at WPML to see if a language can be set by other means rather than using a language specifier in the URL.  That could solve the problem.  Also, from the CiviCRM side, I am wondering if there is a work around even if it involves a little code behind.  I am not a PHP programmer though and my skills in that area are very limited.

Ideally for the future, a nice feature would be to allow multiple values for the two redirect fields based on the language just like you can for the individual profile field labels and help text.

Any help would be GREATLY appreciated!

Kindly,
Rick Monyer

I am not familiar with WPML, but what I normally do with multilingual sites is that I add one profile per language, that way you can also create the field labels as you want.

That way you can set the redirect URL as you want.

In WordPress you can then use a different shortcode per language to embed the profiles.


How to setup a contact journey and add them in specific mailing group after a delay? I would like to setup a web signup form with 2 of our newsletter groups. After contacts sign up, I would like to send them 2 welcome emails after 10 days of delays. Then add them to the 1 of 2, or both newsletter whatever they have selected at the time of signup.

Setting up a form with groups, sending them welcome emails are an easy part using civirules.

I am struggling with how I can determine what group they were signed into at the beginning, so after 10 days of delay, they can go into that specific groups? I do not want to send them Newsletters before they receive the 2nd email. Any help would be appreciated. Thanks

I would

Use webform(Drupal) or Caldera(Wordpress) for signup
Setup webform(Drupal) or Caldera(Wordpress) to create activity of type XXX as completed status with todays date on submission.
Setup Schedule reminder for Activity of type XXX

a. 10 days after activity date

b. 20 days after activity date
Setup 2 smart group

a. Contacts having activity with activity datetime for past 10 days of type XXX

b Contact having activity with type XXX and not in group 4.a

Cheers

Pradeep


Why am I getting Javascript errors/ unable to save when creating a new mailing? Trying to figure out why I keep getting javascript errors and not being able to save when trying to create a new civimail mailing on WordPress / CiviCRM 4.7.27. It is a fresh install. Not sure what is going on.

Anybody have any good ideas on why this may be happening?

Got rid of WP Super Cache and Wordfence. No longer getting the errors. Thanks for the help tho!


creating contacts from remote websites is it possible to create new contacts using remote html forms?

we have three different websites related to different activities of the organization.

we would like to create adding contact forms on each of these websites and have the form perform data-entry to a single civicrm running on a separate wordpress installation.

Is it possible? How?

Yes. CiviCRM provides an "html snippet" for every profile form you create. Simply copy and paste this into your remote website and form submissions will be saved back to your CiviCRM database.

For more information see http://docs.civicrm.org/user/en/stable/organising-your-data/profiles/#standalone-forms-with-profiles


How to show CiviCase activities in client Actions dropdown? I would like to create an extension that pulls in activity types from CiviCase and allows creating those activities against a client record using the "Actions" dropdown on the Client Summary page.

If anyone has done this or similar I would be grateful for any advice.

Thanks

EDIT: The activities need to also be associated with the relevant case types (for reporting and other categorisation needs). Also, they need to be only available for a certain contact type. I'm imagining that attaching them to case types will provide a way of differentiating between them and activities that are available to all contact types.

EDIT2: I now realise this question is a product of my muddled thinking. I'll ask again when I have a clearer idea of what I actually want to achieve!

If I understand right I think this is just a config change. You just need to mark those activity types as being for Contact instead of Case, and then they appear available for use in the normal activity menu, and you can still use them for case if they are listed in the case-type config.


Adding states to countries Hello we are moving an old CRM into CiviCRM.  We are a very international organization and we have found that CiviCRM is missing many states.  How do we get this added to CiviCRM?  Should we make these additions to our instance, or can we get this added to the standard CiviCRM state table?

Gabon: No States.
Ghana: Some States are missing.
Gibraltar: No States.
Greece: Syros is missing.
Greenland: No States.
Guadeloupe: No States.
India: Telangana is missing.
Macedonia, Republic of: No States.
Malta: Some States are missing.
Mexico: Michoacan is spelled wrong.
Moldova: States are missing.
Montenegro: States are missing
Nepal: No States.
Paraguay: Central is missing.
Portugal: Coimbra is spelled wrong.
Serbia: States are missing.
Seychelles: States are missing.
Singapore: States are missing.
Sweden: Halsingland is missing.

36.Tajikistan: Karotegin is missing.

Thailand: Bueng Kan is missing.
Togo: Plateaux is missing.
Venezuela: Bolivar is missing.
Yugoslavia: it doesn’t exist, move states to new respective countries.
Zambia Some States are missing.

There is no specialized mechanism for updating the state/province values in the database. You can file an issue in JIRA (https://issues.civicrm.org/) and provide the details there, and someome from the team can add the appropriate changes for the next release.

You could also apply the changes at Github and then request a pull. The civicrm_state_province table is populated during installation via https://github.com/civicrm/civicrm-core/blob/master/xml/templates/civicrm_state_province.tpl . You can find country IDs in the country ID template.


Display related organization information using a profile What is the best (or recommended) way to display related organization information in a profile?
I use organizational membership so after registration I have an individual record (with Drupal account) and an organization record (related to the individual).

I use Civi profiles to display stored information to my users. It's easy and straightforward when showing the individual's own data. But a profile that shows the related organization's data is what I'm looking for - right now the profile shows empty fields.

I came up with one solution: if I add id=[org_contact_id] to the profile view url, everything is OK. To get Drupal to generate proper link in menu, I'm planning to use menu hook and through CiviCRM API find user's related organization contact id. It seems complicated though (for such a simple task).

Is there an easier way to do that?

Since you are using Drupal would recommend you to build view page by using Views module where you can get organization information of an individual using relationship. This will involve no coding.

If you still want to use Civi Profile than you can over-ride id by using hooks.

Cheers

Pradeep


Manage Groups filters broken in 4.7.7? I'm running 4.7.7 in Word Press and none of the filters on the Manage Groups page seem to be working. It's been replicated by other users so it doesn't seem to be an issue related to users and/or local machines. Is this happening to others?

Edit: I've been digging around further, is there a chance that this is related to CRM-18528? I've applied the new code and it seems to be working, although from what I've seen this applies to the Drupal version. Thanks for your help!

Thanks for bringing this to a wider audience!  I just confirmed the issue on the demo site, which is the first step toward determining if this is a bug for everyone (see Reporting a Bug).

I've confirmed it's not an AJAX error or a problem with how the URL is constructed, which were my first guesses.  I'll take a few minutes to poke around in the code, and if the problem's not obvious I'll report it upstream at https://issues.civicrm.org.

UPDATE: The problem's not obvious to me, but I know there are some bugfixes in process for this set of new functionality (CRM-16353)


Could an extension add fields to the standard Find Contributions form? A client would like to search for contributions by payment processor. The built-in search forms don't include a payment processor field, although the data exists within the Civi database.

As the answer to another question describes, I could create a custom search based on the basic Find Contributions form. I could then replace the default Find Contributions menu item with my new improved version.

But, hypothetically, could I instead use an extension to insert a field for payment processor into the basic Find Contributions form itself, along with some code to create the SQL query? Is such an approach possible and advisable?

How about building an extension that creates custom report - where contributions can be e.g. filtered by or grouped by Payment Processor id? Much easier to create that and likely more useful too.


How to let extension users choose cache system? CiviCRM contains some useful caching infrastructure (confluence wiki and related question).

If I am creating a module and I would like to allow users to override the default Civi::cache() specifically for this extension how should I do that?

I think putting some settings (maybe a factory function?) in the civicrm.settings.php would be the best way? Is this correct? And any examples?

I'm thinking I could just put something like this in my code:

if (function_exists('myextension_cach_factory')) {
  $cache = myextension_cach_factory();
}
else {
  $cache = Civi::cache();
}

Then the settings file could contain something like

// civicrm.settings.php
function myextension_cache_factory() {
  return new CRM_Utils_Cache_SerializeCache(array());
}

or maybe even:

//civicrm.settings.php
function myextension_cache_factory() {
  return new CRM_Utils_Cache_Memcached(array(
    'host' => 'localhost',
    'port' => 11211,
    'timeout' => 3600,
    'prefix' => 'mec_',
  ));
}

Background:

$civicrm_root/CRM/Utils/Cache/Interface.php defines a minimal standard interface for caching with get(), set(), delete() and flush() methods.

$civicrm_root/CRM/Utils/Cache/ has these useful looking implementations:

APCcache.php
ArrayCache.php
Memcache.php
Memcached.php
NoCache.php
SerializeCache.php
SqlGroup.php

1. CRM_Utils_Cache::create()

When looking through the list of cache drivers, you see options like Memcache, Memcached, and Redis. Generally there's little reason why a deployment would use all three -- rather, the typical question this:

Do we have any kind of high-speed/shared/memory-based cache? If so, use it.
Do we have any kind of SQL-backed cache? If so, use it.
Otherwise, use an ephemeral array() (for the duration each request)

In v4.7, CRM_Utils_Cache::create() is a factory function which accepts an ordered list of drivers, and it picks the first one that's usable, e.g.

$myCache = CRM_Utils_Cache::create(array(
  'name' => 'somethingsomething',
  'type' => array('*memory*', 'SqlGroup', 'ArrayCache'),
));

This aims to address the typical use-case by making it unnecessary for the admin to configure anything extra for your specific extension.

Your extension would need to retain a copy of that cache object, e.g.

function myextension_cache() {
  if (!isset(Civi::$statics['myextension_cache'])) {
    Civi::$statics['myextension_cache'] = CRM_Utils_Cache::create(array(
      'name' => 'somethingsomething',
      'type' => array('*memory*', 'SqlGroup', 'ArrayCache'),
    ));
  }
  return Civi::$statics['myextension_cache'];
}

I believe this answers the typical requirement/issue when someone wants to configure the extension's cache, but it doesn't literally answer the question...

2. Named services and caching

The Symfony service container is a general-purpose tool for naming and tracking a bunch of objects -- cache services, database services, entity-repositories, etc. Rather than have a hundred functions like myextension_cache() which hard-code the factory, we put all the factories together in the container. This pattern improves our leverage; in principle, you can expose the container to different processes, e.g.

Reading multiple YAML/XML files to configure the container
Allowing extensions/hooks to alter the container
Allowing site admins to alter the container
Allowing dev-tools and admin-tools to inspect the container

For this reason, new caches in core tend to be created through the container, e.g.

Civi::cache() is equivalent to Civi::container()->get('cache.default')
Civi::cache('js_strings') is equivalent to Civi::container()->get('cache.js_strings')

However, at this point, the container in Civi needs improvement. For example, you can alter the container via hook_civicrm_container, but there's no YAML/XML/annotation mechanism for updating the container, and there's no mechanism for site-admins to modify services via config file (civicrm.settings.php).

The long-term goal is to shift more service-management into a container so that questions like "How does a site admin customize service X?" have a categorical answer. Improving the container is very much patch-welcome.


How to automatically create a user account when someone donates? My idea is something like this:

When someone gives a donation, an account with specific permission gets created.
User gets notification of the account creation via the contribution receipt or a separate email
When they login, it should redirect them to user dashboard

Is this something possible to achieve? I am on drupal 7. CiviCRM 5.20

Any alternative idea or suggestion would be very helpful.

Yes, this is possible by using a profile - see the 'Advanced Settings' of the profile used in the contribution page and you'll see (towards the bottom) the settings re creating a drupal account.  When they have set a password and logged in to Civi the dashboard is the default.


sharing pledges between contacts In the user workflow I currently have, parents sign up for tuition payment plans for the program their children are attending. These are processed as pledges with varying numbers of installments, attached to the parent contact. Is there any way for me to assign those pledges to multiple people? For example in a two parent household, I would like both to get reminder emails. I feel like this is somewhat similar to giving soft credits to household members for contributions, but I'm not sure how to do it for pledges as well. Ideas?

Unfortunately there is not a way to assign a pledge to multiple contacts.

In the CiviCRM database, the pledge is assigned to a contact, but the individual pledge payment/installment is related to the pledge and not the contact.

Without a customization, this would not be possible.  Sorry


GDPR - updating preferences / forgetme Wordpress 4.9.5 / CiviCRM 4.7.31 / GDPR extension 2.1

How do I pass tokens to the GDPR communications preference page (using Veda's extension)?

I've got the Communications Preference link working (not quite as formatted in the extension control panel, I think it's a Drupal / WP thing);

https://yoursite.org/civicrm/?page=CiviCRM&q=civicrm/gdpr/comms-prefs/update

Which works great (when I'm logged in). However, when I visit as an anonymous user, I get a blank page. I could ask all my contacts to re-type their details in, however, the scope for errors / duplication / drop-out makes this less than ideal.

I can format an email to send a token to update a profile but that doesn't pick up the GDPR consent date / data:

https://yoursite.org/?page=CiviCRM&q=civicrm/profile/edit&reset=1&gid=profileID&id=userID&cs=checkSum

When I try and pass those tokens I get a blank form, so it's not picking up the userID and loading the relevant data from the db:

https://yoursite.org/civicrm/?page=CiviCRM&q=civicrm/gdpr/comms-prefs/update&id=userID&cs=checkSum

I'm pretty sure this is possible (the built in tokens should provide this function), however, the built in tokens don't seem to generate valid links or URLs (or indeed anything).

{contact.comm_pref_supporter_link}

{contact.comm_pref_supporter_url}

I can include {contact.checksum} and preview email as html and see a checksum, but the comm_pref tokens stay as {contact....}

If someone can post a valid tokenised Communications Preference page I can probably reverse engineer something.

So again, not sure if Drupal / WP related or some other missing dependancy?

I had a similar issue and posted here: https://github.com/veda-consulting/uk.co.vedaconsulting.gdpr/issues/50

I have not had a chance to see why the tokens were not working for me, but I can add them manually:

https://example.org/wp-civicrm-basepage/?page=CiviCRM&q=civicrm/gdpr/comms-prefs/update&reset=1&{contact.checksum}&cid={contact.contact_id}

Replace example.org with your domain and wp-civicrm-basepage with your slug for the basepage you are using.

Update:   Version 2.2 of the extension has fixed the issue with tokens


CiviEvent - changing an event's creator I'm adding new users with limited permissions to an existing CiviCRM site (Drupal 7 / CiviCRM 4.4.7). These users will be allowed to create events, but not edit others' events.

However, there are already events in the site, all created by the same account. I would like to be able to change the creator's id for these events, so that they can be assigned to various new user accounts.

My guess is that the field for this in the database is "created_id" in the "civicrm_event" table. But is there a way to change an event's organiser from the CiviCRM interface?

You're correct about "created_id", but I'm 99% sure there's no way to update this from the CiviCRM UI.  However, you COULD update it from the API Explorer: Help menu > Developer > API Explorer.


"API permission check failed" for admin user (I'm using version 4.7 based on Wordpress)

When making a REST api call to retrieve a ContributionPage instance, the response tells me that I "require administer CiviCRM". However, the API key is associated with a user in the Administrators group of CiviCRM (this was configured as such using the "group" dropdown in the "New Individual" form of the CiviCRM contacts menu) . For other entities such as "Contact" the call works.

    # get contribution page
    resp = requests.get(
        url,
        params=dict(
            entity='ContributionPage',
            action='getsingle',
            api_key='xxxxxxxxxxxxxxxx',
            key='xxxxxxxxxxxxxxx',
            json={"id":1}
        )
    )
    print(resp.text)

{"error_code":"unauthorized","entity":"ContributionPage","action":"getsingle","is_error":1,"error_message":"API permission check failed for ContributionPage\/getsingle call; insufficient permission: require administer CiviCRM"}

Does anyone know what could be the problem?

You must also make the user an admin in the Users panel of the host CMS (wordpress, in this case). It's not sufficient to choose Administrators as the value for the "group" dropdown in the "New Individual" form of CiviCRM.


Another CRON headache: fwrite() expects parameter 1 to be resource, string given in … /WP_CLI/Loggers/Base.php CRON was behaving as expected for a few days, but now I'm getting this:
Warning: fwrite() expects parameter 1 to be resource, string given in [REDACTED]/WP_CLI/Loggers/Base.php on line 57

Any idea what's causing this?

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

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


Link to filtered Activities tab from Contact Summary? (Drupal 7, civicrm 4.7) I'd like to have a user click "View All Meeting Activities" from the contact summary front page and be shown the activities tab filtered by Activity Type "Meeting"

Is it going to be possible to pass the filter like that?

Thanks!

edit: i'm using Drupal 7 and civicrm 4.7

One way to approach this is to build a Drupal View based on CiviCRM Activities that is Filtered to show just the activities that you want for the logged in user and display that block on the civicrm home page.

If that sounds like the way to go and you are not familiar with Views, then add a comment and I can probably do an export of a View that might get you started.


What is the purpose of logs for activities in civicrm_log table? I am struggling with a large database and try to find ways to reduce data mess. I really wonder why there is no scheduled job to delete old log entries from civicrm_log but this is not my question. Diving into this data I found out that there log entries created everytime an activity was created or updated. But it seems to me that these logs are never shown to admin in the backend?! For contacts there is a tab for the logs but for activities I could not find any page where the logs for an activity are listed.
Is there a way to avoid log creation for activities? Is there any way to list these logs to users or what is the reason to create these logs?

Under Administer - CiviReport - Create Report From Template there is one called "Database Log Report". That shows you more or less what's in civicrm_log.
For advanced logging (at Administer - System Settings - Misc - Logging), which I don't think is what you're talking about but just in case, the lack of an activity report is a known issue. The advanced logging Contact logging report does not always show proper logs for non-Contact records.


How do I manually add an additional participant to an event? In using the 'back end' to register people for an event /civicrm/participant/add?reset=1&action=add&context=standalone.

I'm getting a message stating that email address is already registered for the event. The event allows for up to 6 additional participants.

A person is not allowed to register for same event twice with same email address. However this can be bypassed by enabling 'Same email address?' option under 'Online Registration' tab of an event.


One page and auto link We have a volunteer organisation. Most of the volunteers are in thier 70's. Is there a way that CIVI can do the following using either a profile or a specific page that does the following sequence at once after data entry

Add the Household Contact and relevant fields
Adds a new individual for each household member
Adds the relationships for primary contact then household member(s)
Then adds the Household as a membership and save it all

Ok i hear you....am I drawing a very long bow?

It sounds like it will depend somewhat on your set up. If you're on Drupal, you could have a look into using webform civicrm which would be able to handle all of the above (creating the contacts, relationships, and membership). You could also do clever things like populate the name of the Household based on the Last name value entered for one of your contacts.

I'm not as familiar with the other CMS integrations but hopefully someone more versed in Wordpress or Joomla can chime in if you're using one of those.


How to attach a .pdf certificate to an email? I have an insurance certificate that I want to send to specific member, manually or automatically as a .pdf attachment. How can I do this? My question seems stupid but I don't find the way.

With Search contacts, I can find the contact I've identified previously and within "Action:" I can Print/Merge documents but then I download a .pdf when I want to send it instead. I can also send an email using my HTML template with the right Fuzion tokens but it generates no .pdf attachment. So is there a way to combine both?

I saw these posts: how-can-i-attach-a-pdf-certificate-for-a-membership-payment but it's from 2015 and didn't seem successful and print-pdf-and-send-to-contact. I'm wondering if there is a simple way to get it done with CiviCRM 5.13.4.

Have I missed something really obvious?

How about saving yet more steps and make it a self-service: i.e. allowing Members to download their own PDF Certificate? I've detailed all the steps on how to do that with Drupal Views in this post:
How can Members download their own Membership Certificate/Card?


Multiple file upload field I have civicrm installed with Drupal. I was not able to find how to create a multiple file upload using a civicrm custom data field. By default it allows only single file to be uploaded at a time. I require some 'Add more' type of functionality in CiviCRM.

When you create the Custom Field Set for contacts*, you can check the box that says "Does this Custom Field Set allow multiple records?":

From the book:

  Multiple record fieldsets

  By default custom data sets have a 'one-to-one' relationship to the
  entity they are attached to. For example, one field set for a person's
  physical attributes which contains one field for their height and one
  for their eye colour will be attached to one individual record. This
  makes sense because we only ever need to record one eye colour and one
  height for each person.  However, in certain circumstances, we want to
  record multiple custom field sets for a single contact, for example,
  when recording a person's educational history. In this case, a single
  person may have multiple educational degrees, so a custom field set
  about educational history, which contains fields for subject,
  institution, and grade, should allow multiple records, and this is
  what multiple record fieldsets allow.

  You can only add multiple record field sets to contacts - you can't
  add them to other entities. To use this option, select the "Does this
  Custom Field Set allow multiple records?" option. A few things to bear
  in mind when creating mutiple record custom field sets:

  Multiple data applies to the whole field set, not to individual fields.
  Multiple data be can only be added to Contacts. It cannot be added to Activities, or Contributions, etc.
  Mutiple data cannot currently be exported
  Before deciding to model something as a multiple value custom field set, you may wish to consider whether it could or should be modelled
  as an activity. For example, an educational degree could be an
  activity with custom data added.


Having trouble with pledges I have users with pledges set up for the total amount they have agreed to pay this year. They make payments on these pledges via contribution pages. The payments are not being matched to the pledge however, because the pages are not properly configured. However, every time I set a contribution page to accept pledges (in the "amounts" setting tab), it reverts back to not accepting pledges after the "save." Has anyone else encountered this bug? Do you know what I could do to circumvent it?

I would just go and apply the payments to the pledges manually, but apparently that is not possible either, without an extension. Connecting existing contribution to pledge If you have an extension you are willing to share, that would be amazing.

I have now reported this bug here; https://issues.civicrm.org/jira/browse/CRM-17651

The bug only shows up when using price fields for a contribution page. There are good reasons for using price sets, however, and there is no reason I can see not to allow pledges when using the price set functionality.

If you have any fixes or workarounds that allow me to still use the price sets, please let me know!


How to debug the API Action process_mailing? Drupal Version:7.59
CiviCRM Version:5.3.1
I am facing an error of incorrect Links in Emails sent via scheduled mailings.

The HTML is

Test

1) When mail is sent manually by selecting Execute Now

the links for the pdf works perfectly

2) When it runs via cron
the link generated is this
/usr/share/nginx/abc/sites/all/modules/civicrm/extern/url.php?u=2937&qid=34399

I need to debug on both #1 and #2, what can be the appropriate files to debug and what can be the process to debug?

I am having a symlink so in
Settings - Upload Directories
[cms.root]  /usr/share/nginx/abc
[civicrm.root]  /usr/share/nginx/abc/sites/all/modules/civicrm
[civicrm.files] /usr/share/nginx/abc/sites/default/files/civicrm

Resource URL

[cms.root]
https://example.com/
[civicrm.root]
https://example.com/sites/all/modules/civicrm/
[civicrm.files]
    https://example.com/sites/example2.com/files/civicrm/

Harshal,

Check the resource url is set properly. Navigate to CiviCRM >> Administer >> System Settings >> Resource URLS. Click on '?' to see if all the variables have correct values and are pointing to right directories. If not then you may need to update the civicrm.settings.php file for $civicrm_root variable until the you get th variables right in resource url.

HTH

Pradeep


How do I sync contacts who are not members in Wordpress? My client organization only has organizational members, but provides services and events to individuals connected to the organization. The WP Member sync, seems limited to only syncing members.

I need to create users who are associates of member organizations. Those are mostly 1 to many type relationships. I have some that are many to many type relationships. This is my last step and I hadn't realized there wasn't an obvious path here. What is the proper way to proceed to import these users?

There are two solutions:

1) You can set the Organization Membership to "trickle down" via a relationships. This is hard to change after the fact. You will need to update the Membership type via the database and then manually update all the Memberships.

2) You can create an advanced search pulling all the Organization Memberships and set the Display Results As: Related Contacts. Make that into a Smart Group. Use that Smart Group or most likely multiple Smart Groups into a Group Role Sync via your plugin.


CiviMail Reports is not tracking email opens I am using civi 4.7.29 on Wordpress 4.9.4

I noticed that civimail reports is not tracking the email opens after multiple sends.  It is just showing "0". In the screen shot, you can see where it is showing click-throughs but not opens.

The checkboxes for tracking opens and click-through are set.

In the email source, I found this URL  https://mysite.org/wp-content/plugins/civicrm/civicrm/extern/open.php?q=66

That URL takes me to 404 Error Page.

The permission are:

open.php 755

civicrm/civicrm/extern/ 777

civicrm/civicrm/ 755

civicrm/  755

Does anything look wrong here?
Thank you.

I've experienced something similar on a few sites and it turns out the file/directory permissions are not set right. I'm not sure what causes it, but I have found that I need to recursively reset permissions after updating CiviCRM, or the tracking doesn't work, click through links don't work, you can't upload images from CiviMail, etc.

From just outside the civicrm directory, I do this and it seems to solve it:

find civicrm -type d -exec chmod 755 {} ";"

find civicrm -type f -exec chmod 644 {} ";"

The first one changes permissions on directories and the second on files. You want to avoid having anything set to 777 for sure.


Custom Search Unknown column 'contact_a.id' in 'field list' I'm trying to code a custom search (CiviCRM 4.7.11 - WordPress)  and I keep getting

 Unknown column 'contact_a.id' in 'field list'

I built the search by civix as per docs and that created a contact search by default

I stripped out the form code and have even simplified it all the way down to one column

The meat being as follows and should just list hello thousands of times

function &columns() {
// return by reference
   $columns = array(
  ts('Hello') => 'hool',
);
 return $columns;
}
/**
* Construct a full SQL query which returns one page worth of results
*
* @param int $offset
* @param int $rowcount
* @param null $sort
* @param bool $includeContactIDs
* @param bool $justIDs
* @return string, sql
*/
function all($offset = 0, $rowcount = 0, $sort = NULL, $includeContactIDs = FALSE, $justIDs = FALSE) {
// delegate to $this->sql(), $this->select(), $this->from(), $this->where(), etc.
return $this->sql($this->select(), $offset, $rowcount, $sort, $includeContactIDs, NULL);
}

/**
 * Construct a SQL SELECT clause
 *
 * @return string, sql fragment with SELECT arguments
 */
 function select() {
   return ' "hello" hool';
 }

 /**
  * Construct a SQL FROM clause
 *
 * @return string, sql fragment with FROM and JOIN clauses
 */
function from() {
   return "FROM civicrm_contact";
}

/**
 * Construct a SQL WHERE clause
 *
 * @param bool $includeContactIDs
 * @return string, sql fragment with conditional expressions
 */
function where($includeContactIDs = FALSE) {
 return "1";
}

But I get

Database Error Code: Unknown column 'contact_a.id' in 'field list', 1054
Additional Details:
Array
(
[callback] => Array
    (
        [0] => CRM_Core_Error
        [1] => handle
    )

[code] => -19
[message] => DB Error: no such field
[mode] => 16
[debug_info] => SELECT count(distinct contact_a.id) as total
  FROM civicrm_contact
  WHERE
1
 [nativecode=1054 ** Unknown column 'contact_a.id' in 'field list']
[type] => DB_Error
[user_info] => SELECT count(distinct contact_a.id) as total
  FROM civicrm_contact
 WHERE
1
  [nativecode=1054 ** Unknown column 'contact_a.id' in 'field list']
 [to_string] => [db_error: message="DB Error: no such field" code=-19   mode=callback callback=CRM_Core_Error::handle prefix="" info="SELECT count(distinct contact_a.id) as total
  FROM civicrm_contact
 WHERE
 1
 [nativecode=1054 ** Unknown column 'contact_a.id' in 'field list']"]
o )

I don't understand what is trying to create the SELECT count(distinct contact_a.id) as total  with an invalid column and how to stop it?

Ideas?

Does your class extend a base class? A parent method in there might be expecting you to alias your main contact table "AS contact_a".

You can either

do what the base class is expecting, in exchange for it doing some of the work for you,
override the methods as needed,
not extend the base class and implement the required interface methods yourself.


Move all accounts with certain Drupal role into CIviCRM group We are trying to delete all spam accounts out of both Drupal and CiviCRM.  We have a module set up to find all spam account in Drupal and set them to the role of "spam account".  There are now about 40,000 accounts with that role.

Now, we are trying to deal with those accounts on the Civi side.  I am trying to use CiviCRM Group ROles Sync to sync all of the Drupal accounts with the role of spam to the CiviCRM group of Spam, but keep getting a "503 First byte timeout" error.  I was told that the error is caused by it taking longer than 60 seconds to respond, which would make sense considering there are 40,000 accounts.  But, I tried it with 20 accounts, and still got that error.

Is there another way to go about syncing the Drupal and Civi roles/groups, or another way to deal with spam accounts in CiviCRM?

I am using Drupal 7 and CiviCRM 4.6.28.

If you're feeling brave, and you've got a test site to try this out on first, this should be doable almost instantly via a SQL statement.

To simplify this query, first look up the group ID (SELECT id FROM civicrm_group WHERE name = 'Spam Group') and the Drupal role ID (`SELECT rid FROM role WHERE name = 'spam account').

Note: If you have separate databases for Drupal and CiviCRM, you'll need to preface references to tables with the database name.  I'm assuming some basic SQL savviness here - my apologies if this isn't helpful as a result!

Once you have the role ID and group ID (we'll assume "12" and "23" respectively below), do the following:

INSERT INTO civicrm_group_contact (group_id, contact_id)
SELECT '23', civicrm_uf_match.contact_id
FROM users_roles
JOIN civicrm_uf_match ON uid = contact_id
WHERE rid = 12;


CRM_SMS_Page_Callback run method override I am creating a new extension to add a new SMS provider. Since different parameters are passed during callback, I need to override run method of the CRM_SMS_Page_Callback class. Since it is a part of CRM Core, what is the best way to do it?

  sites/all/modules/civicrm/CRM/SMS/Page/Callback.php

class CRM_SMS_Page_Callback {

  public function run() {
    $provider = CRM_SMS_Provider::singleton($_REQUEST);

    if (array_key_exists('status', $_REQUEST)) {
      $provider->callback();
    }
    else {
      $provider->inbound();
    }
  }

}

When you say parameters do you mean http get/post parameters? You would just access those in your callback the usual way in php. Or see for example the callback function for clickatell

https://github.com/veda-consulting/org.civicrm.sms.clickatell/blob/master/org_civicrm_sms_clickatell.php


Prevent contact from unsubscribing from a mailing list? I have a case where we have optional mailing lists for our members, but also a mandatory list that members must not be able to unsubscribe from (a smart group that looks for active members -- our master list of members -- which we use to contact them about urgent issues). A condition of membership is that they need to remain on this list.

But, when I send a mailing with the {unsubscribe} placeholder, members see all the lists they are on, including the master list, which they can then unsubscribe from.

Is there a way to prevent a mailing list from being displayed on the Unsubscribe page?

Is there a way to prevent a mailing list from being displayed on the Unsubscribe page?

If the Mailing Group is not set to Public then it should not show I believe.


How to pre-populate a caldera form? I'm using a caldera form to register beneficiaries (they become member throughout their organization) and I want to have the 'organization name' field pre-populated from the url. And I don't want to show the name of the organization on a public form with a select list.
I read on the documentation that it is possible with example.com/some-page?cid={contact.contact_id}&{contact.checksum} but where do I find the contact cheksum and how do I insert it in the form?
Any experience connected to this topic?

Actually, the process is easy:

In the Caldera form > tab Builder, add an hidden field with the value {get:field_name} (replace field_name by the desired value)
In the Caldera form > tab Process, add a CiviCRM process and match the needed field with the one from Caldera with the magic field syntax, so here %field_name%. (In my case, 'employee of' matches with '%organization_name%')
create an url to the page with the form: www.domain.com/form/ and add ?field_name=YOURVALUE so it shows up like www.domain.com/form/?organization_name=YOURVALUE. You can also add several variables using '&' between them.
Add the User registration Process with password creation
Send the email from inside CiviCRM using such a syntax: https://domain.com/form/?organization_name={contact.organization_name}

When processed, the new user gets a CiviCRM membership as a relation to the organization and can access specified content of the WordPress site!
Source: Caldera form documentation


Only in WORDPRESS: REST.php ---> Unable to decode supplied JSON This is my first post for CiviCRM.

Hi to all.

I have seen others post related and nowadays the problem remain.

Different from this post:
REST API: Unable to decode supplied JSON
 - with wordpress I got always the same response "Unable to decode supplied JSON".

I tried clear installation with Joomla and also Backdrop, and both works correctly.

I am not a good programmer but I tried to do some stuff myself, here you what I prepared on my little server:

WordPress+CiviCRM with the problem: link clear installation

WordPress+CiviCRM fixed myself: custom

Here you what I modified to the file REST.php...

after line 326

    if (array_key_exists('json', $requestParams) && $requestParams['json'][0] == "{") {
      $params = json_decode($requestParams['json'], TRUE);

my modification start here

      $new_requestParams= $requestParams['json'];

      $new_requestParams= str_replace("\\", "", $new_requestParams);
      $new_requestParams= str_replace("\\", "", $new_requestParams);

      $params = json_decode($new_requestParams, TRUE);

I practically saw a lot of "\" before the JSON DECODE.

So removing this "\" now works regularly.

If you wish can check directly on both sites:
Clear ----> http://144.91.105.68/cms/wordpress

Custom ---> http://144.91.105.68/cms/cust/wordpress

The user and password are both same:   admin / admin

And also siteKey and api_key are always:  a42bfc2b33cf13184711bff14fe1fb19

Regards Roberto T.

The correct endpoint for WordPress is wp-json/civicrm/v3/rest. Its documented in the developer manual, see https://docs.civicrm.org/dev/en/latest/api/v3/wp-rest/#endpoints.   When you just copy the URL that is suggested in the API explorer you are left in the dark.


Cannot Install CiviEvent-Joomla-Module Extension I have my resource URLs and directories set up; I downloaded the zip from github, uploaded and unzipped, but when refresh the extensions page, the extension name does not appear, and therefore cannot be installed.

Any ideas?

Joomla 3.x
CiviCRM 4.6.2 (and I tried with CiviCRM 4.5 prior to upgrade).

https://github.com/lcdservices/CiviEvent-Joomla-Module

Thanks!

Can you clarify the steps you took? If you upload the package to the tmp directory, go to 'Discover' in the extension manager and click on 'Discover' in the upper left. You should then see it in the list on that screen and be able to install it.


Is there a way to create a new group from report results (instead of adding to an existing group)? I see that I can "add contacts to a group" from report results, but what if I need a new empty group?

Is there a way to create a brand new group right from the report preview?

You could create your group at Contact > New Group before you ran the report.


easy way to link an (offline) payment to a participant we are not using any CC payment but rely stricktly on bank transfer or cash payment. Especially with these bank transfer payments it takes time to link payments to event participants.

It would help if each participant could be given a unique payment reference of some kind to include in the comment of their bank transfer so linking that payment to an event participant would become easier.

Is this possible in Civi? or through an extension?

Not sure I understand the question 100%, but Civi can be configured with ACH payment processing (e.g. using iATS: http://home.iatspayments.com/) - this will allow for users to register themselves online and will link the event payment with the participant record. For cash payments, you can use "Pending (Pay Later)" either from the front end (by enabling this as an option in the event configuration on the amounts tab - e.g. pay at the door) or back end (creating a back office registration and recording a contribution with a status of pending pay later).

Hope this helps!
Tamar


Can you change your default 'Activity Status' for adding a new activity? Can you change your default 'Activity Status' for adding a new activity? We use completed far more than scheduled...

Yes, if you have access to your database, otherwise I don't think so.

You can edit your database. Look for the table called civicrm_option_value and search for WHERE label LIKE 'Scheduled' and WHERE label LIKE 'Completed' and change the values of is_default to 1 or NULL

Here are the exact commands you can run:

UPDATE civicrm_option_value cov JOIN civicrm_option_group cog ON cov.option_group_id = cog.id SET cov.is_default = NULL WHERE cov.name = 'Scheduled' AND cog.name = 'activity_status';
UPDATE civicrm_option_value cov JOIN civicrm_option_group cog ON cov.option_group_id = cog.id SET cov.is_default = 1 WHERE cov.name = 'Completed' AND cog.name = 'activity_status';


CiviMail token for sender signature Is there a token for email sender's signature?

I need the email generated from template to be signed by the person who is sending the email.

Yes there is but it only works for regular mails not for mails sent by CiviMail (bulk mails):

Add signature to the CIviCRM contact that is connected to your CMS contact (see screenshot).
Click on send email for a contact and the signatures should be in the Text editor.

However, for Bulk Mails you would have to put the signature in a footer or th emessage template.


How to prepopulate custom fields I would like to prepopulate a set of custom fields (on an activity) with data about the contact it pertains to. (The data I want to pull in is in a set of custom fields on the contact).

My idea was to use hook_civicrm_buildForm and look up the data by contact id, retrieve it from the API and place it into the form. But the $form array for the custom fields form does not contain the contact id.

Then I thought of using tokens to set default values in the custom fields (either for them all, or even just to set one to the contact id in order to solve the above issue) but I tried {contact.contact_id} and it came out just like that as a literal. Can tokens be used in custom fields on activities? If not, can you suggest another way of getting my hands on the contact id during the form building process?

I ended up going for a very hacky solution.

The buildForm hook runs twice when you are adding/editing an activity with custom fields. Once for the activity and once for the custom fields. So, during the activity run I am taking the contact ID from the form array and putting it into $_SESSION. Then on the custom fields run I retrieve it and use it to get the values from the API with which to populate them.

I had tried getting the contact ID from the URL as Sleewok suggested, but it is not in there!


Resource URL is incorrect Wordpress 5.0 Civi 5.14

UPDATE
I am now convinced that the resource URL error is a real issue and not just a false positive.  I just tried to add some component to the CKeditor.  I saved it, I cleaned up the cache. The new components are not showing up on the ckeditor in the contribution pages.  This is not an issue on my other clients civi installs, just this one.

Hello,
I just finished a fresh install of Civi on a new site for a client.
I am getting the Alert that the Resource URL is incorrect.  As far as I can tell, it is correct.

Also the contribution page url is showing incorrectly in the configurations. It is showing as: subdomain.mysite.org/?page=CiviCRM&q=civicrm%2Fcontribute%2Ftransact&reset=1&id=1

It should be: subdomain.mysite.org/civicrm?page=CiviCRM&q=civicrm%2Fcontribute%2Ftransact&reset=1&id=1

I think that might be a clue to the resource url problem, but I have been digging for hours and I can't find where to fix it.

See screenshots below.

****UPDATE TO SHOW civicrm.settings.php *****

The alert is incorrect.  As long as you are not having any other issues besides the alert, you can tell the alert not to remind you again.

In addition (now that I see the issue with Contribution pages - sorry I missed that), make sure you have the base page set under CMS settings in the CiviCRM administration settings.

In WP go to settings, Permalinks. Make sure that they are not set to Plain

Lastly make sure the base page is published.  the page '/civicrm' is added on install


Civibuild Install - Unable to connect to github.com I got the following error while running civibuild install after few stuff got installed.

.
.
.
bower resolved      https://github.com/jquery/jquery-dist.git#2.2.3
bower resolved      https://github.com/jquery/jquery-dist.git#2.2.3
bower progress      jquery-ui#>=1.9 Receiving objects:  61% (427/700), 508.00 KiB | 45.00 KiB/s
bower progress      font-awesome#~4.4 Receiving objects:  76% (869/1141), 1.46 MiB | 25.00 KiB/s
bower progress      jquery-ui#>=1.9 Receiving objects:  66% (462/700), 596.00 KiB | 53.00 KiB/s
bower progress      font-awesome#~4.4 Receiving objects:  83% (948/1141), 1.46 MiB | 25.00 KiB/s
bower progress      jquery-ui#>=1.9 Receiving objects:  69% (483/700), 652.00 KiB | 57.00 KiB/s
bower progress      font-awesome#~4.4 Receiving objects:  83% (954/1141), 1.48 MiB | 18.00 KiB/s
bower progress      jquery-ui#>=1.9 Receiving objects:  70% (490/700), 684.00 KiB | 58.00 KiB/s
bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github.com/totten/angular-jquery-dialog-service.git", exit code of #128 fatal: unable to connect to github.com: github.com[0: 192.30.252.123]: errno=Connection timed out

Additional error details:
fatal: unable to connect to github.com: github.com[0: 192.30.252.128]: errno=Connection timed out

I ran civibuild install several times several times but it always halt on that particular that step.

From this line,

  bower ECMDERR       Failed to execute "git ls-remote --tags --heads git://github.com/totten/angular-jquery-dialog-service.git", exit code of #128 fatal: unable to connect to github.com: github.com[0: 192.30.252.123]: errno=Connection timed out

Check that you have installed git? if not use " sudo apt-get install git" before running the civibuild install command since the command has to fetch from the repository on github.

Also the line

  fatal: unable to connect to github.com: github.com[0: 192.30.252.128]: errno=Connection timed out

shows that there is a problem with the connection you can first run " ping google.com" to test for the connection and then run the civibuild command again.


Bounce pattern - SMTP Error Codes Currently Bounce Mails are fetched from the smtp store, and a list of regexes are applied to the mail to try and categorize the bounce. There are 10 categories, and an eleventh for when a mail couldn't be matched (syntax bounce).

What I am missing are the defined SMTP status codes. Here is a list with an official list of codes from the RFC, as well as some lists I found convenient for translating the basic status code to the enhanced one:

https://tools.ietf.org/html/rfc5248#page-5
https://www.usps.org/info/smtp_status.html
https://www.usps.org/info/smtp_codes.html

In a test environment with 4000 bounce mails, 1290 couldn't be classified (syntax bounce), but out of those ~850 mails have some form of SMTP status code.

Did anyone ran into some of those problems as well? And wouldn't it make sense to implement those codes as regexp and push them to core?

If no one has done it yet, I would offer to implement the regex, but I don't want to re-implement something. I'm curious why/if nobody ran into the same problem!

This has been implemented in this extension. Currently a bit static, but patterns for smtp (enhanced and simple) as well as some german away patterns can be easily added.

Extension is alpha at the moment, so handle with care. Pattern files are JSON, and can be edited as well. The Extension does a bit more as well, check Readme.


No run_time timestamp in civicrm_job_log Currently, my civicrm_job_log is the largest table in our database. There was a post Can I safely trim civicrm_job_log and civicrm_log? that mentioned an extension that would keep this table trimmed based on an age. However, in my civicrm_job_log all the run_time timestamps are NULL. How can I get these recorded correctly so that I can keep this log trimmed? fwiw, the timestamps in civicrm_log, noting changes to the database, are filled in correctly [this is also a rather bloated table that I would like to trim]. So, two questions [sorry]

How do I get non-NULL run_times in my job log table?
How can I best manage civicrm_log and civicrm_job_log?

Funny thing, while the Date column is filled out with a value in CiviCRM 4.6, it is empty in CiviCRM 4.7. I have checked on my customer's instances and the run_time column is in fact present but empty on 4.7. I will file a JIRA issue on this topic.

If your main concern is cleaning-up this table, you can easily do this by only keeping the last 1,000 or so entries in this table. This is easily done as the civicrm_job_log table, like many CiviCRM table, as an id column that is auto-increment. So you would do this to keep that last 1,000 entries:

-- from http://stackoverflow.com/questions/578867/sql-query-delete-all-records-from-the-table-except-latest-n/8303440#8303440
DELETE FROMcivicrm_job_log
  WHERE id <= (
    SELECT id
    FROM (
      SELECT id
      FROMcivicrm_job_log
      ORDER BY id DESC
      LIMIT 1 OFFSET 1000 -- keep this many records
    ) foo
  );


Corporate - contact names How/ where can I add the contact name for a business?

I am about to send out an email to our corporate partners but I cannot personalise it as I do not know where to add their name in their business details.  I do not want to set up a 'new' individual to then attach to each corporate as this then increases the number of contacts on the database significantly.

Adding an individual to the database and connecting it via a relationship to the organisation would be the coherent "CiviCRM-way" to do it. You should consider using this approach as a lot of CiviCRM's business logic is focussed around it (e.g. greetings, online forms etc.).

If you still want to stick to an "organizations-only-approach", you could simply add one or more custom fields for organisations and enter all relevant infoamtion (such as first and last name) in those fields.


Fields not showing when Editing Contact Contacts have multiple emails and phone number that appear on the Summary tab on the View page and can be edited there.  However when I select the edit button on a contact,  I get only one email address and no phone numbers listed.  The "add" links do nothing.  The Display preference are checked for email and phone. This was a new recent install. Current version of 5.23.3 and PHP version 7.3.15-3.  Any thought on why the additional email addresses and phone numbers are not showing on the edit page and why the"add" link on the edit page doesn't work?

An error was trace it back to a PHP issues with certain Drupal themes, specifically the one used with the drupal commerce module.  Although we are not using that module, We did have the admin theme for the module installed for the admin theme.  We changed that back to the standard admin theme and it appears to be working now.


Which SMS Gateway / Service providers are available? We are an NGO that would like to use SMS to send out reminders for events and feedback tool. Which providers are supported by CiviCRM?

Out of the box, you have two possible providers, clickatell and twilio.

Both seems to work fine, you should check directly on their website because the cost depends on your location, the location of your recipients and the volume you want to send.

https://wiki.civicrm.org/confluence/display/CRMDOC/Setting+up+a+SMS+Provider+for+CiviSMS

X+


Not seeing engagement index option when adding activities I'm not seeing an option to set engagement index when trying to add activities?
Do I need to enable it somewhere first?

For the engagement index to show you need to have CiviCampaign enabled. For details on how to set up the index and other useful guidance you can also see the latest user guide

https://docs.civicrm.org/user/en/latest/civic-engagement/everyday-tasks/#using-the-engagement-index

Hopefully it's just as simple as that to solve.


What is Mattermost / chat? In several posts on this CiviCRM StackExchange site, I see references to people getting help via 'Mattermost'.

What is it and how do I use it?

Mattermost is open source messaging software - see https://www.mattermost.org/

References to Mattermost within this CiviCRM StackExchange site generally refer to CiviCRM's online community chat system that uses the Mattermost software and is one of the various support resources for CiviCRM.

StackExchange uses a Question and Answer format which works well for many things but sometimes an interactive chat format is more appropriate.

You can access it at https://chat.civicrm.org/  Follow the links to create an account.

It is organised into various public and private channels.  Take note of the description of each channel and post your question in the most relevant one.
If you're unsure which channel to use, try 'Town Square' or 'User Support'.
Just ask your question. Don't ask if it's ok to ask.
Choose the most appropriate channel and ask.  Don't post the same question in multiple channels.
It is possible to send "Direct Messages" to other users but don't use them, unless you know the person and you are sure they are the only one that can reply.
Be nice!  It is a community of fellow CiviCRM users who are often very helpful, but do remember no-one is obliged to help you.


Am i able to do a search for duplicates in the database? If I am looking to clean up my database can I do a mass search for duplicates?  save the file and at a later date work on merging?

Yes - go to Contacts menu » Find and Merge Duplicate Contacts.  There is dedupe documentation available.

The tricky question is, "What represents a duplicate contact?".  For some organizations, two contacts with the same record might be a duplicate; for others, that's not enough to determine if it's a duplicate.

So while the Using rules and merging duplicate contacts manually section of the documentation might be all you need (e.g. if you can use the built-in "match on emails only" rule), you may need to read the rest to tell CiviCRM what constitutes a duplicate for your organization.


Profile pic not displayed in civimail As per the requirement I'm trying to get the token values of the custom fields like name, date of birth,country, profile pic etc in the civimail .But when the email is sent.The profile picture is not displayed. Since I'm working on matrimonial site. It's mandatory to get the image in the email.Please help me on this. - Yes I want profile picture to be displayed in the email like all other values. I am getting surname,date of birth and Firstname but not profile pic.I am using tokens for custom fields.

Civicrm version- 7.x-4.7.9
I'm using Drupal 7.

The email output is as follows:
Singh
1969-04-04
Puneeth,
<>profile pic is not displayed.

Html Source of email( I am using Mailtrap)

Singh

1969-04-04

Puneeth

Based on the content you provided, the problem I see is the src is missing from the image tag.  Be sure the URL you use is fully formed including the domain, ala, src='http://mysite.com/.....'     (Well, actually, you don't have a img tag in there.... I think you meant for the i tag to be the image??)

The href you have on the anchor tag has this problem, with the URL not including the actual URL.

Once you get the src set on the image, and if it's still not working, post the HTML from that source view.


CiviCRM 5.13.1 API v3 Merge not working The merge API was worked on 5.0 version but after upgrade to 5.13.1 the merge is Stopped working.

Any help is very appreciate.

Normally contact merge process get skipped when there is something common in both contact and merge process unable to resolve it.

e.g.
address conflicts (same address type on both contacts).

on actual merge contact UI, we have option to override the record or add additional record with same address type.

You need to pass Merge Mode in api call.
string mode: "safe" skips the merge if there are no conflicts. Does a force merge otherwise.

more info at Is there any documentation for 'safe' and 'aggressive' merge modes?


Corrupted smart group? I noticed that a smart group I created a while back was not displaying the correct records (some were missing).

I rebuilt the cache, but to no avail.

In addition, when I did an advanced search with the same criteria, it did display the correct records.

The only difference I can notice in criteria is an extra "…AND…":

Old smart group:

...AND...
Status = Regular Attender OR Active Member

New advanced search:

Status = Regular Attender OR Active Member

One more data point: when I edit the old smart group criteria and remove all criteria, it only returns a subset of our database – not all records (which, I believe, it should).

Is the old smart group corrupted? What are the next steps in troubleshooting?

We're on CiviCRM 4.6.4 and Drupal 7.38.

I would first check that contacts haven't been manually added to or removed from the smart group. To do this you'll probably need access to the database in order to interrogate the tables. Even though they are smart groups you can still manually add and remove contacts from them and that might be why your seeing unexpected results.

The second test would be to create a new smart group based on the criteria you want and see if you get the result


How to Modify CiviCRM settings file How can I modify the CiviCRM settings file so that the CiviCRM extension directory is set using settings files variables. Thanks!

You can use $civicrm_setting variable to over-ride your CiviCRM settings. You can find documentation here.

To set extension directory you can use below snippet

global $civicrm_setting;
$civicrm_setting['Directory Preferences']['extensionsDir'] = '/var/www/html/trcbtp/drupal/sites/default/civicrm_extensions';

You can also use civicrm token variable for dynamic path

1. [cms.root]
2. [civicrm.root]
3. [civicrm.files]

HTH

Pradeep


is there an easy local install method for civics and all dependent software I'm investigating civicrm for a work use at the ngo where I work.

We don't have in-house It team who can help install it. So I'm trying to do so myself.

I have some experience using Ubuntu and basic command line things, but this is proving to complicated for me.
The problem is I need to install apache and php and mysql before I can install drupal, and only then can I install civicrm. Each element can have its own issues, which I have to research separately. I'm stuck on about step 2 and know I have at least 8 moresteps to follow. I've spent about 20 hours on it.

I guess this is quite a common situation and maybe there is a simple way to do it. Are all the necessary software elements in a package somewhere so that I can download it one go.?

Two options:

a. Use the bitnami package: https://bitnami.com/stack/civicrm

b. Use a CiviCRM hosting provider: https://civicrm.org/providers/hosting


Unable to give provider name by using SMS Api Extension I downloaded SMS Api Extension (v1.3) in civicrm version 4.5.0.
After that i am unable to give Provider name.(As there is no option to give provider name)
Then i went to https://github.com/CiviCooP/org.civicoop.smsapi .... There in commits "fixed provider name fixed section". It showing two changing files which was missing in last released SMS Api version 1.3.
4.So i created CRM/Smsapi/CivirulesAction.mgd.php and CRM/Smsapi/CivirulesAction.php inside org.civicoop.smsapi (which is the extension diretory name)

When i opened --> Settings - SMS Provider --> Still creating of provider name option is not coming.

Please suggest.

Sandeep are you looking to setup SMS in CiviCRM?

We successfully setup SMS in CiviCRM 4.6.8 using Twillio - https://www.twilio.com/

We followed the exact steps here - http://wiki.civicrm.org/confluence/display/CRMDOC/Setting+up+a+SMS+Provider+for+CiviSMS

and use From=614111111111 where 61 is the country code (Australia in our case).


What do I do to fix Civi Bounce Reasons that appear in strange (chinese?) character set? Here are bounce reasons - any ideas on where these might be coming from?  it happens consistently.

Contact ID  Bounce Reason   Bounce Type
21  潙牵洠獥慳敧琠桴潦汬睯湩敲楣楰湥獴挠湡潮⁴敢搠汥癩牥摥਺ †樠桯慮湲汯楤獮慀汯挮浯ਊ敒潭整猠牥敶⁲敲畴湲摥琠敨映汯潬楷杮攠牲牯਺ †㔠〵䴠楡扬硯甠慮慶汩扡敬桔    Syntax  j
58  潙牵洠獥慳敧琠桴潦汬睯湩敲楣楰湥獴挠湡潮⁴敢搠汥癩牥摥਺ †搠祯楫楩祀桡潯挮浯ਊ敒潭整猠牥敶⁲敲畴湲摥琠敨映汯潬楷杮攠牲牯਺ †㐠ㄲ匠牥楶散渠瑯愠慶汩扡敬汣獯湩    Syntax
294 潙牵洠獥慳敧琠桴潦汬睯湩敲楣楰湥獴挠湡潮⁴敢搠汥癩牥摥਺ †樠㑷楬歮䁳慹潨⹯潣੭刊浥瑯敳癲牥爠瑥牵敮桴潦汬睯湩牥潲㩲ਊ††㈴‱敓癲捩潮⁴癡楡慬汢ⱥ挠潬楳    Syntax
448 潙牵洠獥慳敧琠桴潦汬睯湩敲楣楰湥獴挠湡潮⁴敢搠汥癩牥摥਺ †猠慰獴晪祀桡潯挮浯ਊ敒潭整猠牥敶⁲敲畴湲摥琠敨映汯潬楷杮攠牲牯਺ †㐠ㄲ匠牥楶散渠瑯愠慶汩扡敬汣獯湩    Syntax

Here is a scattershot of potentially useful ideas:

If you look at the contacts' primary emails do they appear as though they may be hosted on Chinese servers?
I believe the bounce reason may come from the response, but the bounce type comes from inside CiviCRM. Perhaps there is an attempt to hack mail transport agents with this??
Alternatively, perhaps there is a problem with character encoding in the mail headers or on your site more generally. Is this a multilingual site? Does your database have utf8_unicode character encoding as its default, or more importantly for all of its varchar text fields when you look at the table structures in phpMyAdmin? Have you moved the database between servers and perhaps not handled character encodings properly during export and import?

if none of this is useful, you might want to get on irc and ask bgm for help with this as he is the lead on internationalisation matters and he also happens to know a bit about email infrastructure.


Bulk move contacts to new group after message sent I would like to set up a workflow that will automatically bulk move contacts out of Group A and into Group B after an email is sent to Group A. Is this possible?

In principle this should be possible using the CiviRules extension: https://civicrm.org/extensions/civirules.

Documentation of this extension: https://docs.civicrm.org/civirules/en/latest/

I think you would get there by selecting the trigger Activity is added, select the specific type of activity (Email) and add one more condition that would specifically identify your mail. Then action remove from group A and add to group B.

Or if you use a mailing you should probably be able to work with a trigger on Mailing but I have never tried those myself!


Trying to write a hook to add contribution page name to Main.tpl I'm super close So I've almost got a hook working to add the name of the contribution page to the main.tpl part of a PCP.

This is what I have so far:

function wordpress_civicrm_buildForm($formName, &$form) {

  if (  $formName == 'CRM_Contribute_Form_Contribution_Main' ) {
        $ctid = $form->getVar('_contributionPageID');

        $cpagequery = mysql_query("
        SELECT *
        FROM civicrm_contribution_page
        WHERE civicrm_contribution_page.id = $ctid
        ");

        while ($cnamerow = mysql_fetch_array($cpagequery)){
                $cPageName = $cnamerow['title'];
        }

        $form->assign('cPageName', $cPageName);
    }
}

The part that's not working is using the $contributionPageID variable that is already exists on the page. I know the query works, because if I substitute a number for the $contributionPageID I get a result. Any idea how I can pull the contributionPageID variable for use in this hook?

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']);
}


Civimail produces saving error when sending test CiviCRM 4.6.8

I was editing an email when the "Send test" button triggered the message...

Error: Sorry an error occurred and your information was not saved

Unable to replicate in demo site since there's no outgoing email (saving the email doesn't actually produce the error, despite the error's wording).

I went in and submitted a test mailing that I wasn't able to preview. This caused the cronjob to spit out the error:

Fatal error:  Call to undefined function mb_strtoupper() in /home/ourbase/public_html/sites/all/modules/civicrm/packages/html2text/rcube_html2text.php on line 703

The key there is the function mb_strtoupper() [that's "string to upper"]. To fix this, you need to enable "mbstring" on your php/apache build. In my case, this was done through the WHM interface as follows:

Go to EasyApache
Customize the current profile
On Step 3 (?) click on "Exhaustive Options"
Check the checkbox for MBString
Build & Compile (takes a while), and wait until it's done.

If you don't have access to that solution, consider one of these lesser temporary solutions while you wait for someone to resolve it:
1. Remove all  and/or  tags or...
2. Manually put text in the plain text box


CiviEvent registration being assigned to the the wrong participant I have created an event that allows for one person to register multiple participants. I pulled a report two days ago with the list of registrants and one person had paid the event fee plus a donation to total $35, which is unique for this event so far.
Today, someone new registered themselves and another person for the event and paid, which is fine. However, now that $35 registration has been assigned to the new registrant's name and not the correct original registrant. This has also happened in previous events I've created when I enable multiple registrations by one person. Does anyone know how I fix this? I'm running Civi 4.6.2 and latest version of wordpress.

I guess you are getting bit confused with Event registration
When an Event is created to accept multiple participant

The first entered member is considered as the actual member register and he is the one who is charged for all the participant amount too (in respective of the member is new or existing)

I have done the same example against http://d46.demo.civicrm.org against Version 4.6.4 which is working alright - i don't think this is an issue

if you are still getting issue with this let me know with some example - thanks


how do I install an extension in wordpress I downloaded master .zip from the civi website, and it is in my download box. How do I get it to a folder in my website to put the zip into my program

If you have CiviCRM installed on your WordPress installation as a plugin and you are inside CiviCRM trying to install a CiviCRM Extension.  This is what I do to had an extension that is not automatically available with CiviCRM Extension manager.  I go to my server manager CPanel and use the file manager to upload the extension zip file.  I place the extension zip file in to the folder;  public_html/wp-content/plugins/files/civicrm/extensions. Extract the zip file and the new CiviCRM extension will become available to install within the CiviCRM Extension Manager.


Exporting multi-record set data Hi I am trying to export data held in a multi-record set. A end users would prefer to do this through the Civi interface rather than on the back-end database

The multi-value import link is buried in the help tips pop up... hoping the export is exists and is just similarly buried

We using v4.6.2

Unfortunately, at this time (CiviCRM 4.7.13) it's not possible to export multi-record custom fields through the CiviCRM interface.

This question: How do you export a multi record set? suggests an alternate method that may work, but it would take someone experienced at writing custom CiviReports.


How to restrict Profile Edit/Create Visibility? I have Profile which I need to provide access to only user who are Active Members, So I have restricted Listings to Active Members only but when I go to the

  civicrm/profile/edit?gid=20&reset=1

  civicrm/profile/create?gid=20&reset=1
  It still displays the profile page.
  How can I make sure edit and create profile is displayed only if its an active member ?

When I login with a member who is not a member and access the url of create/edit profile, it provides me the option to create or edit, how can I prevent that using civicrm settings ?

First of all you will need to update the CMS permission to remove view/edit data using profile. Configure ACL from CiviCRM UI to restrict group of contacts to update their contact using profile.

Note: I guess changing the permission will result in profile not available for any user if they dont have access to. If you want to restrict specfic profile and enable all others them i think you can use profile hooks to return access denied.


Cron not working with joomla Joomla 3.7.0
CiviCRM 4.7.19
PHP 5.5.38

I try to get a cron job running for civicrm with a joomla installation.

I looks the the wget does not allows me to get the third parameter over. see example eq1 and eq4. Quotes did not help either. See eq 2 and eq3

examples are senitize (PASSWORD USER MYKEY)
HSOMETHING stands for https . Stack exchange does not let me post otherwise

Please advice.

eq1
wget -O - -t 1 HSOMETHING://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?key=MYKEY&name=USER&pass=PASSWORD

Resolving www.MYSITE.org... 66.198.240.51
Connecting to www.MYSITE.org|66.198.240.51|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 76 [text/html]
Saving to: “STDOUT”

0% [ ] 0 --.-K/s ERROR: You need to send a valid user name and password to execute this file
100%[====================================================================================>] 76 --.-K/s in 0s

2017-05-21 17:34:57 (19.5 MB/s) - written to stdout [76/76]

[1]- Done wget -O - -t 1 HSOMETHING://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?key=MYKEY
[2]+ Done name=USER

**************************************************************************************
eq2

wget -O - -t 1 "HSOMETHING://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?name=USER&pass=PASSWORD@ki23&key=MYKEY"

Resolving www.MYSITE.org... 66.198.240.51
Connecting to www.MYSITE.org|66.198.240.51|:443... connected.
HTTP request sent, awaiting response... 500 Internal Server Error
2017-05-21 17:37:04 ERROR 500: Internal Server Error.

**************************************************************************************
eq3
wget -O - -t 1 'HSOMETHING://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?name=USER&pass=PASSWORD@ki23&key=MYKEY'

Resolving www.MYSITE.org... 66.198.240.51
Connecting to www.MYSITE.org|66.198.240.51|:443... connected.
HTTP request sent, awaiting response... 500 Internal Server Error
2017-05-21 17:38:45 ERROR 500: Internal Server Error.

**************************************************************************************
eq4
wget -O - -t 1 HSOMETHING://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?key=MYKEY&name=USER&pass=PASSWORD@ki23
Resolving www.MYSITE.org... 66.198.240.51
Connecting to www.MYSITE.org|66.198.240.51|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 76 [text/html]
Saving to: “STDOUT”

0% [ ] 0 --.-K/s ERROR: You need to send a valid user name and password to execute this file
100%[====================================================================================>] 76 --.-K/s in 0s

2017-05-21 17:41:04 (23.3 MB/s) - written to stdout [76/76]

[1]- Done wget -O - -t 1 HSOMETHING://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?key=MYKEY
[2]+ Done name=USER

Joomla 3.7.1 made this work from the command line. But from a c-panel cron job I got the error:
"cli.php can only be run from command line."

Now this also works from the command line as well as with the c-panel cron job. : Note the back slashes!

wget -O - -t 1 https://www.MYSITE.org/administrator/components/com_civicrm/civicrm/bin/cron.php?key=THEKEY\&name=THEUSER\&pass=THEPASSWORD


How to send subscriptions to a non-primary address We would like to manage the sending of our magazine via CiviMember as « The Monthly » made it.

We have an additional problem: certain contacts wish to receive their subscription to an address different from the primary address, the primary address remaining the address for the others sendings.

Is there a (simple ?) way to associate a particular address with a membership ?

You can create a new Location Type at Administer > Customize Data and Screens > Dropdown Options > Location Types. I take it that most contacts will use the Primary Snailmail address, but that a small proportion won't. So I would manually create and manage the use of the override location type for the smaller group.

There are various ways to handle the creation of the mailing labels. You could either export both primary and override addresses to Excel and then do a bit of coding in Excel to choose the override if it exists else the primary. Or you could do a bit of custom coding to provide tokens in CiviCRM that do the same thing. You could probably also do it in Smarty fairly easily if you have full mailing address for both locations in two variables exposed to Smarty.

Unfortunately I can't think of an easy way to print the labels in core CiviCRM. Maybe others will. Good luck.


Problem upgrading CiviCRM on Joomla with Flexmailer + Mosaico installed Today I've been trying to get all of my known CiviCRM on Joomla probelms documented as issues to help improve the CiviCRM Joomla experience. One glitch that I'm trying to investigate is that on my production site since installing Mosaico (and Flexmailer) I've had a problem with each CiviCRM version upgrade. The CiviCRM Database Upgrade Utility fails unless I disable Flexmailer (and Mosaico) first.

Most recently, going from 5.16.1 to 5.16.3, after installing 5.16.3 I didn't click on the CiviCRM Database Upgrade Utility link this time but instead went to Administer > Administration Console > System Status, then clicked on the alert for "Database update required". That gave me the following error:

Class 'Civi\FlexMailer\Services' not found

After disabling Mosaico and Flexmailer I was able to proceed with the database upgrade and it completed successfully.

On other occasions I have usually clicked the CiviCRM Database Upgrade Utility link. I don't know if that was the difference, but previously the database upgrade started but then stalled part way through. I didn't manage to reproduce it this time and couldn't find anything in the log.

This comment is I think regarding the same problem.

Because I can't reproduce this on a clean installation I haven't raised an issue yet. Can anybody else confirm if this is a problem for them currently?

I have Flexmailer 1.1.0 and Mosaico 2.1.1559427853 installed and Joomla 3.9.11.

I did had similar problem while upgrading mosaico recently. I disabled the extension to proceed with the database upgrade utility.


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


Extended Reports Bug? I have recently installed the Extended Reports Extension within civiCRM. However, I am noticing some strange behavior when I attempt to make a template.

Within the Bookkeeping with extra fields template, if I use the group by function, I do not receive the proper line totals (they are not adding up).

For instance, if I group by line item financial type, it groups it correctly, but the line totals are wrong:

If I use the Contribution Based Line Item report, the totals are accurate. However, I need the account code on this report, which is why I was using the bookkeeping report.

Any idea on how to fix this or make the account codes available in the Contribution Based Report? I looked through the code and was able to make the financial account columns appear; however, upon selecting the columns I got a "DB not available error". I believe I need to add something similar to the code below, but I wasn't exactly sure how to do it correctly.

function joinActivityFromCase() {
$this->_from .= "
  LEFT JOIN {$this->_caseActivityTable} cca ON cca.case_id = {$this->_aliases['civicrm_case']}.id
  LEFT JOIN civicrm_activity {$this->_aliases['civicrm_activity']} ON {$this->_aliases['civicrm_activity']}.id = cca.activity_id";
}

I couldn't find a place to report the bug on civiCRM, so I posted it here.

With most extensions, the place to report bugs is on Github. In this case you want to go to https://github.com/eileenmcnaughton/nz.co.fuzion.extendedreport and click on the "Issues" tab at the top.


What is the recommended Wordpress equivalent for drupal-views CiviCRM manual mentions X-Data Toolkit as a potential substitution to drupal-views. However X-Data Tookit has not been updated in years and its documentation is not available anymore.

What other plugin would you recomend as a replacement? A first Google search revealed :

TablePress - does not support MySQL as data source, ev. one could write a plugin for TablePress
wpDataTables – Not free, but supports MySQL and also has Charts
Wordpress Dynamic Tables - Not free

Are there other alternatives I have not yet seen?

Great question. Ideally you would create a bridge to the civicrm API and not hit the database directly.  I've floated it with two vendors:
https://wp-types.com/ and  http://pods.io/

You may find this useful: http://pods.io/docs/comparisons/compare-content-types/


New CiviMail does not use the 'CMS editor' set in 'Display settings' We recently upgraded to 4.6.2 but CiviMail does not present the Joomla Default WYSIWYG editor like it did in previous versions but only displays the CKEditor.

We are using JCE editor and it's ability to more easily upload and manage images worked well.

Also, the CKEditor is throwing a 404 error when I try to 'Browse Server' for an image, (Send it to the server doesn't work either).

This all means that it is a bit difficult for users to add images to mailings.

Is there any way of getting the new civimail to use the default CMS WYSYWIG like before?

Cheers,

Dave

My understanding is that the new CiviMail approach necessitated disabling the "use CMS default" option for WYSIWYG.  The new preferred approach is CiviCRM extensions to implement other WYSIWYG editors - it took about an hour to create the first WYSIWYG extension for CiviCRM, and others can build even quicker, using that extension as a guide.  You can find it here: https://github.com/relldoesphp/com.aghstrategies.tinymce


$formValues field names Editing the work flow messages, I'm looking for the field names preceded by $formValues.
More specific I would like to include a line displaying the origin of the contribution in the work flow message "Contributions - Receipt (off-line)".
Where to find all the field names that can be used?

Without knowing on what form you are exactly, there is bound to be something like contributionId or contributionID in your form.

You can find the name in the $form object (try debugging the object for the specific name) and then use $contributionId = $form->getVar('_contributionID') to get the field and use it in your hook (assuming you are using a hook).


Include PDF welcome package attachment with email receipt I am trying to sort out if I can include a PDF attachment for new members with their registration confirmation email. There are several different member types, each would require a different PDF. The content of the PDFs is too long to put directly into the confirmation email. The PDF contains a welcome message and information about events, benefits, and other details for new members.

I can see how to include a PDF receipt in the admin settings but no where to include any other type of PDF. I see the option to set the maximum number of files (documents, images, etc.) which can be attached to emails or activities but I can't find where to configure what files to attach.

Is this possible?

Thanks!

(Using CiviCRM 4.7.24)

You can set up Scheduled Reminders to fire x hours after Membership Start/Join Date - and specify which membership types these relate to.

You should therefore either be able to attach the PDF to these, or, better in many cases, provide a link to the PDF so the attachment isn't part of the email.


Scheduled reminders triggered by new relationship The Objective:

We'd like to set up a template email that will send (one time only) to individuals who have a specific relationship type added to their contact record.

E.g.

(Individual) A is a member of (organisation) X. Both A and X are in Civi as contacts.
A has a new relationship to X (e.g. of type 'Chairman of') added to their contact record
This triggers an automated email to be sent to A (with helpful content specific to that relationship type)

What we tried

I thought I might be able to do this through:

setting up a Smart Group (for all contacts with relationship type 'Chairman of')
setting up a scheduled reminder with recipients limited to the Smart Group so that every time a new contact is added to the Smart Group they would be sent the scheduled reminder.

However, this doesn't seem to be enough, as there's no 'entity' (of 'contact in group' or 'relationship type') or similar to trigger the scheduled reminder.

Any ideas if/how we might be able to get this going?

I think using the CiviRules extension (to be found at https://civicrm.org/extensions/civirules) will help you with what you want to achieve.

You will also need to install the Email API extension (found at https://civicrm.org/extensions/e-mail-api) to be able to use the CiviRules action to send an email.

I do not know if the trigger 'new relationship' has been thoroughly tested, but you start should be to read the CiviRules documentation and see if this might do the trick.


events listing "no layouts found" after WP upgrade After upgrading from 4.7.10 to 4.7.24 having problems displaying events on public pages
eg https://leep.ngo/civicrm/?page=CiviCRM&q=civicrm/event/register&reset=1&id=1881
or
https://leep.ngo/civicrm/?page=CiviCRM&q=civicrm/event/ical&reset=1&list=1&html=1

Page is correct site template but page is blank - message is "no layouts found"

Was working fine pre-upgrade
ALSO works fine if I revert to standard twenty sixteen template.
Theme developer is hard to contact and I don't know much about WP but can anyone indicate what the upgrade might have changed
cheers

The theme developer fixed it. His explanation:

"We have updated and fixed that issue. The previous script was detecting a URL structure and would display that particular template, it seemed the URL structure had changed"

doesn't mean much to me but maybe will help others


Custom Hook causes for a PCP problems on event registration page I have a custom function written to show the name of the contribution page that a PCP is a part of. After some help from the community, I got it working, hooray!
Trying to write a hook to add contribution page name to Main.tpl I'm super close

But on my event registration links (not contribution pages, oddly enough) or PCP creation links - I get the following error 'CiviCRM_API3_Exception: "Expected one ContributionPage but found 25"' (I have a total of 25 contribution pages set up so I can see why it says it finds 25 but why it's looking in the first place I'm not sure.

Here is the final code I'm using

function wordpress_civicrm_buildForm($formName, &$form) {
    $config = CRM_Core_Config::singleton();
    if ( $config->userFrameworkFrontend ) {

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

    }
}

Ideas?

The problem is that your hook is executing unconditionally on every form. To target just the contribution form, the first line inside your function should be if ($formName == 'CRM_Contribute_Form_Contribution_Main') {.


Getting contact address with membership on paypal standard How do you get the contact created by the membership contribution screen to return the name and address (like the shipping address...) of the Paypal standard payment...

The transaction goes through properly in the sandbox (ipn ok) but contact created for the new membership has no name or address, just the email...

Thanks..

Sounds like you don't have any profiles enabled on the form. You can start with the basic name and address one CiviCRM comes with out of the box or create one of your own to collect the fields you're after.

You just click on the profiles tab when managing the contribution page to enable the one(s) you'd like members to complete when they register.

Here's more information about CiviCRM profiles: http://book.civicrm.org/user/current/organising-your-data/profiles/