Uploaded image for project: 'CiviCRM'
  1. CiviCRM
  2. CRM-16209

enotice Warning: implode(): Invalid arguments passed in implode() (line 113 of /CRM/Event/BAO/Participant.php). =>

    Details

    • Type: Bug
    • Status: Done/Fixed
    • Priority: Trivial
    • Resolution: Fixed/Completed
    • Affects Version/s: 4.6
    • Fix Version/s: 4.6.1
    • Component/s: None
    • Labels:
      None
    • Documentation Required?:
      None

      Description

      I can't quite figure out why I'm hitting this because it seems like it's not new & 'should' be seen by others -maybe there is a php version in play?

      When I do a back-office event registration I get the enotice in the title.

      The issue appears to be that

      if (in_array(key($params['role_id']), CRM_Core_DAO::acceptedSQLOperators())) {

      is resolving to TRUE when key($params['role_id']) == 0

      even though zero is not in the acceptedSQLOperators array.

      However, adding the strict param (TRUE) to the in_array call seems to make the evaluation correct. The in_array manual (http://php.net/manual/en/function.in-array.php) comments could be summarised as 'without strict checking here be dragons'.

        Attachments

          Activity

            People

            • Assignee:
              kurund Kurund Jalmi
              Reporter:
              eileen Eileen McNaughton
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: