Александр Мельник

Александр Мельник

С нами с 02 сентября 2016; Место в рейтинге пользователей: #64
Александр Мельник
12 октября 2020, 08:41
0
Разве не правильнее просто вызвать в сниппете событие, на которое подписан данный плагин?
docs.modx.com/current/en/extending-modx/plugins/system-events
Но наверное код сниппета можно получить и через $modx->getObject('какой там класс у плагинов', идентификатор плагина); Но выполнять его придется через eval()
Александр Мельник
12 октября 2020, 08:29
0
До WeakMap я еще не дошел в этом учебнике, спасибо.
Знаете что еще немного удивляет в js — это отсутствие официальной документации.
Я ведь не ошибаюсь — ее нет? У php есть php.net документация на котором ведется разработчиками, у python есть python.org, но я не встречал официального сайта по js (ну и кстати по CSS тоже). Есть learn.javascript есть mozilla MDN (но mozilla само по себе open source сообщество и это как я понимаю просто ребята молодцы и своими силами собирают в одном месте информацию), есть кучи статей на хабре или видео на ютубе, но ни одного сайта не видел который можно было назвать официальным и первоисточником.
Александр Мельник
12 октября 2020, 08:11
0
спасибо. действительно, я изучаю js сквозь призму знаний о php и это сбивает с толку. В моем понимании раз скрипт отработал, то зачем же все значения переменных остались лежать в оперативной памяти.
Александр Мельник
11 октября 2020, 23:37
0
спасибо Иван, но все эти статьи о разницах между const, var let а ведь мой вопрос был не о них.
Я хочу понять как работает сборка мусора в javascript и какой жизненный цикл переменных в браузере, в какой момент очищается оперативная память, выделенная под определенную переменную и так далее.
Александр Мельник
11 октября 2020, 18:49
0
я пытался сам себе пояснить, что мол глобально объявленные переменные становятся свойствами объекта window, а этот объект живет столько сколько открыто окно.
Но нет.
«современный синтаксис» задания переменных не помещает их в свойства window.
<body>
    <h2>Objects</h2>
    <script>
        'use strict'
        const test1 = 1;
        let test2 = 2;
        var test3 = 3;

        const user = {
            name: 'alex',
            age: 40
        };
    </script>
</body>
Только test 3 заданная через устаревший var попала в window. Остальные переменные — нет. А значит почему они «живы» мне не ясно)
Александр Мельник
11 октября 2020, 17:36
0
Верно, соглашусь с Антоном. Как это сделать вам написали, далее все зависит от вашей логики, вернее от логики вашей программы и
есть свои причины
Наверное нужно добавить только одно — удалить ресурс при помощи такого кода сможет только администратор (пользователь имеющий право запуска процессоров), а вот гость с фронтенда — не сможет.
Александр Мельник
09 октября 2020, 14:56
0
«скорее всего дело в том, что у вас верстка выполнена с ошибками стандарта.
инпут не должен находиться внутри тега лейбел.» — хотел написать я, а потом открыл
developer.mozilla.org/ru/docs/Web/HTML/Element/label
и увидел что можно и так и так )

