Beispiel #1
0
 /**
  * Delete the price set.
  *
  * @param int $id
  *   Price Set id.
  *
  * @return bool
  *   false if fields exist for this set, true if the
  *   set could be deleted
  *
  */
 public static function deleteSet($id)
 {
     // remove from all inactive forms
     $usedBy = self::getUsedBy($id);
     if (isset($usedBy['civicrm_event'])) {
         foreach ($usedBy['civicrm_event'] as $eventId => $unused) {
             $eventDAO = new CRM_Event_DAO_Event();
             $eventDAO->id = $eventId;
             $eventDAO->find();
             while ($eventDAO->fetch()) {
                 self::removeFrom('civicrm_event', $eventDAO->id);
             }
         }
     }
     // delete price fields
     $priceField = new CRM_Upgrade_Snapshot_V4p2_Price_DAO_Field();
     $priceField->price_set_id = $id;
     $priceField->find();
     while ($priceField->fetch()) {
         // delete options first
         CRM_Upgrade_Snapshot_V4p2_Price_BAO_Field::deleteField($priceField->id);
     }
     $set = new CRM_Upgrade_Snapshot_V4p2_Price_DAO_Set();
     $set->id = $id;
     return $set->delete();
 }