コード例 #1
0
ファイル: Premium.php プロジェクト: nielosz/civicrm-core
 /**
  * Delete premium associated w/ contribution page.
  *
  * @param int $contributionPageID
  */
 public static function deletePremium($contributionPageID)
 {
     if (!$contributionPageID) {
         return;
     }
     //need to delete entries from civicrm_premiums
     //as well as from civicrm_premiums_product, CRM-4586
     $params = array('entity_id' => $contributionPageID, 'entity_table' => 'civicrm_contribution_page');
     $premium = new CRM_Contribute_DAO_Premium();
     $premium->copyValues($params);
     $premium->find();
     while ($premium->fetch()) {
         //lets delete from civicrm_premiums_product
         $premiumsProduct = new CRM_Contribute_DAO_PremiumsProduct();
         $premiumsProduct->premiums_id = $premium->id;
         $premiumsProduct->delete();
         //now delete premium
         $premium->delete();
     }
 }
コード例 #2
0
 /**
  * This function sets the default values for the form. Note that in edit/view mode
  * the default values are retrieved from the database
  *
  * @access public
  * @return void
  */
 function setDefaultValues()
 {
     $defaults = array();
     if ($this->_pid) {
         $dao = new CRM_Contribute_DAO_PremiumsProduct();
         $dao->id = $this->_pid;
         $dao->find(true);
         $defaults['product_id'] = $dao->product_id;
         $defaults['weight'] = $dao->weight;
     }
     if (!isset($defaults['weight']) || !$defaults['weight']) {
         $pageID = CRM_Utils_Request::retrieve('id', 'Positive', $this, false, 0);
         require_once 'CRM/Contribute/DAO/Premium.php';
         $dao = new CRM_Contribute_DAO_Premium();
         $dao->entity_table = 'civicrm_contribution_page';
         $dao->entity_id = $pageID;
         $dao->find(true);
         $premiumID = $dao->id;
         $sql = 'SELECT max( weight ) as max_weight FROM civicrm_premiums_product WHERE premiums_id = %1';
         $params = array(1 => array($premiumID, 'Integer'));
         $dao =& CRM_Core_DAO::executeQuery($sql, $params);
         $dao->fetch();
         $defaults['weight'] = $dao->max_weight + 1;
     }
     return $defaults;
 }