Шаблонный движок Smarty - regex_replace любой номер телефона с пользовательским HTML - PullRequest
0 голосов
/ 11 декабря 2018

Моя система cms (flynax.com) использует шаблонный движок smarty.

У меня есть шаблон, который печатает значение поля из базы данных.

Тег, используемый в шаблоне для печати значения поля описания (html)is:

{$item.value}

Мне нужно скрыть любой номер телефона из поля описания, и для этого мне нужно найти любой номер телефона в поле вывода и заменить его следующим кодом:

<span class='telefon' data-last='REPLACED_VALUE'><span class='telefon2'>{$lang.click_here_to_show}</span></span>

У меня есть код jquery, который будет использоваться для скрытия любого номера телефона и показа его по клику (я также отслеживаю клики с помощью Google Analytics).

    {literal}

<script>
    $(document).ready(function() {
      $('.telefon').toggle(function() {
     $(this).find('span').text({/literal}'{$lang.click_here_to_show}'{literal});
      }, function() {
        $(this).find('span').text($(this).data('last'));
      }).click();
    });
  </script>
{/literal}

Код, который я пытаюсь использовать и который выдает ошибкиэто:

{$item.value|regex_replace:"/([+]{0,1}[\d]{1,5}[\s]{0,1}[\/]{0,1}[(]{0,1}[\d]{0,3}[)]{0,1}\s{0,1}\d{2,4}[-]{0,1}[\s]{0,1}[\d]{2,4}[-]{0,1}[\s]{0,1}[\d]{1,4})$/gm":"<span class='telefon' data-last='$1'><span class='telefon2'>{$lang.click_here_to_show}</span></span>"}

тест моего регулярного выражения: проверьте здесь

Можете ли вы подсказать, что я делаю неправильно?

Спасибо.

...