Evgeny Epifanov

Evgeny Epifanov

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

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

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

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

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

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

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

Простота атаки и беспечность владельцев сайтов привели к тому, что я уже неделю разгребаю последствия этой атаки на modhost.pro. Итак, что нужно делать, чтобы вылечить свои сайты?
Василий Наумкин
31 июля 2018, 09:57
modx.pro
16
11 465
+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 197
0

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

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

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

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

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

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

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


Описание

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

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

Сниппет msAddLinked.input

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

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

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



Небольшая инструкция, как я это делаю:
Наумов Алексей
17 февраля 2016, 08:36
modx.pro
32
5 630
+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 278
-1

[SkypeNotify] - уведомление в скайп для MODX

[SkypeNotify] — собственно уведомление в скайп для MODX.
подключить и инициализировать skypenotify
$skypenotify = $modx->getService('skypenotify')
$skypenotify->initialize();
подключить аккаунт скайп
$skypenotify->connect('login', 'password');
отправить сообщение
$skypenotify->sendMessage('login', 'Привет Боб, как дела?');
Володя
11 декабря 2015, 13:31
modx.pro
17
2 093
+11

[modNewYear] 1.0.0

Решил накидать какой-нибудь новогодний компонент.
Получилась гирлянда на всех страницах фронтенда =).
Лев Вербицкий
11 декабря 2015, 13:25
modx.pro
4
2 141
+6