CRM-14696 - Fixes for text input price field sold out display. Also spacing and font...
authorDave Greenberg <dave@civicrm.org>
Thu, 18 Dec 2014 01:05:37 +0000 (17:05 -0800)
committerDave Greenberg <dave@civicrm.org>
Thu, 18 Dec 2014 01:05:37 +0000 (17:05 -0800)
----------------------------------------
* CRM-14696:
  https://issues.civicrm.org/jira/browse/CRM-14696

CRM/Price/BAO/PriceField.php
css/civicrm.css
templates/CRM/Price/Form/PriceSet.tpl

index 75aeb4edbda16ab5b45b6519159155daaa4f077a..e0d971542ad54f65f436ed4f0661e43fb293924c 100644 (file)
@@ -331,8 +331,7 @@ class CRM_Price_BAO_PriceField extends CRM_Price_DAO_PriceField {
         // CRM-6902 - Add "max" option for a price set field
         if (in_array($optionKey, $freezeOptions)) {
           $element->freeze();
-          // CRM-14696 - Improve display for sold out price set options
-          $element->setLabel($label . '&nbsp;<span class="sold-out-option">(' . ts('Sold out') . ')</span>');
+          // CRM-14696 - Styling for sold out Text input fields is handled in PriceSet.tpl
         }
 
         //CRM-10117
index 6d4f7c0dbbd185335d64ef13e24d3ca6888c9cfc..41bbfe18e021d99736e446400f7fcbb99260fd60 100644 (file)
@@ -4317,7 +4317,8 @@ span.crm-status-icon {
   padding-top: 6px;
 }
 
-#crm-container.crm-public .calc-value {
+#crm-container.crm-public .calc-value,
+#crm-container.crm-public .content {
   padding-top: 6px;
   font-size: 15px;
 }
@@ -4473,6 +4474,7 @@ span.crm-status-icon {
 #crm-container .price-set-row span.sold-out-option .crm-price-amount-amount {
   font-style: italic !important;
   font-weight: normal !important;
+  font-size: 15px;
   color: #666 !important;
 }
 #crm-container .crm-extensions-upgrade {
index 1c61d27a7f1d5208d7eeeb8bf9c98ac834f0bfe1..9eb449a452db49daf209f57a3deb18db20ce7ec7 100644 (file)
 
                 <div class="label">{$form.$element_name.label}</div>
                 <div class="content {$element.name}-content">{$form.$element_name.html}
-                  {if $element.is_display_amounts && $element.html_type eq 'Text'}
-                    <span class="price-field-amount">
-                      {foreach item=option from=$element.options}
-            {if ($option.tax_amount || $option.tax_amount == "0") && $displayOpt && $invoicing}
-        {assign var="amount" value=`$option.amount+$option.tax_amount`}
-        {if $displayOpt == 'Do_not_show'}
-          {$amount|crmMoney}
-        {elseif $displayOpt == 'Inclusive'}
-          {$amount|crmMoney}
-          <span class='crm-price-amount-label'> (includes {$taxTerm} of {$option.tax_amount|crmMoney})</span>
-        {else}
-          {$option.amount|crmMoney}
-          <span class='crm-price-amount-label'> + {$option.tax_amount|crmMoney} {$taxTerm}</span>
-        {/if}
-      {else}
-        {$option.amount|crmMoney}
-      {/if}
-          {/foreach}
+                  {if $element.html_type eq 'Text'}
+                    {if $element.is_display_amounts}
+                    <span class="price-field-amount{if $form.$element_name.frozen EQ 1} sold-out-option{/if}">
+                    {foreach item=option from=$element.options}
+                      {if ($option.tax_amount || $option.tax_amount == "0") && $displayOpt && $invoicing}
+                        {assign var="amount" value=`$option.amount+$option.tax_amount`}
+                        {if $displayOpt == 'Do_not_show'}
+                          {$amount|crmMoney}
+                        {elseif $displayOpt == 'Inclusive'}
+                          {$amount|crmMoney}
+                          <span class='crm-price-amount-label'> (includes {$taxTerm} of {$option.tax_amount|crmMoney})</span>
+                        {else}
+                          {$option.amount|crmMoney}
+                          <span class='crm-price-amount-label'> + {$option.tax_amount|crmMoney} {$taxTerm}</span>
+                        {/if}
+                      {else}
+                        {$option.amount|crmMoney} {$fieldHandle} {$form.$fieldHandle.frozen}
+                      {/if}
+                      {if $form.$element_name.frozen EQ 1} ({ts}Sold out{/ts}){/if}
+                    {/foreach}
                     </span>
+                    {else}
+                      {* Not showing amount, but still need to conditionally show Sold out marker *}
+                      {if $form.$element_name.frozen EQ 1}
+                        <span class="sold-out-option">({ts}Sold out{/ts})<span>
+                      {/if}
+                    {/if}
                   {/if}
-                      {if $element.help_post}<br /><span class="description">{$element.help_post}</span>{/if}
+                  {if $element.help_post}<br /><span class="description">{$element.help_post}</span>{/if}
                 </div>
                 <div class="clear"></div>
 
             {/if}
-            </div>
+          </div>
         {/if}
     {/foreach}