Адаптация темы Landing Shop к изменениям в законе РФ о персональных данных


Первое, что нужно сделать – это прочитать статью Webasyst об адаптации сайта под новый закон о персональных данных.

Второе – обновить все приложения, которые у вас стоят в инсталлере.


Создаём страницу Политики

Откройте приложение магазин – витрина - Landing Shop - шаблоны.
В списке файлов, в самом низу нажмите на плюсик "Новый файл"

В поле имя файла введите page.html
А в большое поле снизу вставьте код:

<div class="row-fluid" style="margin-top:100px;">
    <div class="span10 offset1">
        <h1>{$page.name}</h1>
        <div class="editor_content">
            {$page.content}    
        </div>        
    </div>
</div>


Теперь откройте вкладку "страницы", рядом со вкладкой шаблоны и создайте там новую страницу с политикой обработки персональных данных. После публикации страницы скопируйте ссылку на страницу. Только без "хвоста" типа ?prview=987239840fsdj2398


Форма обратной связи

После обновления фреймворка и приложения сайт у вас должна обновиться форма обратной связи {$wa->block("site.send_email_form")}.

В ней должен появится новый фрагмент кода, который начинается со строки:

{$agreement_link = ""}

Туда вы должны вставить ссылку на созданную страницу Политики обработки персональных данных, какой текст в неё вставлять – читайте в статье Webasyst, ссылка на которую указана выше.

Если форма обратной связи не изменилась (не появился новый код), то вам нужно сбросить изменения в этой форме, нажав на кнопку Восстановить из оригинала.


Форма регистрации

сли вы используете форму регистрации, то вам необходимо в настройках авторизации:


Отметить радио-кнопку Предлагать включить обязательный флажок с подсказкой и ссылкой.
И в настройках "галочки" вставить ссылку на страницу политики.

Если хотите, чтобы ссылка на политику открывалась в новом окне, добавьте ссылке атрибут target="_blank".
Код согласия в таком случае будет выглядеть примерно так:

Я согласен с <a href="ссылка на страницу политики" target="_blank">политикой обработки персональных данных</a>

Уведомление об обработке персональных данных на страницах сайта

Инструкция гласит, что вы должны уведомить посетителя о том, что являетесь оператором персональных данных.
В теме Landing Shop это уведомление можно разместить в файле v.user.footer.html темы для приложения Магазин. Поместите в файл код такого содержания:

<div style="opacity:0.6; margin-top: 15px;">
Мы получаем и обрабатываем персональные данные посетителей нашего сайта в соответствии с <b><a href="ссылка на страницу политики" target="_blank">официальной политикой</a></b>.<br>
Если вы не даете согласия на обработку своих персональных данных, вам необходимо покинуть наш сайт. 
</div>

Shop-script

Как настраивать шаги внутри настроек приложения Shop-script читайте в официальной статье.
Только дополню. Если вы хотите, чтобы ссылка на политику открывалась в новом окне, добавьте ей атрибут target="_blank":

Я согласен с <a href="ссылка на страницу политики" target="_blank">политикой обработки персональных данных</a>

Дальше я вам расскажу, как нужно адаптировать файлы темы, чтобы новые настройки работали.

ВНИМАНИЕ!
Версии Shop-script 6 и ниже не поддерживают не поддерживают новые настройки.

Все манипуляции проводим в приложении магазин - витрина - Landing Shop - шаблоны.



Файл checkout.contactinfo.html

Найдите строку:

{$checkout_contact_form->html()}

И добавьте прямо после неё код:

{if !empty($checkout_steps.contactinfo.service_agreement) && !empty($checkout_steps.contactinfo.service_agreement_hint)}
    <div class="wa-field">
        <div class="span8 wa-message desktop-offset">
        <div class="wa-value">
            <label style="display:block;">
                {if $checkout_steps.contactinfo.service_agreement == 'checkbox'}
                    <input type="hidden" name="service_agreement" value="">
                    <input type="checkbox" name="service_agreement" value="1"{if $wa->post('service_agreement')} checked{/if}>
                {/if}
                {$checkout_steps.contactinfo.service_agreement_hint}
            </label>
            {if !empty($errors.service_agreement)}
                <em class="error">{$errors.service_agreement|escape}</em>
            {/if}
        </div>
        </div>
    </div>
{/if}

Файл checkout.shipping.html

Найдите фргамент кода:
{if !empty($m.form)}<div class="wa-form wa-address" {if $m.id != $shipping.id}style="display:none"{/if}>{$m.form->html()}</div>{/if}

И замените его на новый фрагмент кода:

{if !empty($m.form)}
    <div class="wa-form wa-address" {if $m.id != $shipping.id}style="display:none"{/if}>
        {$m.form->html()}
        {if !empty($checkout_steps.shipping.service_agreement_hint)}
            <div class="wa-field">
                <div class="wa-value">
                    <span class="hint">{$checkout_steps.shipping.service_agreement_hint}</span>
                </div>
            </div>
        {/if}
    </div>
{/if}
Добавить ответ
Чтобы добавить комментарий, зарегистрируйтесь или войдите
Мы получаем и обрабатываем персональные данные посетителей нашего сайта в соответствии с официальной политикой.
Если Вы продолжите использовать сайт, мы будем считать, что Вас это устраивает.
Подписывайтесь и получайте скидки!

Узнавайте первым о скидках и специальных предложениях!