You are here

private function wf_crm_webform_preprocess::replaceTokens in Webform CiviCRM Integration 7.4

Same name and namespace in other branches
  1. 7.5 includes/wf_crm_webform_preprocess.inc \wf_crm_webform_preprocess::replaceTokens()

Token replacement for form messages

Parameters

$str: Raw message with tokens

$contact: CiviCRM contact array

Return value

mixed

2 calls to wf_crm_webform_preprocess::replaceTokens()
wf_crm_webform_preprocess::alterForm in includes/wf_crm_webform_preprocess.inc
Alter front-end of webforms: Called by hook_form_alter() when rendering a civicrm-enabled webform Add custom prefix. Display messages. Block users who should not have access. Set webform default values.
wf_crm_webform_preprocess::showNotYouMessage in includes/wf_crm_webform_preprocess.inc
Displays the admin-defined message with "not you?" link to known contacts

File

includes/wf_crm_webform_preprocess.inc, line 861

Class

wf_crm_webform_preprocess

Code

private function replaceTokens($str, $contact) {
  $tokens = wf_crm_get_fields('tokens');
  $values = array();
  foreach ($tokens as $k => &$t) {
    if (empty($contact[$k])) {
      $contact[$k] = '';
    }
    $value = $contact[$k];
    if (is_array($value)) {
      $value = implode(', ', $value);
    }
    $values[] = implode(' & ', wf_crm_explode_multivalue_str(check_plain($value)));
    $t = "[{$t}]";
  }
  return str_ireplace($tokens, $values, $str);
}