I want to identify repeat events and mark it as not paid event programmatically and
only if the user has paid for the main event, I want to allow them for repeat events
Right now I don't see any value in event array which indicates that the event is a repeat event How can I implement it?

 "id": "49",
            "title": "Title",
            "event_title": "Title",
            "summary": "Summary",
            "description": "Description",
            "event_description": "Description",
            "event_type_id": "2",
            "participant_listing_id": "1",
            "is_public": "0",
            "start_date": "2019-01-15 20:20:00",
            "event_start_date": "2019-01-15 20:20:00",
            "end_date": "2019-01-17 00:00:00",
            "event_end_date": "2019-01-17 00:00:00",
            "is_online_registration": "0",
            "max_participants": "22",
            "event_full_text": "This event is currently full.",
            "is_monetary": "0",
            "is_map": "0",
            "is_active": "0",
            "is_show_location": "1",
            "default_role_id": "2",
            "is_email_confirm": "0",
            "is_pay_later": "0",
            "is_partial_payment": "0",
            "is_multiple_registrations": "0",
            "max_additional_participants": "0",
            "allow_same_participant_emails": "0",
            "has_waitlist": "0",
            "allow_selfcancelxfer": "0",
            "selfcancelxfer_time": "0",
            "is_template": "0",
            "created_id": "2",
            "created_date": "2019-01-07 20:22:38",
            "is_share": "0",
            "is_confirm_enabled": "1",
            "is_billing_required": "0"

The repeat entity is stored in civicrm_recurring_entity table so you might need to use the RecurringEntity api for this purpose. The following should result the repeating events for you -

$result = civicrm_api3('RecurringEntity', 'get', [
  'sequential' => 1,
  'entity_table' => "civicrm_event",
  'parent_id' => main_event_id,

Similarly the api can also be used to find repeated activities.

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.