Evgeny Epifanov

Evgeny Epifanov

С нами с 17 июня 2013; Место в рейтинге пользователей: #186

[goodStar] - "накрутка рейтинга"



Сегодня написали в ТП, спросили, как можно накрутить рейтинг. Хотел сначала персонально написать скрипт, но потом подумал. что это может пригодится всем. Поэтому не много доработал компонент для накрутки рейтинга.
Михаил
09 декабря 2018, 12:07
modx.pro
6
1 527
+10

[miniShop2] Как тестировать письма без оформления заказа


Иногда приходится тестировать внешний вид писем, отсылаемых при оформлении заказа. Чтобы не оформлять постоянно заказ для просмотра внешнего вида, написал сниппет. Подробности под катом.
Павел Гвоздь
25 ноября 2018, 15:48
modx.pro
36
4 179
+13

modalConsole. Модальная консоль для PHP кода

На днях прибирался в PHPStorm и обнаружил один старый проект, который начал пилить ещё полтора года назад. Я тогда решил сделать для себя более удобную консоль, чем Console Николая Ланца. Мне не хватало возможности вызвать консоль прямо в текущем окне. Консоль Николая нужно открывать на отдельной странице. Ну и по мелочи — ресайзить окна, иметь возможность запоминать предыдущий код.

Сергей Шлоков
11 ноября 2018, 16:31
modx.pro
8
1 770
+23

Лечение зараженных сайтов на modhost.pro

Привет, друзья!

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

Простота атаки и беспечность владельцев сайтов привели к тому, что я уже неделю разгребаю последствия этой атаки на modhost.pro. Итак, что нужно делать, чтобы вылечить свои сайты?
Василий Наумкин
31 июля 2018, 09:57
modx.pro
16
12 246
+19

msProductOptions глюк

[[msProductOptions? &hideEmpty=`1`]]
в итоге на странице получаю характеристики товара в таком виде
Повреждения: ROLLOVER 
Привод: privod, , default, , listbox 
Пробег: probeg, , default, , number 
Розничная цена: roznicaprice, , default, , number 
Состояние: sostoyanie, , default, , listbox 
Статус ставки: statusstavki, Never Bid, default, , listbox 
Стоимость ремонта: stoimostremonta, , default, , number 
Аукцион: auction, Manheim, default, , listbox 
Тип кузова: tipkuzova, , default, , listbox 
Цилиндры: cilindri, , default, , number : tipprodazi, s1, default, , listbox : colorinto, , default, , listbox 
Тип топлива: tiptopliva, бензин, default, , listbox 
Цвет кузова: colorext, черный, default, , listbox 
Вид транспорта: vidtransporta, 
Автомобиль, default, , listbox : datesale, , default, , date 
ВИН номер: vin, , default, , text 
Расположение: location, TX - DALLAS, default, , listbox 
Марка: make, Acura, default, , listbox 
Лот: lotid, , default, , text 
Год: year, , default, , number : model, ESCAPE SE, default, , listbox 
Текущая ставка: 200 
Объем двигателя: obemdvigatel, , default, , text
Конструкция вида
<pre>[[msProductOptions? &tpl=``]]</pre>

выводит следующее:

Array
(
    [options] => Array
        (
            [obemdvigatel] => Array
                (
                    [id] => 10
                    [caption] => Объем двигателя
                    [description] => 
                    [measure_unit] => 
                    [category] => 47
                    [type] => textfield
                    [properties] => 
                    [product_id] => 51
                    [key] => obemdvigatel
                    [value] => Array
                        (
                            [0] => obemdvigatel
                            [1] => 
                            [2] => default
                            [3] => 
                            [4] => text
                        )

                    [category_name] => 1 - Характеристики
                )

            [povrezdenia] => Array
                (
                    [id] => 11
                    [caption] => Повреждения
                    [description] => 
                    [measure_unit] => 
                    [category] => 47
                    [type] => textfield
                    [properties] => 
                    [product_id] => 51
                    [key] => povrezdenia
                    [value] => Array
                        (
                            [0] => ROLLOVER
                        )

                    [category_name] => 1 - Характеристики
                )

            [privod] => Array
                (
                    [id] => 12
                    [caption] => Привод
                    [description] => 
                    [measure_unit] => 
                    [category] => 47
                    [type] => textfield
                    [properties] => 
                    [product_id] => 51
                    [key] => privod
                    [value] => Array
                        (
                            [0] => privod
                            [1] => 
                            [2] => default
                            [3] => 
                            [4] => listbox
                        )

                    [category_name] => 1 - Характеристики
                )

            [probeg] => Array
                (
                    [id] => 13
                    [caption] => Пробег
                    [description] => 
                    [measure_unit] => 
                    [category] => 47
                    [type] => numberfield
                    [properties] => 
                    [product_id] => 51
                    [key] => probeg
                    [value] => Array
                        (
                            [0] => probeg
                            [1] => 
                            [2] => default
                            [3] => 
                            [4] => number
                        )

                    [category_name] => 1 - Характеристики
                )
Sergey Karpov
16 января 2018, 18:46
modx.pro
2
1 478
0

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

Задача стояла в генерации ссылки на корзину, которую собрал клиент для отправки другому пользователю.
Разбил на несколько пунктов, так легче делать:
Михаил
17 сентября 2017, 10:30
modx.pro
3
3 936
+7

Сохранение корзины для пользователей

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

В качестве решения получился очень простой плагин, который выполняет 2 действия:
1) Сохраняет содержимое корзины в extended поля пользователя после каждого изменения корзины
2) Восстанавливает содержимое корзины перед каждой обработкой запрошенной страницы.

Воеводский Михаил
08 августа 2016, 15:06
modx.pro
42
6 330
+12

[msAddLinked] Опции товара с изменением цены


Описание

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

ВАЖНО: в списке связанных выводятся только те товары, для которых в связях текущий товар или указанный сниппету msAddLinked.input является главным.

Сниппет msAddLinked.input

Предназначен для вывода списка связанных товаров и полей ввода. По умолчанию выводятся чекбоксы, но, в теории, можно задать любой тип, поддерживаемый атрибутом type тэга input.
Проверена корректная работа типов text, number. Если в этих полях ввода указывать число, опции к товару в корзине будут добавлены в соответствующем количестве.
Воеводский Михаил
21 июля 2016, 11:57
modx.pro
8
11 387
+7

Добавляем "Цена от" для категории miniShop2

В некоторых моих сайтах-магазинах я отображаю в списке категорий цену в формате «от XXX руб.», вот так:



Небольшая инструкция, как я это делаю:
Наумов Алексей
17 февраля 2016, 08:36
modx.pro
32
6 150
+8

AjaxForm вывод своего pop-up, валидация форм.

Добрый день. Прошу помочь разобраться.
Вопрос №1:
AjaxForm имеет свои встроенные pop-up окна. Но я бы хотел выводить свой вариант pop-up окна. Я конечно мог бы повесить свои css стили на уже имеющиеся варианты, но все таки было бы лучше разобраться досконально. Как заставить AjaxForm при успешной отправке формы выводить мое сообщение с моими стилями?
Вопрос №2:
Как работает валидация? Она проверяет значения полей min-length или max-length? Как реально работают следующие строки:
&validate=`name:required,email:required,message:required`
?
Вопрос №3:
Из документации так и не понял, как научить AjaxForm добавлять css класс — error, при наличии ошибки валидации.
Перед написанием вопроса была изучена информация здесь
bezumkin.ru/sections/components/2070/
и здесь
docs.modx.pro/components/ajaxform
Егор Довгалюк
08 февраля 2016, 14:12
modx.pro
2
3 492
-1