Skip to content

Commit

Permalink
dev/core#1061 Ensure that custom data is not loaded on update subscri…
Browse files Browse the repository at this point in the history
…ption form when in self service mode and re-use shared function
  • Loading branch information
seamuslee001 committed Aug 5, 2019
1 parent 6a719e2 commit bdd50f2
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 14 deletions.
20 changes: 7 additions & 13 deletions CRM/Contribute/Form/UpdateSubscription.php
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,6 @@ class CRM_Contribute_Form_UpdateSubscription extends CRM_Contribute_Form_Contrib

protected $_subscriptionDetails = NULL;

protected $_selfService = FALSE;

public $_paymentProcessor = NULL;

public $_paymentProcessorObj = NULL;
Expand Down Expand Up @@ -99,13 +97,9 @@ public function preProcess() {
$this->assign('contactId', $this->_subscriptionDetails->contact_id);
}

if (!CRM_Core_Permission::check('edit contributions')) {
if ($this->_subscriptionDetails->contact_id != $this->getContactID()) {
CRM_Core_Error::statusBounce(ts('You do not have permission to update subscription.'));
}
$this->_selfService = TRUE;
}
$this->assign('self_service', $this->_selfService);
$this->isSelfService();

$this->assign('self_service', $this->selfService);

$this->editableScheduleFields = $this->_paymentProcessorObj->getEditableRecurringScheduleFields();

Expand All @@ -125,7 +119,7 @@ public function preProcess() {
}

// when custom data is included in this page
if (!empty($_POST['hidden_custom'])) {
if (!empty($_POST['hidden_custom']) && !$this->selfService) {
CRM_Custom_Form_CustomData::preProcess($this, NULL, NULL, 1, 'ContributionRecur', $this->contributionRecurID);
CRM_Custom_Form_CustomData::buildQuickForm($this);
CRM_Custom_Form_CustomData::setDefaultValues($this);
Expand Down Expand Up @@ -187,15 +181,15 @@ public function buildQuickForm() {
}

if (CRM_Contribute_BAO_ContributionRecur::supportsFinancialTypeChange($this->contributionRecurID)) {
$this->addEntityRef('financial_type_id', ts('Financial Type'), ['entity' => 'FinancialType'], !$this->_selfService);
$this->addEntityRef('financial_type_id', ts('Financial Type'), ['entity' => 'FinancialType'], !$this->selfService);
}

// Add custom data
$this->assign('customDataType', 'ContributionRecur');
$this->assign('entityID', $this->contributionRecurID);

$type = 'next';
if ($this->_selfService) {
if ($this->selfService) {
$type = 'submit';
}

Expand All @@ -220,7 +214,7 @@ public function postProcess() {
// store the submitted values in an array
$params = $this->exportValues();

if ($this->_selfService && $this->_donorEmail) {
if ($this->selfService && $this->_donorEmail) {
// for self service force notify
$params['is_notify'] = 1;
}
Expand Down
4 changes: 3 additions & 1 deletion templates/CRM/Contribute/Form/UpdateSubscription.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,9 @@
{/if}
</table>

{include file="CRM/common/customDataBlock.tpl"}
{if !$self_service}
{include file="CRM/common/customDataBlock.tpl"}
{/if}

<div class="crm-submit-buttons">{include file="CRM/common/formButtons.tpl" location="bottom"}</div>
</div>

0 comments on commit bdd50f2

Please sign in to comment.