Готовые решения /

[shareCart]-1.0.1-beta расширенный функционал



Не много начал добавлять функционал по задуманному списку.
22 сентября 2017, 15:09    Михаил
0    152    0 +5
Готовые решения /

[miniShop2] - Перенос изображений в Selectel

В данном топике решается проблема переноса изображений с сайта на Selectel Cloud Storage.
Ситуация с которой пришлось столкнуться — магазин наполнялся и все было хорошо, в какой то момент решили перейти на облачное хранилище. По хорошему нужно было создать новый медиасорс и его привязаться к Selectel, а затем задать его по дефолту, но было сделано иначе. Просто MS2 Images настроили на Selectel и дальше приняли спокойно наполнять.
И вроде бы все нормально, но… что же со старыми файлами что лежат на хостинге? А да, с ними проблемка…
Под катом скрипт для переноса вот таких изображений в облако.
22 сентября 2017, 12:13    Володя
5    141    0 +7
Новые дополнения и их версии /

Анонс modBitrixCRM - интеграция с Битрикс24

Повышение продаж является основной целью внедрения любой CRM системы. Битрикс24 не исключение.

Что такое Битрикс24?
Битрикс24 — это корпоративный портал, который имеет абсолютно все инструменты для автоматизации работы всей компании.
С помощью него Вы можете планировать рабочее время, назначать и исполнять задачи, создавать и контролировать сделки, вести учет клиентов и продаж.
19 сентября 2017, 05:59    Артем
0    293    10 +4
Готовые решения /

[shareCart] - поделись корзиной

Задача стояла в генерации ссылки на корзину, которую собрал клиент для отправки другому пользователю.
Разбил на несколько пунктов, так легче делать:
17 сентября 2017, 13:30    Михаил
3    259    9 +7
Готовые решения /

[Discontrol] - скидка по времени суток.

Собственно задача такая:
можно ли каким-то образом связать скидку с временем суток?
мне нужно, чтобы с 23 до 6 утра на все товары автоматом рассчитывалась скидка 5%.
Под катом решение…
15 сентября 2017, 13:50    Володя
3    213    0 +10
Пошаговые инструкции /

mSearch2 - сортировка кастомным select 'ом

Возникла необходимость кастомизировать стандартную сортировку компонента mSearch2.
Cортировка имела следующий вид:
Как оказалось компонент не может работать с select, а работает только тегом a. Ну да ладно, попробуем исправить это.
На сайте modx.pro в ветке Вопросы нашел вопрос Как сделать сортировку через select? от пользователя DimenSi. Вопрос частично решен если бы не одно НО
перестали работать фильтры, фильтрация срабатывает только после сортировки. Т.е. меняешь ценовой диапазон → ничего, после этого меняешь сортировку → срабатывает и сортировка и фильтр.

ПЛАН РАБОТЫ

  • Установка кастомного селеста
  • Написание скрипта для взаимодействия сортировки с компонентом
14 сентября 2017, 11:33    Roman
5    91    2 +5
Хостинг /

Попытка взлома

Привет.

Вчера с Чебоксарского IP-адреса пытались взломать наш хостинг.
14 сентября 2017, 10:35    Виталий Дощенко
1    581    40 +4
Новые дополнения и их версии /

Анонс msPartners - Партнерская программа для магазинов

Анонсирую компонент, позволяющий на основе связки MODX + miniShop2 + msPromoCode реализовать партнерскую программу по продаже чего угодно. Последний (msPromoCode) не обязателен, ибо, если его нет, то идентификация партнера производится только реф ссылкой. В случае наличия msPromoCode и определенной настройки, определение партнера может происходить еще и по скидочному промо-коду.

Пока такое краткое описание. Работа над дополнением уже идет полным ходом. Высказывайте свои пожелания в комментах к посту.
11 сентября 2017, 14:29    Павел Гвоздь
0    304    11 +10
Новые дополнения и их версии /

Эмулятор посредников для MODX

Всем привет! Хочу представить вам моё новое дополнение под названием Middlewares. Это эмулятор посредников. Как вы знаете MODX построена по концепции событийно-ориентированного программирования. Т.е. взаимодействие с системой происходит по наступлению события. Но большинство современных фреймворков используют механизм посредников. Да и разработчики MODX добавили этот функционал в 3-ю версию. Но увидим ли мы её когда-нибудь, вопрос.
09 сентября 2017, 17:39    Сергей Шлоков
6    530    13 +18
Готовые решения /

Minishop2 количество товаров в корзине

Доброго времени дня!
Необходимо вывести в мини корзине количество товаров (кол-во строк в корзине).
Как вывести на странице разобрался:
count(($miniShop2->cart->get()));
А как сделать что бы при добавлении нового товара автоматически обновлялось не знаю.

Плейсхолдер {$total_count} видел, не подходит. Он выводит общее количество товара. В моем случае товар продается метрами.
Например: кладем в корзину 5 метров одного товара и 3 метра другого. Плейсхолдер
{$total_count} выведет 8, а надо 2 (т.к. в корзине 2 товара)

Решение:
1) Расширил класс корзины:
<?php
if(!class_exists('msCartHandler')) {
    require_once dirname(dirname(dirname(__FILE__))) . '/model/minishop2/mscarthandler.class.php';
}
class myCartHandler extends msCartHandler implements msCartInterface{

    public function status($data = array())
    {
        $status = array(
            'total_count' => 0,
            'total_cost' => 0,
            'total_weight' => 0,
            'total_num' => 0,
        );
        foreach ($this->cart as $item) {
            if (empty($item['ctx']) || $item['ctx'] == $this->ctx) {
                $status['total_count'] += $item['count'];
                $status['total_cost'] += $item['price'] * $item['count'];
                $status['total_weight'] += $item['weight'] * $item['count'];
                $status['total_num']++;
            }
        }

        return array_merge($data, $status);
    }
}
— теперь у нас появился новый плейсхолдер — total_num

2) Что бы при добавлении в корзину у нас мини корзина сразу обновлялась дописал колбеки:
/* Добавление твоаров в корзине */
miniShop2.Callbacks.Cart.add.response.success = function(response) {
    //console.log(response.data['total_num']);
    miniShop2.Cart.totalNum = '.ms2_total_num';
    $(miniShop2.Cart.totalNum).text(response.data['total_num']);
};
/* Изменение твоаров в корзине */
miniShop2.Callbacks.Cart.change.response.success = function(response) {
    miniShop2.Cart.totalNum = '.ms2_total_num';
    $(miniShop2.Cart.totalNum).text(response.data['total_num']);
};
3) Добавляем в чанк с мини корзиной плейсхолдер и класс.
<span class="ms2_total_num">{$total_num}</span>
П.с. за наводку спасибо пользователю — Алексей
04 сентября 2017, 17:06    ruslan
2    178    13 0