diff --git a/CRM/Price/Page/Field.php b/CRM/Price/Page/Field.php index c1a70040fdef..bfa6feab97b3 100644 --- a/CRM/Price/Page/Field.php +++ b/CRM/Price/Page/Field.php @@ -230,12 +230,8 @@ public function run() { ); if ($this->_sid) { - $usedByDefaults = [ - 'civicrm_event' => FALSE, - 'civicrm_contribution_page' => FALSE, - ]; $usedBy = CRM_Price_BAO_PriceSet::getUsedBy($this->_sid); - $this->assign('usedBy', array_intersect_key($usedByDefaults, $usedBy)); + $this->assign('usedBy', $usedBy); $this->_isSetReserved = CRM_Core_DAO::getFieldValue('CRM_Price_DAO_PriceSet', $this->_sid, 'is_reserved'); $this->assign('isReserved', $this->_isSetReserved); diff --git a/templates/CRM/Price/Page/Field.tpl b/templates/CRM/Price/Page/Field.tpl index ff98309a5c1f..bfe4393eaefb 100644 --- a/templates/CRM/Price/Page/Field.tpl +++ b/templates/CRM/Price/Page/Field.tpl @@ -13,16 +13,14 @@ {include file="CRM/Price/Form/DeleteField.tpl"} {elseif $action eq 1024 } {include file="CRM/Price/Form/Preview.tpl"} -{elseif ($usedBy and $action eq 8) or $usedBy.civicrm_event or $usedBy.civicrm_contribution_page} +{elseif $usedBy}
{/if} diff --git a/templates/CRM/Price/Page/Set.tpl b/templates/CRM/Price/Page/Set.tpl index bdd496f32b8d..4e4e9e5b96ac 100644 --- a/templates/CRM/Price/Page/Set.tpl +++ b/templates/CRM/Price/Page/Set.tpl @@ -26,9 +26,7 @@ {ts 1=$usedPriceSetTitle}Unable to delete the '%1' price set - it is currently in use by one or more active events or contribution pages or contributions or event templates.{/ts} {/if} - {if $usedBy.civicrm_event or $usedBy.civicrm_contribution_page or $usedBy.civicrm_event_template} - {include file="CRM/Price/Page/table.tpl"} - {/if} + {include file="CRM/Price/Page/table.tpl"} {/if} diff --git a/templates/CRM/Price/Page/table.tpl b/templates/CRM/Price/Page/table.tpl index c7e514886ffe..922970d63883 100644 --- a/templates/CRM/Price/Page/table.tpl +++ b/templates/CRM/Price/Page/table.tpl @@ -7,8 +7,11 @@ | and copyright information, see https://civicrm.org/licensing | +--------------------------------------------------------------------+ *} +{* The price field can be used somewhere but not necessarily in a page/event. In that case we still want to display some message. *} +{assign var='showGenericMessage' value=true} {foreach from=$contexts item=context} {if $context EQ "Event"} + {assign var='showGenericMessage' value=false} {if $action eq 8} {ts}If you no longer want to use this price set, click the event title below, and modify the fees for that event.{/ts} {else} @@ -34,6 +37,7 @@ {/if} {if $context EQ "Contribution"} + {assign var='showGenericMessage' value=false} {if $action eq 8} {ts}If you no longer want to use this price set, click the contribution page title below, and modify the Amounts or Membership tab configuration.{/ts} {else} @@ -57,6 +61,7 @@ {/if} {if $context EQ "EventTemplate"} + {assign var='showGenericMessage' value=false} {if $action eq 8} {ts}If you no longer want to use this price set, click the event template title below, and modify the fees for that event.{/ts} {else} @@ -79,3 +84,9 @@ {/if} {/foreach} +{if $showGenericMessage} + {if $action neq 8} + {* We don't have to do anything for delete action because the calling tpl already displays something. *} + {ts}This price set is used by at least one contribution, but is not used by any active events or contribution pages or event templates.{/ts} + {/if} +{/if}