Не сохраняется код на страницах или в блоках На рассмотрении

1

При попытке сохранить код в блоках приложения сайт, вылетает ошибка на всю страницу:

вот сам код:

{$form_id = 1}
{$wa->multiform->form($form_id)} 
{$records = $wa->multiform->records($form_id, ['code_as_key' => 1, 'show_files' => 1])}

{if $records.records}

{if $wa->get("qq") }
  <pre>{print_r($records,true)}</pre>
{/if}
{*  *}

<script>
  (function($) {
    $(function() {
      $(".multiform-records-block .f-show-more-records").click(function() {
         var that = $(this);
         var block = that.closest(".multiform-records-block");
         that.after("<i class=&#039;multiform-loading&#039; style=&#039;display: inline-block&#039;></i>");
         $.post(location.href, { page_{$form_id}: parseInt(block.attr("data-page")) + 1 }, function(response) {
          that.next(".multiform-loading").remove();    
          if (typeof response !== &#039;undefined&#039;) {
            var html = $("<div></div>").html(response);
            if (html.find(".multiform-records-block > .multiform-record-row").length) {
              that.parent().before(html.find(".multiform-records-block > .multiform-record-row"));
              block.attr("data-page", parseInt(block.attr("data-page")) + 1);
              if (!html.find(".f-show-more-records").length) {
                block.find(".f-show-more-records").parent().remove();
              }
            } else {
              block.find(".f-show-more-records").parent().remove();
            }
          }
         });
      });
    });
  })(jQuery)
</script>
<div class="multiform-records-block" data-page="{$records.page}">
  {foreach $records.records as $r}
    {if !empty($r.fields) && !empty($r.fields.show)}
      {$f = $r.fields}
      <div class="review_item review_item_{$r[&#039;id&#039;]}">
        <div class="review_head">
          <div class="review_name">{$f[&#039;name&#039;].value|escape}</a></div><span class="sep">|</span>
          <div class="review_date">{$r.create_datetime|wa_datetime:&#039;date&#039;}</a></div><span class="sep">|</span>
          <div class="review_name">{$f[&#039;city&#039;].value|escape}</a></div>
        </div>
        <div class="review-content">
          <div class="review_body">{$f[&#039;review_body&#039;].value|escape}</div>

          {if !empty($f[&#039;files&#039;]) && !empty($f[&#039;files&#039;][&#039;value&#039;][0][&#039;value&#039;])}
            <div class="review_images">
              {foreach $f[&#039;files&#039;][&#039;value&#039;] as $files}
                <a data-fancybox="review_{$r[&#039;id&#039;]}" href="{$files[&#039;value&#039;]}">
                  {$file_sm = shopCustom::get_files_sm($files[&#039;value&#039;])}
                  <img src="{$file_sm}" alt="Фото к отзыву">
                </a>
              {/foreach}
            </div>
          {/if}
          
          {if !empty($f[&#039;youtube_id&#039;]) || !empty($f[&#039;audio_files&#039;])}
            <div class="review_media flex">
              {if !empty($f[&#039;youtube_id&#039;])}
                
                <div class="review_youtube">
                  <div class="title">Видео-отзыв</div> 
                  {if !empty($f[&#039;video_image&#039;])}
                    <a rel="nofollow" data-fancybox class="video" href="//www.youtube.com/embed/{$f[&#039;youtube_id&#039;][&#039;value&#039;]}?autoplay=1" style="background-image: url({$f[&#039;video_image&#039;][&#039;value&#039;][0][&#039;value&#039;]});"></a>
                  {else}
                    <a rel="nofollow" data-fancybox class="video" href="//www.youtube.com/embed/{$f[&#039;youtube_id&#039;]}?autoplay=1" style="background-image: url(https://img.youtube.com/vi/{$f[&#039;youtube_id&#039;]}/mqdefault.jpg);"></a>
                  {/if}
                </div>
              {/if}
              
              {if !empty($f[&#039;audio_files&#039;])}
                <div class="review_audio">
                  <div class="title">Аудиозапись отзыва</div> 
                  {foreach $f[&#039;audio_files&#039;][&#039;value&#039;] as $audio}
                    <div class="audio_item">
                        <div class="audio_icon"></div>
                        <audio class="audio" controls="">
                          <source src="{$audio[&#039;value&#039;]}" type="audio/mp3">
                        </audio>
                    </div>
                  {/foreach}
                </div>
              {/if}
            </div>
          {/if}
        </div>
        {if !empty($r.comments)}
          <div class="comments">
            {foreach $r.comments as $comment}
              <div class="comment_item">
                
              </div>
            {/foreach}
          </div>
        {/if}

      </div>
    {/if}
  {/foreach}
  {if $records.page < $records.max_page}<div style="margin: 10px 0;text-align:center;"><a href="javascript:void(0)" title="Показать еще" class="f-show-more-records multiform-button-9-flat">Показать еще</a></div>{/if}
</div>

<script>
(function($) {
$(document).ready(function() {
  $(&#039;.audio_icon&#039;).click(function(){
    var that = $(this);
    var audio = that.siblings(".audio")[0];
    var audio_ = that.siblings(".audio");
    console.log(audio);

    audio_.on(&#039;ended&#039;, function () {
      console.log(&#039;end&#039;);
      that.removeClass("on");
    });

    if (audio.paused == false) {
      audio.pause();
      console.log(&#039;music paused&#039;);
      that.removeClass("on");
    } else {
      audio.play();
      console.log(&#039;music playing&#039;);
      that.addClass("on");
    }
  });
});
})(jQuery);
</script>

{/if} 

Если к примеру убрать 

              <div class="comment_item">
                
              </div>

то все норм. или если это оставить, а убрать что-нибудь другое, например 

<div class="review_audio"

и все что внутри него. то тоже сохраняет нормально.

Непонятно в чем дело. Сначала думал что из-за объема символов всего кода, но нет.


Тоже самое если пытаться сохранить его на страницах. Только там кнопка сохранить крутится бесконечно, и сообщение об ошибке доступа появляется в консоли. 

2 комментария

  • +2
    Михаил Ушенин Михаил Ушенин Webasyst 5 марта 2020 15:57 #

    Возможно, на вашем хостинге работает какой-то фильтр содержимого POST-запросов. Что-то вроде mod_security. Уточните в службе поддержки хостинга, есть ли у вас такая фильтрация.

    • +1
      Апельсин Апельсин 5 марта 2020 17:22 #

      Да, сказали что используется mod_security.
      Для отключения подсказали добавить строку:
      SecRuleEngine Off
      в файл .htaccess

      Заработало), спасибо!

      Добавить комментарий

      Чтобы добавить комментарий, зарегистрируйтесь или войдите