Сергей Шлоков

Сергей Шлоков

С нами с 31 января 2013; Место в рейтинге пользователей: #5
12 января 2017, 09:23
0
Без опыта программирования мои подсказки вам мало помогут. Тем более, задача описана поверхностно.
11 января 2017, 11:39
0
У страниц с id 1 и 23 должны быть дочерние элементы.
11 января 2017, 10:14
0
В базовой версии права привязываются не к календарям, а к событиям. Для настройки прав для календарей нужно написать свой сниппет-обёртку и в нём описать описанные вами правила. Для запрета редактирования выставлять параметр сниппета readOnly=`1`.
10 января 2017, 22:50
0
Напрашивается только один вывод — автор дополнения удалил данный функционал.
07 января 2017, 13:57
+3
В модсторе же так: обычная цена — это цена себестоимости плюс 20% сверху для окупаемости, а на распродажи делают скидку в эти 20% и продают по себестоимости.
Всё совсем не так. Причём тут себестоимость modstore. Они берут 30% с цены продукта за предоставление площадки. Цену на продукт они не определяют. Её ставит разработчик! И скидка идёт не с доли modstore, а с общей цены. У modstore есть определенные расходы. И они никак не коррелируют с ценами компонентов. И даже полученные 30% от всех продаж могут не покрыть эти расходы. Поэтому устраивают акции для стимулирования продаж.

А кому не нравится размер скидки, стоимость пакетов и т.п. могут сделать свой магазин с блекджеком и клюшками.
06 января 2017, 21:24
+3
Можно короче
&where=`["DAYOFMONTH(ADDDATE('1970-01-01 00:00:00', INTERVAL modUserProfile.dob SECOND)) = DAYOFMONTH(now()) AND 
MONTH(ADDDATE('1970-01-01 00:00:00', INTERVAL modUserProfile.dob SECOND)) = MONTH(now()) and modUserProfile.dob <> 0"]`
06 января 2017, 19:42
+2
Решение, полученное самостоятельно на порядок ценнее, чем подсказанное. Попробуйте сами, а потом сравните с этим
DAYOFMONTH(IF(modUserProfile.dob>0,FROM_UNIXTIME(modUserProfile.dob),ADDDATE('1970-01-01 00:00:00', INTERVAL modUserProfile.dob SECOND))) = DAYOFMONTH(now()) AND 
MONTH(IF(modUserProfile.dob>0,FROM_UNIXTIME(modUserProfile.dob),ADDDATE('1970-01-01 00:00:00', INTERVAL modUserProfile.dob SECOND))) = MONTH(now()) and modUserProfile.dob <> 0
04 января 2017, 19:56
+2
Согласись, 90 строк лучше 420-ти?
И здесь сразу несколько плюсов:
1. Это работает теперь в том числе и на включенной компрессии.
2. Это не перетирает чужие кастомные скрипты.
3. Это не ломает чужие лейауты (сейчас, если кто-то переопределит на свой лад modx-layout, свой код его затрет).
4. Гораздо меньше кода (что обслуживать легче).
5. БОльшая обратная совместимость (не придется отслеживать версию MODX-а в случае, если в новой версии MODX-а будут изменения на уровне твоего текущего переопределенного блока контроллера).
Согласен со всеми пунктами. Поэтому, если ты не против, я твой код использую.
Честно говоря был уверен, что в лейауты админки никто не лазит.

В общем, если ты хочешь писать правильные компоненты, во-первых, меньше огрызайся и больше слушай других, а во-вторых, научись хотеть писать правильный код.
Слушать что, бесконечные оскорбления и фантазии? Это первый комментарий, где ты как более опытный товарищ помог решить проблему. Правда приправив опять же фирменным хамством. Видимо без этого никак. Но если первый и последний абзац выкинуть, то очень хороший разбор.

