[Soft] ImageCMS Premium 4.12 + Модули

Каким способом размещаем модули?

  • Индивидуально по запросу

    Голосов: 26 15,1%
  • Полный слив паком

    Голосов: 59 34,3%
  • Файлы на мыло.ру / Яндекс-диск / Эх.юа

    Голосов: 90 52,3%
  • Только проверенным участникам

    Голосов: 21 12,2%

  • Всего проголосовало
    172
Озадачился таким моментом:
Если из 1С передаем товар всего с одним вариантом, то визуально он не отображается как 1 вариант. То есть их надо указать как минимум 2.
Но можно указать 2-й вариант без имени или же со статичным именем NULL.
Вопрос: Как скрыть вариант с именем NULL, чтобы при этом отображался 1-й вариант?
Есть у кого какие мысли на этот счет?
 
Всем привет, скачал megashop в нем модуль купить в один клик - ставлю в папку апликейшин модулес а модуля там не появляться права пролечены. Как быть, или их не уставить?
Плюс да в последней версии не выводит бланк с квитанции - не найдена страница пишет - 404
 
Последнее редактирование:
Решил вопрос с модулем СДЭК. Теперь стучалки нет и он полностью рабочий. Если нужен, стучите в личку или запрос в теме.
Вопрос с бланком квитанции от Сбера на стадии решения. Если есть желающие помочь, милости прошу в личку.
Да, чуть было не забыл: решен вопрос с выгрузкой товаров из 1С редакции Розница. А так же полностью протестирован и настроен модуль под 1С Предприятие. За ним тоже в личку или же в теме.
 
модуль Новой Почты есть у кого-то?
 
В платежных системах данной CMS присутствует платежка Яндекс Касса. В данной платежке при выводе в карточке оформления заказа все виды платежей разбиты селектом, смотрится убого, плюс эта кнопка оплатить которая ни к селу ни к городу.
Так вот, хотел переделать сие чудо программной мысли во что то более приятное глазу и более юзабельное, но не хватает "мозгов".
Код:
<form method="POST"
      {if $data['settings']['test']}
          action="https://demomoney.yandex.ru/eshop.xml"
      {else:}
          action="https://money.yandex.ru/eshop.xml"
      {/if}
      id="paidForm">
    {if $payments}
        <select id="paidFormSelect" name="paymentType" style="font-size: 16px;font-weight: 600;color: #000000;border: 2px solid #000;margin-top: 20px;margin-bottom: 20px;padding-top: 10px;padding-bottom: 10px;background: #ffabb8;">
            {if $data['settings']['QW']}
                <option value="QW" selected="selected">Оплата из QIWI Кошелек</option>
            {/if}
            {if $data['settings']['PC']}
                <option value="PC" selected="selected">Оплата из Яндекс Денег</option>
            {/if}
            {if $data['settings']['AC']}
                <option value="AC" selected="selected">Оплата банковской картой</option>
            {/if}
            {if $data['settings']['SB']}
                <option value="SB" selected="selected">Сбербанк Онлайн</option>
            {/if}
            {if $data['settings']['MC']}
                <option value="MC" selected="selected">Платеж со счета мобильного</option>
            {/if}
            {if $data['settings']['WM']}
                <option value="WM" selected="selected">Оплата через WebMoney</option>
            {/if}
            {if $data['settings']['AB']}
                <option value="AB" selected="selected">AlphaClick</option>
            {/if}
        </select>
    {else:}
        <input type="hidden" name="paymentType" value="PC">
    {/if}
    <input type="hidden" name="shopid" value="{echo $data['shopid']}">
    <input type="hidden" name="scid" value="{echo $data['scid']}">
    <input type="hidden" name="shopSuccessURL" value="{echo $data['result_url']}" >
    <input type="hidden" name="shopFailURL" value="{echo $data['result_url']}" >
    <input type="hidden" name="orderNumber" value="{echo $data['order_id']}">
    <input type="hidden" name="sum" value="{echo $data['amount']}">
    <input type="hidden" name="customerNumber" value="{echo $data['customerNumber']}" >
    <input type="hidden" name="paymentKey" value="{echo $data['paymentKey']}" >
    <div class='btn-cart btn-cart-p'>
        <input type='submit' value='{lang('ОПЛАТИТЬ ТОВАР','payment_method_yakassa')}'>
    </div>
