本文整理汇总了PHP中CRM_Price_BAO_Set::setDefaultPriceSet方法的典型用法代码示例。如果您正苦于以下问题:PHP CRM_Price_BAO_Set::setDefaultPriceSet方法的具体用法?PHP CRM_Price_BAO_Set::setDefaultPriceSet怎么用?PHP CRM_Price_BAO_Set::setDefaultPriceSet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CRM_Price_BAO_Set
的用法示例。
在下文中一共展示了CRM_Price_BAO_Set::setDefaultPriceSet方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setDefaultValues
/**
* This function sets the default values for the form. MobileProvider that in edit/view mode
* the default values are retrieved from the database
*
* @access public
*
* @return None
*/
public function setDefaultValues()
{
if ($this->_cdType) {
return CRM_Custom_Form_CustomData::setDefaultValues($this);
}
if ($this->_priceSetId) {
return CRM_Price_BAO_Set::setDefaultPriceSet($this, $defaults);
}
$defaults = parent::setDefaultValues();
//setting default join date and receive date
list($now) = CRM_Utils_Date::setDateDefaults();
if ($this->_action == CRM_Core_Action::ADD) {
$defaults['receive_date'] = $now;
}
if (is_numeric($this->_memType)) {
$defaults["membership_type_id"] = array();
$defaults["membership_type_id"][0] = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_MembershipType', $this->_memType, 'member_of_contact_id', 'id');
$defaults["membership_type_id"][1] = $this->_memType;
} else {
$defaults["membership_type_id"] = $this->_memType;
}
if (CRM_Utils_Array::value('id', $defaults)) {
if ($this->_onlinePendingContributionId) {
$defaults['record_contribution'] = $this->_onlinePendingContributionId;
} else {
$contributionId = CRM_Core_DAO::singleValueQuery("\n SELECT contribution_id\n FROM civicrm_membership_payment\n WHERE membership_id = {$this->_id}\n ORDER BY contribution_id\n DESC limit 1");
if ($contributionId) {
$defaults['record_contribution'] = $contributionId;
}
}
}
if (CRM_Utils_Array::value('record_contribution', $defaults) && !$this->_mode) {
$contributionParams = array('id' => $defaults['record_contribution']);
$contributionIds = array();
//keep main object campaign in hand.
$memberCampaignId = CRM_Utils_Array::value('campaign_id', $defaults);
CRM_Contribute_BAO_Contribution::getValues($contributionParams, $defaults, $contributionIds);
//get back original object campaign id.
$defaults['campaign_id'] = $memberCampaignId;
if (CRM_Utils_Array::value('receive_date', $defaults)) {
list($defaults['receive_date']) = CRM_Utils_Date::setDateDefaults($defaults['receive_date']);
}
// Contribution::getValues() over-writes the membership record's source field value - so we need to restore it.
if (CRM_Utils_Array::value('membership_source', $defaults)) {
$defaults['source'] = $defaults['membership_source'];
}
}
// User must explicitly choose to send a receipt in both add and update mode.
$defaults['send_receipt'] = 0;
if ($this->_action & CRM_Core_Action::UPDATE) {
// in this mode by default uncheck this checkbox
unset($defaults['record_contribution']);
}
if (CRM_Utils_Array::value('id', $defaults)) {
$subscriptionCancelled = CRM_Member_BAO_Membership::isSubscriptionCancelled($this->_id);
}
$alreadyAutoRenew = FALSE;
if (CRM_Utils_Array::value('contribution_recur_id', $defaults) && !$subscriptionCancelled) {
$defaults['auto_renew'] = 1;
$alreadyAutoRenew = TRUE;
}
$this->assign('alreadyAutoRenew', $alreadyAutoRenew);
$this->assign("member_is_test", CRM_Utils_Array::value('member_is_test', $defaults));
$this->assign('membership_status_id', CRM_Utils_Array::value('status_id', $defaults));
if (CRM_Utils_Array::value('is_pay_later', $defaults)) {
$this->assign('is_pay_later', TRUE);
}
if ($this->_mode) {
$fields = array();
foreach ($this->_fields as $name => $dontCare) {
$fields[$name] = 1;
}
$names = array("first_name", "middle_name", "last_name", "street_address-{$this->_bltID}", "city-{$this->_bltID}", "postal_code-{$this->_bltID}", "country_id-{$this->_bltID}", "state_province_id-{$this->_bltID}");
foreach ($names as $name) {
$fields[$name] = 1;
}
$fields["state_province-{$this->_bltID}"] = 1;
$fields["country-{$this->_bltID}"] = 1;
$fields["email-{$this->_bltID}"] = 1;
$fields["email-Primary"] = 1;
if ($this->_contactID) {
CRM_Core_BAO_UFGroup::setProfileDefaults($this->_contactID, $fields, $this->_defaults);
}
// use primary email address if billing email address is empty
if (empty($this->_defaults["email-{$this->_bltID}"]) && !empty($this->_defaults["email-Primary"])) {
$defaults["email-{$this->_bltID}"] = $this->_defaults["email-Primary"];
}
foreach ($names as $name) {
if (!empty($this->_defaults[$name])) {
$defaults["billing_" . $name] = $this->_defaults[$name];
}
}
//.........这里部分代码省略.........
示例2: setDefaultValues
//.........这里部分代码省略.........
}
}
//set custom field defaults set by admin if value is not set
if (!empty($this->_fields)) {
//load default campaign from page.
if (array_key_exists('contribution_campaign_id', $this->_fields)) {
$this->_defaults['contribution_campaign_id'] = CRM_Utils_Array::value('campaign_id', $this->_values);
}
//set custom field defaults
foreach ($this->_fields as $name => $field) {
if ($customFieldID = CRM_Core_BAO_CustomField::getKeyID($name)) {
if (!isset($this->_defaults[$name])) {
CRM_Core_BAO_CustomField::setProfileDefaults($customFieldID, $name, $this->_defaults, NULL, CRM_Profile_Form::MODE_REGISTER);
}
}
}
}
//set default membership for membershipship block
if ($this->_membershipBlock) {
$this->_defaults['selectMembership'] = $defaultMemType = $this->_defaultMemTypeId ? $this->_defaultMemTypeId : CRM_Utils_Array::value('membership_type_default', $this->_membershipBlock);
}
// // hack to simplify credit card entry for testing
// $this->_defaults['credit_card_type'] = 'Visa';
// $this->_defaults['amount'] = 168;
// $this->_defaults['credit_card_number'] = '4807731747657838';
// $this->_defaults['cvv2'] = '000';
// $this->_defaults['credit_card_exp_date'] = array( 'Y' => '2012', 'M' => '05' );
// // hack to simplify direct debit entry for testing
// $this->_defaults['account_holder'] = 'Max Müller';
// $this->_defaults['bank_account_number'] = '12345678';
// $this->_defaults['bank_identification_number'] = '12030000';
// $this->_defaults['bank_name'] = 'Bankname';
//build set default for pledge overdue payment.
if (CRM_Utils_Array::value('pledge_id', $this->_values)) {
//get all payment statuses.
$statuses = array();
$returnProperties = array('status_id');
CRM_Core_DAO::commonRetrieveAll('CRM_Pledge_DAO_PledgePayment', 'pledge_id', $this->_values['pledge_id'], $statuses, $returnProperties);
$paymentStatusTypes = CRM_Contribute_PseudoConstant::contributionStatus(NULL, 'name');
$duePayment = FALSE;
foreach ($statuses as $payId => $value) {
if ($paymentStatusTypes[$value['status_id']] == 'Overdue') {
$this->_defaults['pledge_amount'][$payId] = 1;
} elseif (!$duePayment && $paymentStatusTypes[$value['status_id']] == 'Pending') {
$this->_defaults['pledge_amount'][$payId] = 1;
$duePayment = TRUE;
}
}
} elseif (CRM_Utils_Array::value('pledge_block_id', $this->_values)) {
//set default to one time contribution.
$this->_defaults['is_pledge'] = 0;
}
// to process Custom data that are appended to URL
$getDefaults = CRM_Core_BAO_CustomGroup::extractGetParams($this, "'Contact', 'Individual', 'Contribution'");
if (!empty($getDefaults)) {
$this->_defaults = array_merge($this->_defaults, $getDefaults);
}
$config = CRM_Core_Config::singleton();
// set default country from config if no country set
if (!CRM_Utils_Array::value("billing_country_id-{$this->_bltID}", $this->_defaults)) {
$this->_defaults["billing_country_id-{$this->_bltID}"] = $config->defaultContactCountry;
}
// now fix all state country selectors
CRM_Core_BAO_Address::fixAllStateSelects($this, $this->_defaults);
if ($this->_priceSetId) {
if ($this->_useForMember && !empty($this->_currentMemberships)) {
$selectedCurrentMemTypes = array();
foreach ($this->_priceSet['fields'] as $key => $val) {
$isHavingMemid = FALSE;
foreach ($val['options'] as $keys => $values) {
$opMemTypeId = CRM_Utils_Array::value('membership_type_id', $values);
if ($opMemTypeId && in_array($opMemTypeId, $this->_currentMemberships) && !in_array($opMemTypeId, $selectedCurrentMemTypes)) {
if ($val['html_type'] == 'CheckBox') {
$this->_defaults["price_{$key}"][$keys] = 1;
} else {
$this->_defaults["price_{$key}"] = $keys;
}
$selectedCurrentMemTypes[] = $values['membership_type_id'];
} elseif (CRM_Utils_Array::value('is_default', $values) && !$opMemTypeId && (!isset($this->_defaults["price_{$key}"]) || $val['html_type'] == 'CheckBox' && !isset($this->_defaults["price_{$key}"][$keys]))) {
if ($val['html_type'] == 'CheckBox') {
$this->_defaults["price_{$key}"][$keys] = 1;
} else {
$this->_defaults["price_{$key}"] = $keys;
}
}
}
}
} else {
CRM_Price_BAO_Set::setDefaultPriceSet($this, $this->_defaults);
}
}
if (!empty($this->_paymentProcessors)) {
foreach ($this->_paymentProcessors as $pid => $value) {
if (CRM_Utils_Array::value('is_default', $value)) {
$this->_defaults['payment_processor'] = $pid;
}
}
}
return $this->_defaults;
}