2

This issue has been going on for quite some time and I was hoping I just needed to upgrade the CiviCRM but I am on 4.7.27 now and am wondering if I have possibly set something up incorrectly.

Our users are able to pay for a membership via a CiviContribute page. The membership is for an online training subscription and I use Drupal's CiviMember Role Sync module to then give users with active memberships of this kind a special role to access other parts of the website.

When users submit payment and subscribe, an end date to their membership is recorded but not a start date or a member since date.

Things to note:

  • users must renew manually and are not on any kind of auto-renew
  • the membership is good for one year
  • some users use a discount code, but the bug seems to affect anyone that signs themselves up
  • if we sign someone up through the back end, it records everything correctly

enter image description here

Edit: Here is a sample of the membership date fields of an entry in the civicrm_membership table;

                   id: 4942
           contact_id: 131490
   membership_type_id: 1
            join_date: NULL
           start_date: NULL
             end_date: 2018-10-23

Edit2: The civicrm_membership_log entries for this id shows:

select * from civicrm_membership_log where membership_id=4942 \G
*************************** 1. row ***************************
                id: 12498
     membership_id: 4942
         status_id: 5
        start_date: NULL
          end_date: NULL
       modified_id: 131490
     modified_date: 2017-10-23
membership_type_id: 1
       max_related: NULL
*************************** 2. row ***************************
                id: 12499
     membership_id: 4942
         status_id: 1
        start_date: NULL
          end_date: 2018-10-23
       modified_id: 131490
     modified_date: 2017-10-23
membership_type_id: 1
       max_related: NULL
*************************** 3. row ***************************
                id: 12518
     membership_id: 4942
         status_id: 2
        start_date: NULL
          end_date: 2018-10-23
       modified_id: 2
     modified_date: 2017-10-23
membership_type_id: 1
       max_related: NULL
3 rows in set (0.00 sec)

Important to note that memberships status are updating correctly and access is appropriate and doesn't seem to be affected by this bug. In fact, it's not causing any noticeable issues because the mechanism that updates memberships is based on the end date, which is being recorded.

Edit 3: The effects seem to have started a couple weeks after I upgraded from a 4.3 system to 4.7.15, however, I don't think the upgrade did it because it was a couple weeks after. It seems to coincide with this issue, when I had to modify some code in packages/Net/SMTP.php to accommodate a startTLS issue, however, not sure if this is related. Also I noticed that the packages/Net/SMTP.php doesn't exist anymore after my upgrade so it's probably not that.

  • That sounds real odd - are you getting the values in the db? – petednz - fuzion Dec 10 '17 at 20:15
  • DB records "null". I edited my post with details. – Christia Dec 11 '17 at 4:54
  • Do you have any customisations? Extensions which might impact on Memberships eg CiviRules? – petednz - fuzion Dec 11 '17 at 18:03
  • The only extensions from when this started is CiviDiscount. I don't believe there are any customizations, at least for sure not in the codebase. – Christia Dec 11 '17 at 18:32
  • Anything odd about your Member Status - thought I can't see how this could affect just Join/Start Date. Ah, can you look in the log_civicrm_membership table for that record 4942 and tell us if the Join/Start gets created then removed, or just never exists – petednz - fuzion Dec 11 '17 at 18:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.