</form>

В этой части как раз и выводится список селектом:
Код:
<select id="paidFormSelect" name="paymentType" style="font-size: 16px;font-weight: 600;color: #000000;border: 2px solid #000;margin-top: 20px;margin-bottom: 20px;padding-top: 10px;padding-bottom: 10px;background: #ffabb8;">
            {if $data['settings']['QW']}
                <option value="QW" selected="selected">Оплата из QIWI Кошелек</option>
            {/if}
            {if $data['settings']['PC']}
                <option value="PC" selected="selected">Оплата из Яндекс Денег</option>
            {/if}
            {if $data['settings']['AC']}
                <option value="AC" selected="selected">Оплата банковской картой</option>
            {/if}
            {if $data['settings']['SB']}
                <option value="SB" selected="selected">Сбербанк Онлайн</option>
            {/if}
            {if $data['settings']['MC']}
                <option value="MC" selected="selected">Платеж со счета мобильного</option>
            {/if}
            {if $data['settings']['WM']}
                <option value="WM" selected="selected">Оплата через WebMoney</option>
            {/if}
            {if $data['settings']['AB']}
                <option value="AB" selected="selected">AlphaClick</option>
            {/if}
        </select>

Как сделать так чтобы вместо селективного списка выбора платежа, вывести иконки платежек, при этом чтобы переход на ту или иную платежку происходил при нажатии на эту иконку, а не при нажатии на кнопку:
Код:
<div class='btn-cart btn-cart-p'>
        <input type='submit' value='{lang('ОПЛАТИТЬ ТОВАР','payment_method_yakassa')}'>
    </div>
???
То есть чтобы происходил не просто выбор платежки по нажатию на неё, а сразу же и выбор и переход для оплаты!
 
В платежных системах данной CMS присутствует платежка Яндекс Касса. В данной платежке при выводе в карточке оформления заказа все виды платежей разбиты селектом, смотрится убого, плюс эта кнопка оплатить которая ни к селу ни к городу.
Как сделать так чтобы вместо селективного списка выбора платежа, вывести иконки платежек, при этом чтобы переход на ту или иную платежку происходил при нажатии на эту иконку, а не при нажатии на кнопку:
То есть чтобы происходил не просто выбор платежки по нажатию на неё, а сразу же и выбор и переход для оплаты!

В общем нашел решение. Реализацию делал под шаблон Мультишоп, но не факт что есть какая то привязка визуально под шаблон. Если таковая имеется, то уж стили то подправить вы думаю сможете, если не сможете пишите в данной ветке постараюсь помочь.
Добавил бы решение в предыдущий пост но стоит ограничение на количество символов, поэтому прошу отнестись к пониманию создания второго поста.

И так, решение:
Чтобы сменить селект список на иконки нам необходимо пройти по пути /application/modules/payment_method_yakassa/assets и открыть для редактирования файлик form.tpl
Код:
<select id="paidFormSelect" name="paymentType" style="font-size: 16px;font-weight: 600;color: #000000;border: 2px solid #000;margin-top: 20px;margin-bottom: 20px;padding-top: 10px;padding-bottom: 10px;background: #ffabb8;">
            {if $data['settings']['QW']}
                <option value="QW" selected="selected">Оплата из QIWI Кошелек</option>
            {/if}
            {if $data['settings']['PC']}
                <option value="PC" selected="selected">Оплата из Яндекс Денег</option>
            {/if}
            {if $data['settings']['AC']}
                <option value="AC" selected="selected">Оплата банковской картой</option>
            {/if}
            {if $data['settings']['SB']}
                <option value="SB" selected="selected">Сбербанк Онлайн</option>
            {/if}
            {if $data['settings']['MC']}
                <option value="MC" selected="selected">Платеж со счета мобильного</option>
            {/if}
            {if $data['settings']['WM']}
                <option value="WM" selected="selected">Оплата через WebMoney</option>
            {/if}
            {if $data['settings']['AB']}
                <option value="AB" selected="selected">AlphaClick</option>
            {/if}
        </select>
