本文整理汇总了PHP中CRM_Member_BAO_Membership::getMembershipContributionId方法的典型用法代码示例。如果您正苦于以下问题:PHP CRM_Member_BAO_Membership::getMembershipContributionId方法的具体用法?PHP CRM_Member_BAO_Membership::getMembershipContributionId怎么用?PHP CRM_Member_BAO_Membership::getMembershipContributionId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CRM_Member_BAO_Membership
的用法示例。
在下文中一共展示了CRM_Member_BAO_Membership::getMembershipContributionId方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: postProcess
//.........这里部分代码省略.........
$params['status_id'] = array_search('Pending', $allMemberStatus);
$params['skipStatusCal'] = TRUE;
// unset send-receipt option, since receipt will be sent when ipn is received.
unset($this->_params['send_receipt'], $formValues['send_receipt']);
//as membership is pending set dates to null.
$memberDates = array('join_date' => 'joinDate', 'start_date' => 'startDate', 'end_date' => 'endDate');
foreach ($memberDates as $dp => $dv) {
${$dv} = NULL;
foreach ($this->_memTypeSelected as $memType) {
$membershipTypeValues[$memType][$dv] = NULL;
}
}
}
$params['receive_date'] = $now;
$params['invoice_id'] = $this->_params['invoiceID'];
$params['contribution_source'] = ts('%1 Membership Signup: Credit card or direct debit (by %2)', array(1 => $membershipType, 2 => $userName));
$params['source'] = $formValues['source'] ? $formValues['source'] : $params['contribution_source'];
$params['trxn_id'] = CRM_Utils_Array::value('trxn_id', $result);
$params['payment_instrument_id'] = 1;
$params['is_test'] = $this->_mode == 'live' ? 0 : 1;
if (!empty($this->_params['send_receipt'])) {
$params['receipt_date'] = $now;
} else {
$params['receipt_date'] = NULL;
}
$this->set('params', $this->_params);
$this->assign('trxn_id', CRM_Utils_Array::value('trxn_id', $result));
$this->assign('receive_date', CRM_Utils_Date::mysqlToIso($params['receive_date']));
// required for creating membership for related contacts
$params['action'] = $this->_action;
//create membership record.
$count = 0;
foreach ($this->_memTypeSelected as $memType) {
if ($count && ($relateContribution = CRM_Member_BAO_Membership::getMembershipContributionId($membership->id))) {
$membershipTypeValues[$memType]['relate_contribution_id'] = $relateContribution;
}
$membershipParams = array_merge($membershipTypeValues[$memType], $params);
//CRM-15366
if (!empty($softParams) && empty($paymentParams['is_recur'])) {
$membershipParams['soft_credit'] = $softParams;
}
if (!empty($paymentParams['is_recur']) && CRM_Utils_Array::value('payment_status_id', $result) == 1) {
// CRM-16993 we have a situation where line items have already been created.
unset($membershipParams['lineItems']);
}
$membership = CRM_Member_BAO_Membership::create($membershipParams, $ids);
$params['contribution'] = CRM_Utils_Array::value('contribution', $membershipParams);
unset($params['lineItems']);
$this->_membershipIDs[] = $membership->id;
$createdMemberships[$memType] = $membership;
$count++;
}
} else {
$params['action'] = $this->_action;
if ($this->_onlinePendingContributionId && !empty($formValues['record_contribution'])) {
// update membership as well as contribution object, CRM-4395
$params['contribution_id'] = $this->_onlinePendingContributionId;
$params['componentId'] = $params['id'];
$params['componentName'] = 'contribute';
$result = CRM_Contribute_BAO_Contribution::transitionComponents($params, TRUE);
if (!empty($result) && !empty($params['contribution_id'])) {
$lineItem = array();
$lineItems = CRM_Price_BAO_LineItem::getLineItems($params['contribution_id'], 'contribution', NULL, TRUE, TRUE);
$itemId = key($lineItems);
$priceSetId = CRM_Core_DAO::getFieldValue('CRM_Price_DAO_PriceField', $lineItems[$itemId]['price_field_id'], 'price_set_id');
$fieldType = NULL;
示例2: submit
//.........这里部分代码省略.........
$params['status_id'] = array_search('Pending', $allMemberStatus);
$params['skipStatusCal'] = TRUE;
// unset send-receipt option, since receipt will be sent when ipn is received.
unset($formValues['send_receipt'], $formValues['send_receipt']);
//as membership is pending set dates to null.
$memberDates = array('join_date' => 'joinDate', 'start_date' => 'startDate', 'end_date' => 'endDate');
foreach ($memberDates as $dv) {
${$dv} = NULL;
foreach ($this->_memTypeSelected as $memType) {
$membershipTypeValues[$memType][$dv] = NULL;
}
}
}
$params['receive_date'] = $now;
$params['invoice_id'] = $formValues['invoiceID'];
$params['contribution_source'] = ts('%1 Membership Signup: Credit card or direct debit (by %2)', array(1 => $membershipType, 2 => $userName));
$params['source'] = $formValues['source'] ? $formValues['source'] : $params['contribution_source'];
$params['trxn_id'] = CRM_Utils_Array::value('trxn_id', $result);
$params['payment_instrument_id'] = 1;
$params['is_test'] = $this->_mode == 'live' ? 0 : 1;
if (!empty($formValues['send_receipt'])) {
$params['receipt_date'] = $now;
} else {
$params['receipt_date'] = NULL;
}
$this->set('params', $formValues);
$this->assign('trxn_id', CRM_Utils_Array::value('trxn_id', $result));
$this->assign('receive_date', CRM_Utils_Date::mysqlToIso($params['receive_date']));
// required for creating membership for related contacts
$params['action'] = $this->_action;
//create membership record.
$count = 0;
foreach ($this->_memTypeSelected as $memType) {
if ($count && ($relateContribution = CRM_Member_BAO_Membership::getMembershipContributionId($membership->id))) {
$membershipTypeValues[$memType]['relate_contribution_id'] = $relateContribution;
}
$membershipParams = array_merge($membershipTypeValues[$memType], $params);
//CRM-15366
if (!empty($softParams) && empty($paymentParams['is_recur'])) {
$membershipParams['soft_credit'] = $softParams;
}
// This is required to trigger the recording of the membership contribution in the
// CRM_Member_BAO_Membership::Create function.
// @todo stop setting this & 'teach' the create function to respond to something
// appropriate as part of our 2-step always create the pending contribution & then finally add the payment
// process -
// @see http://wiki.civicrm.org/confluence/pages/viewpage.action?pageId=261062657#Payments&AccountsRoadmap-Movetowardsalwaysusinga2-steppaymentprocess
$membershipParams['contribution_status_id'] = CRM_Utils_Array::value('payment_status_id', $result);
if (!empty($paymentParams['is_recur'])) {
// The earlier process created the line items (although we want to get rid of the earlier one in favour
// of a single path!
unset($membershipParams['lineItems']);
}
$membership = CRM_Member_BAO_Membership::create($membershipParams, $ids);
$params['contribution'] = CRM_Utils_Array::value('contribution', $membershipParams);
unset($params['lineItems']);
$this->_membershipIDs[] = $membership->id;
$createdMemberships[$memType] = $membership;
$count++;
}
} else {
$params['action'] = $this->_action;
if ($this->_onlinePendingContributionId && !empty($formValues['record_contribution'])) {
// update membership as well as contribution object, CRM-4395
$params['contribution_id'] = $this->_onlinePendingContributionId;
$params['componentId'] = $params['id'];