本文整理汇总了PHP中CRM_Member_BAO_Membership::deleteMembership方法的典型用法代码示例。如果您正苦于以下问题:PHP CRM_Member_BAO_Membership::deleteMembership方法的具体用法?PHP CRM_Member_BAO_Membership::deleteMembership怎么用?PHP CRM_Member_BAO_Membership::deleteMembership使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CRM_Member_BAO_Membership
的用法示例。
在下文中一共展示了CRM_Member_BAO_Membership::deleteMembership方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testdel
/**
* Test del()
*/
function testdel()
{
$contactId = Contact::createIndividual();
$params = array('contact_id' => $contactId, 'membership_type_id' => $this->_membershipTypeID, 'join_date' => '2008-01-21', 'start_date' => '2008-01-21', 'end_date' => '2008-12-21', 'source' => 'Payment', 'is_override' => 1, 'status_id' => $this->_mebershipStatusID);
$ids = array();
$membership = CRM_Member_BAO_Membership::create($params, $ids);
$membershipDelete = CRM_Member_BAO_Membership::deleteMembership($membership->id);
$membershipdelete = $this->assertDBNull('CRM_Member_BAO_MembershipLog', $membership->id, 'membership_id', 'id', 'Database check for deleted membership log.');
}
示例2: postProcess
/**
* process the form after the input has been submitted and validated
*
* @access public
* @return None
*/
public function postProcess()
{
$deletedMemberss = 0;
foreach ($this->_memberIds as $memberId) {
if (CRM_Member_BAO_Membership::deleteMembership($memberId)) {
$deletedMemberss++;
}
}
$status = array(ts('Deleted Member(s): %1', array(1 => $deletedMembers)), ts('Total Selected Membership(s): %1', array(1 => count($this->_memberIds))));
CRM_Core_Session::setStatus($status);
}
示例3: civicrm_membership_delete
/**
* Deletes an existing contact membership
*
* This API is used for deleting a contact membership
*
* @param Int $membershipID Id of the contact membership to be deleted
*
* @return null if successfull, object of CRM_Core_Error otherwise
* @access public
*/
function civicrm_membership_delete(&$membershipID)
{
_civicrm_initialize();
if (empty($membershipID)) {
return civicrm_create_error('Membership ID cannot be empty.');
}
require_once 'CRM/Member/BAO/Membership.php';
CRM_Member_BAO_Membership::deleteRelatedMemberships($membershipID);
$membership = new CRM_Member_BAO_Membership();
$result = $membership->deleteMembership($membershipID);
return $result ? civicrm_create_success() : civicrm_create_error('Error while deleting Membership');
}
示例4: civicrm_api3_membership_delete
/**
* Deletes an existing contact membership
*
* This API is used for deleting a contact membership
*
* @param $params array array holding id - Id of the contact membership to be deleted
*
* @return array api result
* {@getfields membership_delete}
* @access public
*/
function civicrm_api3_membership_delete($params)
{
// membershipID should be numeric
// this check should be done @ wrapper level
if (!is_numeric($params['id'])) {
return civicrm_api3_create_error('Input parameter should be numeric');
}
CRM_Member_BAO_Membership::deleteRelatedMemberships($params['id']);
$membership = new CRM_Member_BAO_Membership();
$result = $membership->deleteMembership($params['id']);
return $result ? civicrm_api3_create_success() : civicrm_api3_create_error('Error while deleting Membership');
}
示例5: postProcess
/**
* Function to process the form
*
* @access public
*
* @return None
*/
public function postProcess()
{
if ($this->_action & CRM_Core_Action::DELETE) {
CRM_Member_BAO_Membership::deleteRelatedMemberships($this->_id);
CRM_Member_BAO_Membership::deleteMembership($this->_id);
return;
}
$config = CRM_Core_Config::singleton();
// get the submitted form values.
$this->_params = $formValues = $this->controller->exportValues($this->_name);
$params = $ids = array();
$membershipTypeValues = array();
foreach ($this->_memTypeSelected as $memType) {
$membershipTypeValues[$memType]['membership_type_id'] = $memType;
}
//take the required membership recur values.
if ($this->_mode && CRM_Utils_Array::value('auto_renew', $this->_params)) {
$params['is_recur'] = $this->_params['is_recur'] = $formValues['is_recur'] = TRUE;
$mapping = array('frequency_interval' => 'duration_interval', 'frequency_unit' => 'duration_unit');
$count = 0;
foreach ($this->_memTypeSelected as $memType) {
$recurMembershipTypeValues = CRM_Utils_Array::value($memType, $this->_recurMembershipTypes, array());
foreach ($mapping as $mapVal => $mapParam) {
$membershipTypeValues[$memType][$mapVal] = CRM_Utils_Array::value($mapParam, $recurMembershipTypeValues);
if (!$count) {
$this->_params[$mapVal] = $formValues[$mapVal] = CRM_Utils_Array::value($mapParam, $recurMembershipTypeValues);
}
}
$count++;
}
// unset send-receipt option, since receipt will be sent when ipn is received.
unset($this->_params['send_receipt'], $formValues['send_receipt']);
}
// process price set and get total amount and line items.
$lineItem = array();
$priceSetId = NULL;
if (!($priceSetId = CRM_Utils_Array::value('price_set_id', $formValues))) {
CRM_Member_BAO_Membership::createLineItems($this, $formValues['membership_type_id'], $priceSetId);
}
if ($priceSetId) {
CRM_Price_BAO_Set::processAmount($this->_priceSet['fields'], $this->_params, $lineItem[$priceSetId]);
$params['total_amount'] = CRM_Utils_Array::value('amount', $this->_params);
}
$this->storeContactFields($formValues);
$params['contact_id'] = $this->_contactID;
$fields = array('status_id', 'source', 'is_override', 'campaign_id');
foreach ($fields as $f) {
$params[$f] = CRM_Utils_Array::value($f, $formValues);
}
// fix for CRM-3724
// when is_override false ignore is_admin statuses during membership
// status calculation. similarly we did fix for import in CRM-3570.
if (!CRM_Utils_Array::value('is_override', $params)) {
$params['exclude_is_admin'] = TRUE;
}
// process date params to mysql date format.
$dateTypes = array('join_date' => 'joinDate', 'start_date' => 'startDate', 'end_date' => 'endDate');
foreach ($dateTypes as $dateField => $dateVariable) {
${$dateVariable} = CRM_Utils_Date::processDate($formValues[$dateField]);
}
$dates = array('join_date', 'start_date', 'end_date', 'reminder_date');
$calcDates = array();
foreach ($this->_memTypeSelected as $memType) {
$calcDates[$memType] = CRM_Member_BAO_MembershipType::getDatesForMembershipType($memType, $joinDate, $startDate, $endDate);
}
foreach ($calcDates as $memType => $calcDate) {
foreach ($dates as $d) {
//first give priority to form values then calDates.
$date = CRM_Utils_Array::value($d, $formValues);
if (!$date) {
$date = CRM_Utils_Array::value($d, $calcDate);
}
$membershipTypeValues[$memType][$d] = CRM_Utils_Date::processDate($date);
//$params[$d] = CRM_Utils_Date::processDate( $date );
}
}
if ($this->_id) {
$ids['membership'] = $params['id'] = $this->_id;
}
$session = CRM_Core_Session::singleton();
$ids['userId'] = $session->get('userID');
// membership type custom data
foreach ($this->_memTypeSelected as $memType) {
$customFields = CRM_Core_BAO_CustomField::getFields('Membership', FALSE, FALSE, $memType);
$customFields = CRM_Utils_Array::crmArrayMerge($customFields, CRM_Core_BAO_CustomField::getFields('Membership', FALSE, FALSE, NULL, NULL, TRUE));
$membershipTypeValues[$memType]['custom'] = CRM_Core_BAO_CustomField::postProcess($formValues, $customFields, $this->_id, 'Membership');
}
foreach ($this->_memTypeSelected as $memType) {
$membershipTypes[$memType] = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_MembershipType', $memType);
}
$membershipType = implode(', ', $membershipTypes);
// Retrieve the name and email of the current user - this will be the FROM for the receipt email
list($userName, $userEmail) = CRM_Contact_BAO_Contact_Location::getEmailDetails($ids['userId']);
//.........这里部分代码省略.........
示例6: crm_delete_membership
/**
* Deletes an existing contact membership
*
* This API is used for deleting a contact membership
*
* @param Int $membershipID Id of the contact membership to be deleted
*
* @return null if successfull, object of CRM_Core_Error otherwise
* @access public
*/
function crm_delete_membership($membershipID)
{
_crm_initialize();
if (empty($membershipID)) {
return _crm_error('Invalid value for membershipID');
}
require_once 'CRM/Member/BAO/Membership.php';
CRM_Member_BAO_Membership::deleteRelatedMemberships($membershipID);
$membership = new CRM_Member_BAO_Membership();
$result = $membership->deleteMembership($membershipID);
return $result ? null : _crm_error('Error while deleting Membership');
}
示例7: postProcess
/**
* Function to process the form
*
* @access public
* @return None
*/
public function postProcess()
{
require_once 'CRM/Member/BAO/Membership.php';
require_once 'CRM/Member/BAO/MembershipType.php';
require_once 'CRM/Member/BAO/MembershipStatus.php';
if ($this->_action & CRM_Core_Action::DELETE) {
CRM_Member_BAO_Membership::deleteRelatedMemberships($this->_id);
CRM_Member_BAO_Membership::deleteMembership($this->_id);
return;
}
$config =& CRM_Core_Config::singleton();
// get the submitted form values.
$this->_params = $formValues = $this->controller->exportValues($this->_name);
$params = array();
$ids = array();
// set the contact, when contact is selected
if (CRM_Utils_Array::value('contact_select_id', $formValues)) {
$this->_contactID = CRM_Utils_Array::value('contact_select_id', $formValues);
}
$params['contact_id'] = $this->_contactID;
// we need to retrieve email address
if ($this->_context == 'standalone' && CRM_Utils_Array::value('send_receipt', $formValues)) {
require_once 'CRM/Contact/BAO/Contact/Location.php';
list($this->_contributorDisplayName, $this->_contributorEmail) = CRM_Contact_BAO_Contact_Location::getEmailDetails($this->_contactID);
}
$fields = array('status_id', 'source', 'is_override');
foreach ($fields as $f) {
$params[$f] = CRM_Utils_Array::value($f, $formValues);
}
// fix for CRM-3724
// when is_override false ignore is_admin statuses during membership
// status calculation. similarly we did fix for import in CRM-3570.
if (!CRM_Utils_Array::value('is_override', $params)) {
$params['exclude_is_admin'] = true;
}
$params['membership_type_id'] = $formValues['membership_type_id'][1];
$joinDate = CRM_Utils_Date::processDate($formValues['join_date']);
$startDate = CRM_Utils_Date::processDate($formValues['start_date']);
$endDate = CRM_Utils_Date::processDate($formValues['end_date']);
$calcDates = CRM_Member_BAO_MembershipType::getDatesForMembershipType($params['membership_type_id'], $joinDate, $startDate, $endDate);
$dates = array('join_date', 'start_date', 'end_date', 'reminder_date', 'receive_date');
$currentTime = getDate();
foreach ($dates as $d) {
if (isset($formValues[$d]) && !CRM_Utils_System::isNull($formValues[$d])) {
$params[$d] = CRM_Utils_Date::processDate($formValues[$d]);
} else {
if (isset($calcDates[$d])) {
$params[$d] = CRM_Utils_Date::processDate($calcDates[$d]);
}
}
}
if ($this->_id) {
$ids['membership'] = $params['id'] = $this->_id;
}
$session = CRM_Core_Session::singleton();
$ids['userId'] = $session->get('userID');
// membership type custom data
$customFields = CRM_Core_BAO_CustomField::getFields('Membership', false, false, CRM_Utils_Array::value('membership_type_id', $params));
$customFields = CRM_Utils_Array::crmArrayMerge($customFields, CRM_Core_BAO_CustomField::getFields('Membership', false, false, null, null, true));
$params['custom'] = CRM_Core_BAO_CustomField::postProcess($formValues, $customFields, $this->_id, 'Membership');
// Retrieve the name and email of the current user - this will be the FROM for the receipt email
require_once 'CRM/Contact/BAO/Contact/Location.php';
list($userName, $userEmail) = CRM_Contact_BAO_Contact_Location::getEmailDetails($ids['userId']);
if (CRM_Utils_Array::value('record_contribution', $formValues)) {
$recordContribution = array('total_amount', 'contribution_type_id', 'payment_instrument_id', 'trxn_id', 'contribution_status_id', 'check_number');
foreach ($recordContribution as $f) {
$params[$f] = CRM_Utils_Array::value($f, $formValues);
}
$membershipType = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_MembershipType', $formValues['membership_type_id'][1]);
if (!$this->_onlinePendingContributionId) {
$params['contribution_source'] = "{$membershipType} Membership: Offline membership signup (by {$userName})";
}
if ($formValues['send_receipt']) {
$params['receipt_date'] = $params['receive_date'];
}
//insert contribution type name in receipt.
$formValues['contributionType_name'] = CRM_Core_DAO::getFieldValue('CRM_Contribute_DAO_ContributionType', $formValues['contribution_type_id']);
}
if ($this->_mode) {
$params['total_amount'] = $formValues['total_amount'] = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_MembershipType', $params['membership_type_id'], 'minimum_fee');
$params['contribution_type_id'] = CRM_Core_DAO::getFieldValue('CRM_Member_DAO_MembershipType', $params['membership_type_id'], 'contribution_type_id');
require_once 'CRM/Core/BAO/PaymentProcessor.php';
$this->_paymentProcessor = CRM_Core_BAO_PaymentProcessor::getPayment($formValues['payment_processor_id'], $this->_mode);
require_once "CRM/Contact/BAO/Contact.php";
$now = date('YmdHis');
$fields = array();
// set email for primary location.
$fields["email-Primary"] = 1;
$formValues["email-5"] = $formValues["email-Primary"] = $this->_contributorEmail;
$params['register_date'] = $now;
// now set the values for the billing location.
foreach ($this->_fields as $name => $dontCare) {
$fields[$name] = 1;
}
//.........这里部分代码省略.........
示例8: testDeleteMembership
function testDeleteMembership()
{
$contactId = Contact::createIndividual();
$params = array('contact_id' => $contactId, 'membership_type_id' => '1', 'join_date' => '2006-01-21', 'start_date' => '2006-01-21', 'end_date' => '2006-12-21', 'source' => 'Payment', 'is_override' => 1, 'status_id' => $this->_membershipStatusID);
$ids = array();
CRM_Member_BAO_Membership::create($params, $ids);
$membershipId = $this->assertDBNotNull('CRM_Member_BAO_Membership', $contactId, 'id', 'contact_id', 'Database check for created membership.');
CRM_Member_BAO_Membership::deleteMembership($membershipId);
$membershipId = $this->assertDBNull('CRM_Member_BAO_Membership', $contactId, 'id', 'contact_id', 'Database check for deleted membership.');
}