Код:
{if $data['settings']['SB']}
                <button value="SB" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage1"></button>
            {/if}
            {if $data['settings']['AC']}
                <button value="AC" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage2"></button>
            {/if}
            {if $data['settings']['PC']}
                <button value="PC" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage3"></button>
            {/if}
            {if $data['settings']['QW']}
                <button value="QW" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage4"></button>
            {/if}
            {if $data['settings']['MC']}
                <option value="MC" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage5"></button>
            {/if}
            {if $data['settings']['WM']}
                <button value="WM" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage6"></button>
            {/if}
            {if $data['settings']['AB']}
                <button value="AB" selected="selected" id="paidFormSelect" name="paymentType" class="orderimage7"></button>
            {/if}
Так же не забудьте удалить вот этот кусок кода из данного файла, он нам более не понадобиться:
Код:
<div class='btn-cart btn-cart-p'>
        <input type='submit' value='{lang('Купить','payment_method_yakassa')}'>
    </div>
Каждой иконке я задал свой класс .orderimage, так как картинки иконок разные. Плюсом к данному классу применил :hover, для смены картинки при наведении. Сами иконки вы можете вставить любые, какие вашей душе угодны и так же сделать смену при наведении любую. Если вам нужны будут иконки как у меня напишите я их выложу.
Код:
/* Иконки оплаты для яндекс кассы в карточке оформления заказа */
.orderimage1 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком Сбербанк онлайн */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
.orderimage2 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком Оплата Картой */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
.orderimage3 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком Яндекс кошелек */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
.orderimage4 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком Киви кошелек */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
.orderimage5 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком Оплата с мобильного */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
.orderimage6 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком Webmoney */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
.orderimage7 {
    background: url(/uploads/images/order-icon/ваша иконка); /* Путь к файлу с исходным рисунком АльфаКлик */
    width: 134px;/* Ширина иконки  */
    height: 72px;/* Высота иконки  */
   }
Далее по пути /templates/ВАШ_ШАБЛОН/shop/includes/cart в файле order_view_info.tpl найти код:
Код:
<!-- Payment status -->
      <div class="order-details__list">
        <div class="order-details__item order-details__item--title">{tlang('Payment status')}</div>
        <div class="order-details__item">{echo $model->getPaid() ? tlang('Paid successfully') : tlang('Not paid')}</div>
      </div>

      {if $paymentMethod and !$model->getPaid() and $paymentMethod->getPaymentSystemName()}
        <div class="btn-order">
          {echo $paymentMethod->getPaymentForm($model)}
        </div>
      {/if}
    </div><!-- /.order-details__group -->
И заменить на:
Код:
<!-- Payment status -->
      <div class="order-details__list">
        <div class="order-details__item order-details__item--title">Статус оплаты</div>
        <div class="order-details__item">{echo $model->getPaid() ? tlang('Paid successfully') : tlang('Not paid')}</div>
      </div>
      </div>
     
      <div style="padding-bottom: 20px;">
      {if $paymentMethod and !$model->getPaid() and $paymentMethod->getPaymentSystemName()}
          {echo $paymentMethod->getPaymentForm($model)}
      {/if}
      </div>
    <!-- /.order-details__group -->
Вот и все манипуляции. Каждая из иконок кликабельна и ведет на свою страницу оплаты выбранного метода.
 
Столкнулся с еще несколькими проблемами. Не могу понять где поправить чтобы работало как надо.
А именно: Есть модуль скидок стандартный который шел в коробке с CMS, так вот при создании скидки типа Подарочный сертификат суммой например 3000 руб. и применении его при покупке товара который стоимостью меньше суммы сертификата происходит пересчет и по идее сертификат должен сгореть, а итоговая сумма к оплате за товар должна равняться 0. Но по факту сертификат сгорает, после пересчета итоговая сумма к оплате становиться равной 1рублю.
И ни как не получается вывести 0руб. Может кто то уже сталкивался с подобной проблемой и есть решение?

