Example #1
0
 /**
  * Find payments which can be safely canceled.
  *
  * @param int $pledgeID
  * @return array of int (civicrm_pledge_payment.id)
  */
 public static function findCancelablePayments($pledgeID)
 {
     $statuses = array_flip(CRM_Contribute_PseudoConstant::contributionStatus());
     $paymentDAO = new CRM_Pledge_DAO_PledgePayment();
     $paymentDAO->pledge_id = $pledgeID;
     $paymentDAO->whereAdd(sprintf("status_id IN (%d,%d)", $statuses['Overdue'], $statuses['Pending']));
     $paymentDAO->find();
     $paymentIDs = array();
     while ($paymentDAO->fetch()) {
         $paymentIDs[] = $paymentDAO->id;
     }
     return $paymentIDs;
 }