Remove unused undeclared property _params, provide __get for transitional support
authorEileen McNaughton <emcnaughton@wikimedia.org>
Mon, 18 Dec 2023 19:06:49 +0000 (08:06 +1300)
committerEileen McNaughton <emcnaughton@wikimedia.org>
Mon, 18 Dec 2023 19:07:01 +0000 (08:07 +1300)
CRM/Contribute/Form/AbstractEditPayment.php
CRM/Event/Form/Participant.php

index aff8f72a668ce48a66731ec12c5d4e6e73383272..4d2e87b2aedec45648c5e5dace4989c660532cc0 100644 (file)
@@ -234,6 +234,24 @@ class CRM_Contribute_Form_AbstractEditPayment extends CRM_Contact_Form_Task {
    */
   protected $invoiceID;
 
+  /**
+   * Provide support for extensions that are used to being able to retrieve _lineItem
+   *
+   * Note extension should call getPriceSetID() and getLineItems() directly.
+   * They are supported for external use per the api annotation.
+   *
+   * @param string $name
+   *
+   * @noinspection PhpUnhandledExceptionInspection
+   */
+  public function __get($name) {
+    if ($name === '_params') {
+      CRM_Core_Error::deprecatedWarning('attempt to access undefined property _params - use externally supported function getSubmittedValues()');
+      return $this->getSubmittedValues();
+    }
+    CRM_Core_Error::deprecatedWarning('attempt to access invalid property :' . $name);
+  }
+
   /**
    * Get the unique invoice ID.
    *
index 6a75c28eaf931274e6fd9cf0c5cfc6b52e16ec31..a1d4eb4083f095ebfcb6a2be950cae26218f3858 100644 (file)
@@ -876,9 +876,6 @@ class CRM_Event_Form_Participant extends CRM_Contribute_Form_AbstractEditPayment
     if ($this->_isPaidEvent) {
       [$lineItem, $params] = $this->preparePaidEventProcessing($params);
     }
-    // @todo - params is unused - remove in favour of __get
-    // but there is another parameter we need to fix first.
-    $this->_params = $params;
     // @todo - stop assigning these - pass financial_trxnId in token context
     // and swap template to use tokens.
     $this->assign('credit_card_type', $this->getSubmittedValue('credit_card_type'));