Второй момент связан с модулем СДЭК, выложенным мной в данной теме, несколькими постами ранее. Так вот, при передаче веса товара из свойства вес в модуль для расчета стоимости доставки происходит проблема, на стадии дальнейшей отправки созданного заказа в личный кабинет СДЭК. Так как вес указан в граммах 0,212. Если же указать просто 212 то расчет идет в КГ и в этом случае доставка СДЭК не предлагается, так превышен лимит по весу. При попытке отправить сформированный заказ в СДЭК с присвоенным весом 0,212г. происходит ошибка в которой сообщается что значение поля ВЕС должно быть больше 0. Я перерыл все файлы модули менял значения поля отвечающего за вес на разные значения, но результат нулевой. Вот код который как я понимаю отвечает за вес:
Код:
$('#pvzSelect').append('<option  value="0" style="font-size:16px; width:98%; text-align:center; margin-top:15px; margin-bottom:15px; margin-left:1%; background-color: white; height: 30px;  line-height: 30px;">Выберите отделение СДЭК:</option>');
                                for (j = 0; j < pvzs.length; j++) {
                                    // console.log(pvzs[j]);
                                    nodePvz = pvzs[j];
                                    code = nodePvz.getAttribute("Code");
                                    CityCode = nodePvz.getAttribute("CityCode");
                                    Address = nodePvz.getAttribute("Address");
                                    Name = nodePvz.getAttribute("Name");
                                    WorkTime = nodePvz.getAttribute("WorkTime");
                                    Phone = nodePvz.getAttribute("Phone");
                                    Note = nodePvz.getAttribute("Note");
                                    CoordX = nodePvz.getAttribute("CoordX");
                                    CoordY = nodePvz.getAttribute("CoordY");
                                    if (nodePvz.firstChild) {
                                        WeightMin = 0;
                                        WeightMax = 100000000
                                        // WeightMin = nodePvz.firstChild.getAttribute("WeightMin");
                                        // WeightMax = nodePvz.firstChild.getAttribute("WeightMax")
                                    } else {
                                        WeightMin = 0;
                                        WeightMax = 100000000
                                    }
                                    $('#pvzSelect').append('<option value="' + code + '" data-name="' + Name + '" data-citycode="' + CityCode + '" data-address="' + Address + '" data-worktime="' + WorkTime + '" data-phone="' + Phone + '" data-note="' + Note + '" data-weightmin="' + WeightMin + '" data-weightmax="' + WeightMax + '" style="font-size:16px; width:98%; text-align:center; margin-top:15px; margin-bottom:15px; margin-left:1%; background-color: white;">' + Address + '</option>');
                                    $('#pvzSelect').removeAttr('disabled')
                                }
                                $('#pvzSelect').on('change', function () {
                                    $('#pvzAddData').remove();
                                    $('#pvzCode').val($(this).val());
                                    $('#pvzAddress').val($('#pvzSelect option:selected').data('address'));

                                })
                            } else {
                                $('#tariffId').remove();
                                resetError(selectPoint.parentNode);
                                showError(selectPoint.parentNode, '<label style="color:red;margin-bottom: 5px;"> Нет пунктов доставки. Выберите достаку по адресу! </label>');
                                return
                            }

                        }
                    })

И вторая проблема связанна с суммой страховки. Должна учитываться сумма страховки при оформлении заказа и пересчете стоимости доставки. Но она не учитывается, вернее она учитывается но только со стоимости самой доставки, а должна учитываться с общей суммы: Стоимость товаров + стоимость доставки. Тоже не удается победить. При этом проблема с указанием процента страховки в виде 0,75% тоже присутствует. Не принимает такие значения, только целые вида: 1 или 2 или 3.
Необходимо решить данные вопросы, но либо у меня не хватает знаний, либо это не решаемо! Прошу помощи!
 
Тоже попытаюсь попросить помощи по этому "веселому" движку)))). Возник вопрос добавления разметки Open Graph, может кто делал? как ее внедрить на весь сайт?
 
А разрабы не забили еще на эту сборку?
 
Назад
Сверху