| 1 | <?php |
| 2 | |
| 3 | /** |
| 4 | * Smarty block function for defining content-regions which can be dynamically-altered |
| 5 | * |
| 6 | * @see CRM_Core_Regions |
| 7 | * |
| 8 | * @param array $params |
| 9 | * Must define 'name'. |
| 10 | * @param string $content |
| 11 | * Default content. |
| 12 | * @param CRM_Core_Smarty $smarty |
| 13 | * The Smarty object. |
| 14 | * |
| 15 | * @param $repeat |
| 16 | * |
| 17 | * @return string |
| 18 | */ |
| 19 | function smarty_block_crmRegion($params, $content, &$smarty, &$repeat) { |
| 20 | if ($repeat) { |
| 21 | return NULL; |
| 22 | } |
| 23 | require_once 'CRM/Core/Region.php'; |
| 24 | $region = CRM_Core_Region::instance($params['name'], FALSE); |
| 25 | if ($region) { |
| 26 | $result = $region->render($content, CRM_Utils_Array::value('allowCmsOverride', $params, TRUE)); |
| 27 | return $result; |
| 28 | } |
| 29 | else { |
| 30 | return $content; |
| 31 | } |
| 32 | } |