P.S. А еще лучше пуллреквест бы в MODX отправил. Там вопрос в двух строчках.
Они мой безобидный PR для отображения используемой памяти принять уже год не могут. А уж про PR с лейаутом и мечтать нечего. Они только критические PR принимают. Видимо интереса ко второй ветке у них уже нет.
04 января 2017, 15:38
+2
Постараюсь ответить вежливо.
Вот в админтулс ты нафига вот это переписал вот этим.
Если ты не понял зачем, может тогда ты себя переоцениваешь? За PR спасибо, но так как ты не понял смысла, то соответственно он ломает задуманный функционал. За $this->modx->smarty->get_template_vars() тоже благодарность, возьму на вооружение.
Написал что-то лично свое, что ломает работу других компонентов. Вот очередная жалоба поступила. Ты считаешь, это профессионально?
А чё не сотая, тысячная, миллионная для драматизма? Конфликты приложений существовали до меня и будут существовать после. А профессиональным я считаю дать знать автору о проблеме.
а то так и будешь писать код для новичков. А ведь наверняка мечтаешь о признании и среди опытных программистов.
Перечитай мою страничку. Я не вижу ничего позорного писать для новичков.

П.С. PR не приму по описанной выше причине.
П.П.С. Я один раз имел неосторожность обратить внимание на твой robots.txt. Твоими «благовониями» все браузеры пропахли. На те же грабли наступать не собираюсь.

У меня только единственное к тебе пожелание — «Коля, перепиши ты этот oneBooking!»
03 января 2017, 12:38
0
А почему нельзя сначала доки посмотреть?
03 января 2017, 11:49
+2
Что-то мне это напоминает. Вторая часть Марлезонского балета? Василий тогда уже всё сказал. Повторяться не буду.

По последнему абзацу… Чем же тебе помочь, брат? Может тебе отдыхать нужно побольше? Отвлекись. Найди что-ли девушку. Сходите в кафе или театр. Вокруг столько интересного.
Подумай на этим.
02 января 2017, 00:40
+5
Добавил 4 метода логирования (error(), warn(), info() и debug()) и несколько функций для коллекций и объектов — обновление, удаление, подсчет количества (см. последний примеры).
Думаю пока хватит. Жду ваших предложений. Одна голова хорошо…
01 января 2017, 18:36
+4
Запулил в оба репозитория. В официальном уже. В модсторе ждем конца праздников.
01 января 2017, 16:33
+2
Поддерживаю такое мнение.
если автор захочет продавать их на весь мир.
Т.е. в modstore будет опция кому продавать пакет?
01 января 2017, 15:35
+4
Рад что хоть документация пригодилась. Только слабо понимаю чем.
А если подключалось бы в виде приложения еще круче было бы.
Документация занимает в разы больше времени, чем разработка. А чтобы сделать в виде пакета, нужно перевести её на английский. Мне легче застрелиться. Могу сделать только для ru сегмента в modstore.
01 января 2017, 12:49
+2
Пожалуйста!
Вот и ты пополнил ряды любителей бесполезных вещей. :)
31 декабря 2016, 19:22
+3
Поздравляю!
Уже, как минимум, год мы никак не связаны с Simple Dream.
А я думал, что вы и есть СД.
31 декабря 2016, 17:22
+2
На здоровье!
31 декабря 2016, 17:18
+1
Да мы уже должны были в гости уехать, но у жены резко поднялась высокая температура, да ещё у ребёнка недомогание. Явно тоже заболевает. Пришлось распрягать коней и все 100 пакетов и пакетиков обратно заносить домой. Будем отмечать дома в одиночестве. Поэтому и сижу скучаю. :)
П.С. Ещё и 1-е и 2-е освободилось.
31 декабря 2016, 17:12
0
Сделано. Добавил четвёртый строковый параметр, в котором можно указать нужный атрибут. Метод магический. Этот параметр можно указывать и вторым и третьим и четвертым.
// Загрузка файла скрипта в конец страницы
script('/path/to/script.js', 'acync'); // <script acync type="text/javascript" src="/path/to/script.js"></script>

// Загрузка файла скрипта в секцию head
script('/path/to/script.js', true, 'deffer'); // <script deffer type="text/javascript" src="/path/to/script.js"></script>