Попробуйте вообще убрать айдишник с лейбла, поскольку если инпут у него внутри, то он не нужен.
ajaxform в случае успешной отправки делает reset для формы и видимо в этот момент что-то идет не так.
Попробуйте просто в консоли браузера получить свою форму и вызвать у нее метод reset
Александр Мельник
05 октября 2020, 12:02
0
Но лучше пока есть резервные копии в которых все работало — откатиться к ним. А потом уже сделать тестовую версию сайта и на ней пробовать отключать компонент.
Александр Мельник
05 октября 2020, 11:58
0
значит только в базе данных нужно искать в таблице с системными настройками.
Александр Мельник
05 октября 2020, 11:43
0
Возможно я не прав, но помоему установка fastField как отдельного компонента приводит к смене класса парсера в системных настройках.
Если админка работает посмотрите что прописано в настройке с ключем —
parser_class
Александр Мельник
02 октября 2020, 16:39
0
правы как всегда.
вместо того чтобы в каждой ветке новые длиннющие рассуждения писать
я просто знаю одно такое свое качество — если я пишу очень кратко, то меня совсем не понимают. Поэтому всегда стараюсь подавать мысль развернуто. Но даже это не всегда приводит к желаемому результату.
было бы полезно тратить этот час в день на самообразование.
Верно, но как бы странно это не звучало — я на работе и просто не могу себе позволить на час два полностью увлечься чем-то и вникнуть. Каждые 10 минут приходят задачи по десяткам проектам и сосредоточиться на изучении нового почти нереально. Но закончив работу я стараюсь найти время и разузнать что-то новое. Но нового так много, мне кажется в мире вообще каждую минуту создают новый фреймворк над фреймворком и через еще 30 секунд уже кто-то успевает написать 23 плагина к этому фреймворку))
Александр Мельник
02 октября 2020, 16:15
0
наверное вы правы, да.
Вроде бы и можно использовать, а вроде как из пушки по воробьям стрелять.
По крайней мере выгоды перед галпом никакой, а в изучении сложнее.
Да и например в фреймворке Yii2 там есть свой механизм перемещения статичных файлов (изображений, стилей, js — ок) в публичную директорию и мне кажется это будет конфликтовать.
Но это так — совершенно не на чем не основанные выводы, никогда не использовал ни webpack ни gulp, да и что-то подсказывает что не буду.
Вчера смотрел видео по webpack (хорошее и качественное) и ловил себя на мысли, что я не понимаю и не принимаю новых тенденций. В предыстории говориться, что в незапамятные времена скрипты в проект подключали просто ужасно через script src = и это так ужасно. Что человечество изобрело вебпак. И после этого начинается — установим nodejs, установим вебпак. А в это время в терминале где отображается ход установки — загружено 24658 файлов в node_modules. Установим кучу плагинов, создадим безумный конфигурационный файл, будем каждый раз запускать пересборку всего проекта, когда добавили строчку в код. И по итогу одна строка console.log('hello world') в нашем скрипте превращяется в 100 строк (без шуток) кода в сгенерированном вебпаком файле, в котором код запускается через eval и… у всех это вызывает радость и восторг.
Наверное я просто не пишу настолько сложного кода, чтобы данный инструмент начал приносить удовольствие, а не раздражение.
Александр Мельник
02 октября 2020, 14:48
0
ну я просто в вебпаке совсем профан, но да — почувствовал вчера, что он совсем не годиться для обычного php фреймворка. Не какихто новомодных spa и прочих, а там где html формируется на сервере.
Спасибо, вы подтвердили мое мнение.
Александр Мельник
02 октября 2020, 12:38
0
Я не понимаю вашу иронию.
Поделитесь что не так?
Александр Мельник
02 октября 2020, 12:36
0
Основной посыл Василия понятен. Поскольку он при разработке пользуется всякими системами сборки типа вебпака, миграциями баз данных, то он автоматизирует процесс запуска этих моментов, написав некий bash скрипт, который выполняется как хук для git, а сам git запускается по крону. Хороший вариант и как информация — интересно.
Мне показалось слишком запутанным манипуляции с ssh ключами. Но я наверное не знаю что такое deploy ключи, всегда пользовался просто ssh ключем который можно указать в настройках аккаунта, а не отдельного репозитория.
Василий (а может и не только Василий), а поделитесь ка пожалуйста такой информацией если найдете минуту. Знаю вы активно используете webpack. Вчера у меня было время и я ради интереса решил ознакомится с инструментом этим. Разумеется поверхностно. И мне показалось что это хороший инструмент для верстки, для статичных сайтов или же для проектов на чистом js. И мое самое большое недоумение — это как этим пользоваться на php фреймворках. Как бы так описать, что вызвало это недоумение. Вебпак так или иначе собирает скрипты, стили в файлы и в имени файла есть некий хеш, чтобы избежать кеширования в браузере пользователя. Эти файлы должны как-то подключаться в шаблон. Так вот на всех примерах и видео которые я просмотрел, все это происходило так — был отдельно файл index.html в котором создавался html код. а потом вебпак при сборке этот файл обрабатывал, добавлял к нему подключение файлов c учетом хеша в имени. Но в php фреймворках у нас нет готового заранее html. Я вот использую например twig шаблонизатор и все что есть — это его файлы. Как это решаете вы? Как в ваши html шаблоны подключаются файлы, генерируемые вебпаком? И второе недоумение вызвал devServer вебпака. Удобная штука, хранит бандлы в оперативной памяти и все такое, но это ведь сервер на js? на node js вернее и он никак не сможет запустить php и отобразить страницу в браузере?
Александр Мельник
02 октября 2020, 10:53
0
это не юзер, а гость. если вы совсем не авторизованы — то вы гость. А вы же спрашивали что? как получить айдишник Авторизованного? Значит нужно создать нового пользователя и авторизоваться под ним.
Александр Мельник
02 октября 2020, 10:33
0
наверное же вы авторизованы как админ?)
Создайте другого пользователя, авторизуйтесь под ним — и увидите его id
Александр Мельник
02 октября 2020, 09:35
0
не важно при помощи каких инструментов сделана авторизация.
Если пользователь авторизован то данные о нем лежат в объекте user который можно получить через основной объект $modx ровно так как в первом комментарии 6 лет назад написал Василий.
$id = $modx->user->id;
Александр Мельник
01 октября 2020, 21:47
0
сравниваются не пароли друг с другом, а их хеши. Если вы знаете как захеширован пароль, то что вам стоит из базы получить хеш строку, захешироавть то что ввел пользователь и сравнить. если совпали, то значит пользователь ввел верно.