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

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

С нами с 02 сентября 2016; Место в рейтинге пользователей: #64
Александр Мельник
23 июня 2021, 17:31
0
Сделать ли блюда списком или простое текстовое поле?
разве это не будут ресурсы?
Александр Мельник
23 июня 2021, 17:28
0
Что должно быть в админке для раздела «Меню»?
Кто кроме вас знает что есть на вашем сайте?
Я бы советовал брать бумагу и ручку и рисовать. Представить что нужно менеджеру в админке, чем он должен управлять, как это разбит на группы. Потому подумать еще, постараться как можно боле удобно разместить информацию, представить было ли удобно самому…
Придерживаюсь мнения, что для того чтобы что-то сделать, это всегда нужно сначала визуализировать.
Александр Мельник
23 июня 2021, 17:10
0
я наверное вас не совсем понял.
Вы спрашивали как сделать удобную админку, я вам говорю что по своей сути удобную админку сделать на modx не просто. Это может сделать только человек, хорошо разбирающийся в javascript фреймворке ExtJS который и занимается отрисовкой админки. Без этого знания вам будет очень сложно.
Большинство контент менеджеров находят админку modx отталкивающей и перегруженой.
Я не касаюсь конкретно админки ресторана, я без понятия что такое «меню по два блюда и так далее».
Я не знаю что вы считаете «удобным», возможно вам стандартных элементов хватит, типа ТВ полей
Я не знаю уровня ваших знаний, иначе сказал бы, что если вам неприменно хочется на modx но с красивой админкой, в которой нет ничего лишнего, то делайте свою админку, отдельную от админки котороая идет в комплекте.
Александр Мельник
22 июня 2021, 21:14
0
да, это разумно. Идея создавать под каждый «город» свой сайт изначально провальна.
Наверное это в первую очередь стоит осознать автору поста, не нужно было создавать два разных сайта.
Александр Мельник
22 июня 2021, 19:42
+1
можно взглянуть на текст договора на разработку сайта? А то может вы хотите используя знания людей с этого сайта «кинуть» честного разработчика и не платить ему?
Александр Мельник
22 июня 2021, 17:23
0
Ну а кстати да, давайте порассуждаем.
Я вот признаюсь, тоже не могу представить как удобно сделать сайт на modx, который мог бы отображать разную информацию на поддоменах.
Начнем с того, что изначально такой цели не стояло и был создан сайт site.com
Через время заказчик или SEO (ох уж эти SEO ) говорят нам нужны сайты с примерно тем же содержанием но под все города России на поддоменах. Ок, со всеми городами пока подождем, потому что тут сразу становится понятно, что делать копии сайта и размещать их на поддоменах как полноценные сайты со своей базой — не вариант.
Начнем с того, что заказчик говорит — хочу два поддомена piter.site.com и smolensk.site.com содержимое этих сайтов вроде и похожее, но не совсем — товары могут быть не все в наличии что на основном сайте, цены само собой другие, тайтлы у страниц другие и содержимое страниц другое — тоесть тексты на страницах заточены под конкретный город.
Вот какие у кого идеи решения? Вроде и одинаковые сайты и наверное это можно разрулить на уровне настроек nginx, но ведь и не совсем одинаковые — тексты разные, цены разные…
И конечно, никто не хочет отдельно заполнять три сайта. А потом может быть и 600 сайтов.
Александр Мельник
22 июня 2021, 17:07
0
Возможно многие не согласятся и будут правы, но Антон, не делайте сайт на modx если хотите удобную админку и при этом вы не эксперт в extJS
Александр Мельник
22 июня 2021, 16:14
+1
Просто интереса ради, а какие условия вы обсуждали изначально с разработчиком?
Возможно доступ разработчика к сайту и ежемесячное обслуживание это не такой уж плохой вариант?
Что будете делать когда с сайтом случится беда или потребуется добавить новый функционал?
Начнете искать других людей, которые совершенно не знакомы с проектом, не станут вникать в его нюасны, выполнят работу на абы как, возьмут с вас деньги и исчезнут. И да, после них все равно придется все доступы менять…
Александр Мельник
18 июня 2021, 07:33
+1
Открыл assets/components/tickets/js/web/default.js и вижу, что при сохранении тикета скрипт вызывает свое событие javascript и передает в него response. А значит вы можете обойтись и без правки исходников, написать свой javascript скрипт, отлавливать там наступление этого события и если оно успешно писать данные в базу.
success: function (response) {
                    $(document).trigger('tickets_ticket_save', response);
Александр Мельник
17 июня 2021, 19:05
0
Какие шаги вы делали? Как пытались решить задачу?
Первое что приходит на ум мне, это создать новую таблицу в базе у которой будет два колонки — id ресурса и id пользователя.
Писать в эту таблицу данные, когда какой то пользователь оставляет комментарий.
В шаблоне страницы вызывать свой сниппет, который на вход будет принимать id ресурса и id пользователя и внутри делать запрос к новой таблице. Если count() от этого запроса будет больше 0 значит что этот пользователь уже «отметился» на этой странице. В такой случае выставляем в вашем сниппете какой то плейсхолдер.
Ниже в шаблоне на основании этого плейсхолдера решаем — стоит ли вообще вызывать тикетс или нет.
Александр Мельник
10 июня 2021, 19:33
0
мне крыть нечем, это очень правильное замечание.
Александр Мельник
10 июня 2021, 19:20
0
Разумная идея, спасибо.
Тут уже включаются нюансы проекта. Такой способ конечно хорош, но он не исключает того, что один пользователь получит законно ссылку на скачивание файла и передаст тому, кто такого права не имеет.
И тут уже будут юридические нюансы ответственности, если службой безопасности предприятия будет доказано, что файл был незаконно получен именно с сайта (то есть может быть скачан по прямой ссылке) то ответственность будет нести разработчик. Если же один человек скачал законно файл, а потом передал его по почте тому, кто доступа к файлу не имеет — будет отвечать сотрудник это сделавший.
Александр Мельник
10 июня 2021, 18:21
0
Существенно ниже при отдаче как статики, около 15 процентов нагрузки на процессора от nginx процесса.
Конечно сервер самый простенький, но зато на нем более показательные получаются результаты. Раз одноядерный процессор может уйти в 100 процентов от отдачи одного файла, то значит нельзя рассчитывать только на вертикальное масштабирование сервера.
Даже если установить 16 ядер то 20 пользователей, которые примерно одновременно запросят на выдачу файл — уложат и 16 ядер легко.
Будем думать, к счастью время есть для поиска оптимального решения, возможно напишу линукс демон, который будет в фоновом режиме пережимать видео и с гигабайта останется 300 мегабайт.
Александр Мельник
10 июня 2021, 17:04
0
Да, документация по функции readfile() не обманула, оперативной памяти расходуется мало в момент отдачи файла, но… процессор сервера кладет в 100%.
На сервере с такими характеристиками
«Процессор1 x 2.8 ГГц
Оперативная память 1 ГБ
NVMe 10 ГБ»
отдача даже одного файла приводит к полной загрузке процессора.
Александр Мельник
08 июня 2021, 20:59
0
Спасибо Сергей большое.
Я через поиск находил примерно эти же страницы, но просто работа над проектом еще не начата и я только вскользь ознакамливался с этой темой.
Набросал отдачу через file_put_content() и она работала хорошо, но я пробовал файлы около 100 мегабайт, а у меня предвидятся файлы с видеозаписями по 2-3 гигабайта, причем доступ к ним может быть сразу у сотни пользователей одновременно.
И иногда видеофайл нужно отдать на скачивание, а иногда его нужно запустить на воспроизведение в браузере и здесь я снова плаваю в теории, насколько я понимаю для воспроизведения в браузере как раз хорошо если буферизация включена.
В общем уже буду более детально вникать когда подпишем договор на эту работу.
Александр Мельник
08 июня 2021, 12:38
0
Вы проверьте работает ли вообще отправка почты, скорее всего сам sendex тут и не причем.
Например вот так
ilyaut.ru/cheats/checking-of-email-in-modx/
Александр Мельник
08 июня 2021, 09:42
0
Выкидывает данные сразу в выходной поток.
раз сразу идет в stdout то как отдаются большие файлы? Он же должен делить их как то на порции?
А по клику переадресация на нормальный файл.
В таком случае один пользователь может передать другому ссылку и тот скачает файл без проблем.
Александр Мельник
08 июня 2021, 09:20
0
Спасибо. Та примерно так я и планирую действовать, передавая заголовки ответа для скачивания и содержимое файла.
Однако не могу сказать что я точно и доподлинно понимаю как работает встроенная функция readfile() в интерпретаторе php.
Куда именно она читает, как работает с потоком, например видео.
Что будет если 10 пользователей запросят на скачивание видео файл размером 12 гигабайт.
Александр Мельник
07 июня 2021, 21:02
0
Неплохо было бы расписать, что такое Sharepoint или это настолько популярная вещь, что не знать о ней стыдно?

Расскажите как планируете делать показ и отдачу файлов пользователем? Мне кажется вы столкнетесь с той же проблемой, с которой вскоре столкнусь и я (правда не в рамках modx но все еще в рамках php)
Поделитесь своими мыслями?
Если файлы могут видеть и скачивать не все, то это означает что перед их отдачей нужно проверять наличие прав. А это значит что отдачу файла нельзя поручить просто вебсерверу, как обычную статику иначе при наличии прямой ссылки на файл кто угодно его скачает. А значит отдачу нужно производить уже через php, например читая file_get_contents() и отдавая file_put… Но я предвижу тут проблемы с файлами большого размера.
Как планировали поступить вы?
Александр Мельник
06 июня 2021, 21:39
0
Иван а подскажите пожалуйста, откуда можно узнать адрес репозитория minishop2 на гитхабе?
Или вообще узнать о его существовании?
Я не иронизирую, просто я долгие годы пользовался minishop устанавливая его как дополнение из адмники modx.
Открыл страницу
modstore.pro/packages/ecommerce/minishop2
не вижу там ни слова о гитхабе
В документации
docs.modx.pro/komponentyi/minishop2
тоже не вижу.
И только когда месяц назад вы попросили описать одну проблему не здесь на сайте, а в виде issue на гитхабе, только тогда вы дали ссылку.