Отключить модуль для незарегистрированных пользователей

Здравствуйте!
Собственно вопрос в заголовке. Есть ли возможность загружать модуль только в том случае, если пользователь авторизировался на сайте? А для всех не авторизованных модуль не использовался. В общем надо отрубить для незарегистрированных лупу, увеличение фото в карточке товара.

самым простым методом будет в модуле my_changes сделать override:
design/themes/responsive/templates/addons/my_changes/overrides/addons/image_zoom/hooks/index/scripts.post.tpl

и там сделать что-то типа:

{if $auth.user_id != 0}
{script src="js/addons/image_zoom/lib/easyzoom.min.js"}
{script src="js/addons/image_zoom/index.js"}

<script>
    (function (_, $) {
        $.ceEvent('on', 'ce.commoninit', function (context) {
            if (!Modernizr.touchevents) {
                var positionId = {$addons.image_zoom.cz_zoom_position};
                if ('{$language_direction}' === 'rtl') {
                    positionId = $.ceImageZoom('translateFlyoutPositionToRtl', positionId);
                }

                $('.cm-previewer:not(.cm-previewer-only)', context).each(function (i, elm) {
                    $.ceImageZoom('init', $(elm), positionId);
                });
            }
        });
    })(Tygh, Tygh.$);
</script>
{/if}

потом почистить кеш

2 лайка

Но можно сделать круче, без оверрайда файла, но там нужно ковыряться.

1 лайк

Огромное спасибо! То что надо!

1 лайк