Алексей Александрович


Алексей Александрович

Партнер-эксперт: http://experts.webasyst.ru/directory/1003320/easywebsu/ Партнер-эксперт
Партнер-разработчик: https://www.webasyst.ru/store/developer/1003320/ Партнер-разработчик

  • Вы либо топики вообще не читаете, либо специально отвечаете не по существу.

    1. Что должны будут делать новые пользователи тем, когда приложение станет платным?
    2. С этим всё понятно. Вопрос про коробочную версию.

    в ответ на Создание меню во фреймворке

  • Алексей Александрович Алексей Александрович 2 сентября 2018 12:35 #

    Хотелось бы ко всему выше перечисленном добавить возможность сохранения настроек темы дизайна, например, в cookies. Т.к. в новой версии добавлять свой html css js нельзя будет в theme.xml, то необходимо сделать это штатными средствами. Это сильно упростит обновление тем дизайна со сбросом настроек.

    в ответ на Новое оформление настроек тем

  • Вот, уже неплохо. Хорошо бы, чтобы изображение нормально как-то можно было забрать и этого пользователя, т.к. в этой таблице отдается не прямой url к изображению, а некий хеш.

    {$wa->domainUrl()}{$wa_static_url}wa-data/public/contacts/photos/0{waUser::getByLogin('administrator')->get('id')}/00/{waUser::getByLogin('administrator')->get('id')}/{waUser::getByLogin('administrator')->get('photo')}.original.jpg

    Есть другие варианты? Или с таким вариантам пропустят в маркет? =)

    в ответ на Smarty: вывести данные пользователя по ID или группу пользователей из Команда\Контакты

  • Вопрос исключительно по получению данных пользователя по его ID из Команды\Контакты или группы пользователей средствами Smarty, которые могут быть доступны в темах дизайна маркетплейса, а не допиливание этого функционала при помощи плагинов, хелперов и тд.

    в ответ на Smarty: вывести данные пользователя по ID или группу пользователей из Команда\Контакты

  • Алексей по поводу вашей новой темы. Вы создали доработанный клон. Могу вам в пример посмотреть тему suprime. Её авторы допиливают имеющееся а не идут по пути + 1js к теме = новая тема.

    Точно! Спасибо! А-то я когда ее делал, думал там больше функционала и всего остального, а оказалось я всего 1js добавил! Спасибо что открыли глаза!

    в ответ на Пункт 23 повод подумать или повод закрыть глаза.

  • Добрый день, fedoric. Я тут обычно не пишу и не вступаю в эти распри по поводу модерации Вебасист. Меня всё устраивает в ней, если что. Ну почти. Но раз уж о моей новой теме зашла речь, то видимо нужно высказаться.

    Я бы не был столь голословным, не покопавшись в настройках и архитектуре новой темы дизайна Легкий старт. Отличия от "пред. версии" очень значительные. Описывать их тут не буду, основное есть в карточке темы, в маркете. Так что не надо "ля-ля".

    в ответ на Пункт 23 повод подумать или повод закрыть глаза.

  • Алексей Александрович Алексей Александрович 16 октября 2017 11:09 #

    Проблема с этим плагином была вроде из-за того, что в первом релизе темы не было параметров фильтрации. Уже давно тут писали как их можно добавить, и в последнем обновлении они появились.

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 13 октября 2017 19:45 #

    Еще, кстати, есть проблема с lazyloading после фильтрации товаров.

    1. После загрузки страницы фильтруем товары по любому параметру
    2. Листаем вниз - подгрузка не произойдет

    Ошибка там в скрипте подгрузки, не правильно считается положения paging на странице после фильтрации. Я решил проблему при помощи lazyload.js, и сделал по принципу темы Default

    в ответ на Тема "dummy" для разработчиков

  • На самом деле это не очень удачное решение, потому что теперь $page.content не пустой всегда. Эти стили добавляются автоматом, и это плохо.

    в ответ на Стили нового редактора добавляются прямо в page.content инлайном

  • Добавил на Git issue с улучшением фильтрации. Сейчас при фильтрации все доступные параметры попадают в url, из-за этого не работает плагин "SEO Фильтры". В новой функции будут добавляться только выбранные характеристики.

    в ответ на Тема "dummy" для разработчиков

  • Подтверждаю, тоже такой косяк видел один раз.

    в ответ на Баг авторизации

  • На счет ведется ли допил не знаю. Некоторые мои шаблоны в маркете сделаны на этой теме.

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 14 октября 2016 09:57 #

    Да, собственно никто не мешает встроить код плагинов в шаблон и в документации указать, что покупателю необходимо отключить вывод плагина по хуку. Правда да, есть проблема, что покупатели потом пишут: а я думал, что это просто уже в шаблоне Купить в один клик работает. Ну что поделать =)

    в ответ на Темы дизайна в маркете Webasyt

  • Кстати, в фильтрацию товаров было бы не лишним добавить

    // Filter history
    if (!!(history.pushState && history.state !== undefined)) {
    window.history.pushState({}, '', '?'+data+'&filter');
    }

    в ответ на Тема "dummy" для разработчиков

  • В reviews.js надо заменить в двух местах

    var $review = $link.closest(".review-item"),
    на
    var $review = $link.closest(".s-review-item"),

    Иначе не работает ответ на отзыв.

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 26 сентября 2016 22:57 #

    Плюсую. Хуки для страниц были бы очень полезны.

    в ответ на Хук backend_page_edit

  • Алексей Александрович Алексей Александрович 19 сентября 2016 10:52 #

    Был немного неправ, он не выбирает товар В наличии только если выбрано в настройках магазина:

    Склады

    Покупатель может оформить заказ, даже если товара нет в наличии Товары, отсутствующие на складе, могут быть добавлены в корзину и заказаны

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 7 сентября 2016 16:12 #

    А с initFirstSku(); решили ничего не делать? Мне кажется это лишнее, реально же не правильно так. Я решил заменить Ваш скрипт, на скрипт выбора того SKU, который выбран в админке товара. Это логичнее.

            //initFirstSku();
            initSelected();
    
            function initSelected() {
                $('.sku-feature').each(function(index){
                    var $feature = $(this).attr('value');
    
                    $(this).prevAll('a[data-value='+$feature+']').click();
                });
            }
    
    Так же в product.cart.html добавил selected для уже выбранного SKU:
    {if $v_id == ifset($default_sku_features[$f.id])} selected{/if}

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 5 сентября 2016 11:08 #

    Еще один момент.

    Из категории товаров не всегда правильно работает изменение количества товаров добавляемого в корзину. У меня, например, с товарами добавленными вручную проблем не возникло, а вот со спарсенными товарами вылетала ошибка, что данный товар купить нельзя, т.к. его нет в наличии. Сначала думал в кривости импорта. Проверил потом из карточки - там добавляется без проблем любое кол-во. Значит ошибка в products.js. Собственно тут:заменить

    max_val = $quantity.data("max-quantity"),
    на
    input_max_data =  parseInt( $quantity.data("max-quantity") ),
    max_val = ( isNaN(input_max_data) || input_max_data === 0 ) ? Infinity : input_max_data,
    
    данный код взял из product.js

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 4 сентября 2016 15:45 #

    Еще, кстати, заметил что нет поддержки встроенного видео в карточке товара.

    в ответ на Тема "dummy" для разработчиков

  • Алексей Александрович Алексей Александрович 16 августа 2016 13:26 #

    Заметил, что при Выборе параметров в настройках, в карточке товара всегда выбираются первые значения характеристик, что мне кажется не очень удачным решением.

    Например, выбрав в админке артикул с другими характеристиками основным, во фронте всёравно проставятся первые значения. Это не удобно, когда из нескольких артикулов только один в наличии.

    В product.js правится тут function initFirstSku() { ... }

    в ответ на Тема "dummy" для разработчиков

  • Да, всё работает. Спасибо. Нужно только еще добавить два значения:

    {$currency_info['sign_position'] = $locale['sign_position']}
    {$currency_info['sign_delim'] = $locale['sign_delim']}

    в ответ на $currency_info в cart.html

  • О, спасибо. Вечером проверю всё это, отпишусь потом)

    в ответ на $currency_info в cart.html

  • Если используется скидка по сумме заказа, то при удалении товара скидка не пересчитывается. Так же прячется сама информация о скидке. Ошибка в cart.js // Render Discount

    в ответ на Тема "dummy" для разработчиков

  • Фильтрация по максимальной цене не верно работает. Но если отключить функцию слайдера - //that.initRangeSlider(); , то всё встает на свои места. Ошибку я не нашел, но протестировал с jqueryUI. Работает нормально.

    в ответ на Тема "dummy" для разработчиков

  • В шаблоне отсутствует ajax фильтрация, не лишним было бы её добавить.

    в ответ на Тема "dummy" для разработчиков

  • Файл header.layout.html не отображается в списке файлов приложения Сайт.

    в ответ на Тема "dummy" для разработчиков

  • А если, допустим, я хочу добавить несколько товаров в корзину по клику на одну кнопку, все эти товары находятся на данной странице и я просто при помощи jquery сделаю клики по всем кнопкам В корзину? Насколько вообще такой вариант корректен? или лучше писать плагин, который будет добавлять товары по аналогии с shopFrontendCartAddController

    в ответ на Добавление товара в корзину методом GET или POST

  • Так выведет все страницы в массиве, исключая Неопубликованные страницы + дополнительные параметры к странице. Наверное можно как-то сделать при помощи фишек фреймворка, но я честно говоря не знаю как)

    <?php

    class sitePages

    {

    public static function getAllPages()

    {

    $site_pages_model = new sitePageModel();

    $site_pages_params_model = new sitePageParamsModel();

    $pages = $site_pages_model->select('id,name,url,full_url,status,route,parent_id')

    ->where('domain_id = ' . siteHelper::getDomainId() . ' && status = 1')

    ->order('parent_id,sort')

    ->fetchAll('id');

    $params = $site_pages_params_model->order('page_id ASC')->fetchAll();

    $domain = siteHelper::getDomain();

    foreach ($pages as $key => $value) {

    $pages[$key]['domain'] = $domain;

    foreach ($params as $param) {

    if ($param['page_id'] == $pages[$key]['id']) {

    $pages[$key][$param['name']] = $param['value'];

    }

    }

    }

    return $pages;

    }

    }

    в ответ на Как получить массив всех страниц из всех поселений Сайт?

  • Алексей Александрович Алексей Александрович 22 августа 2014 05:22 #
    Нашел. $order_id = waRequest::get('id', null, waRequest::TYPE_INT);
    Может кому-то пригодится.

    в ответ на Как получить id заказа в экшене