Modx права на папки и файлы: Как правильно выставить права на файлы? / Русскоязычное сообщество MODX

Права доступа в MODX | Зона разработки

  • Безопасность
  • MODX

Если у вас не просто сайт-визитка, то вы обязательно столкнетесь с задачей разграничения доступа. Как правило, первое, с чем сталкиваются, это приватные страницы типа профиля пользователя. Это что касается сайта. Есть ещё задача управления этим сайтом. И тут кроме админа есть ещё контент-менеджеры, менеджеры по продажам и т.п. И все они работают через админку. Такая концепция MODX. Лично я уже давно считаю, что админка только для админа, а все интерфейсы дополнений необходимо выносить из админки. В этом есть определённые плюсы:

  • Не нужно использовать устаревшую библиотеку ExtJS. Она пугает многих новичков и раздражает опытных модыксеров. Да, MODX позволяет дополнению работать без этой библиотеки. Но таких юзкейсов единицы, информации по ним крайне мало. Так что начинающий разработчик дополнений не осилит данный подход.
  • Перегруженный интерфейс. Даже если отказаться от ExtJs, всё равно пользователь получит жутко перегруженный интерфейс ненужными UI объектами и огромным количеством загружаемых файлов. Плюс всё равно придется использовать API админки сайта и следовать его требованиям.
  • Дополнительный уровень безопасности. Например, на сайте с установленным минишопом менеджер, ограниченный минимальными правами, может легко получить полный доступ. Конечно, пользователь с определёнными знаниями. А если вы используете свою концепцию, то можете случайно открыть дырку и скомпрометировать админку. Ведь даже опытные разработчики на этом попадались. Что уж говорить про тех, у кого есть только базовые знания web-безопасности. А если менеджер сидит на фронте, то эта проблема вас беспокоить не будет. По крайней мере, не сильно.

Тут конечно, есть и минус данного подхода — разные точки входа. В админке все дополнения находятся в одном месте. Установил пакет и знаешь где его найти.

Это удобно. А в данном случае предётся вручную их собирать где-то. Но так работают сайты на фреймворках. И их разработчики вам скажут, что это скорее плюс — даёт больше гибкости.

Управление доступом

Модель безопасности в MODX строится на концепции ABAC и использует такое понятие как список контроля доступа (ACL). Сейчас мы разберёмся, что это такое и как оно работает. Для этого обратимся к документации MODX.

Принципал

В MODX принципалом выступает не сам пользователь, а группа пользователя. И чтобы права сработали, пользователя нужно добавить в эту группу. Причём, пользователь может входить в несколько групп. В MODX из коробки есть 2 группы пользователя — «(аноним)» и «Administrator». Если со второй всё понятно, то первая группа виртуальная. Она предназначена только для определения прав доступа для гостей.

Цели

В MODX доступ ограничивают для пяти объектов

  • контекст,
  • группа ресурсов,
  • категория элементов,
  • медиаисточник,
  • пространство имен (namespace)

Обратите внимание, все объекты единичные, а для ресурсов используется целая группа. Да, в MODX права задаются именно группе ресурсов, а не единичному ресурсу. Т.е. по аналогии с файловой системой на папки, а не на файлы. Ровно такой же принцип используется для настройки прав доступа к элементам MODX. Права определяются не к отдельному чанку или сниппету, а для категории элементов, которая как раз группирует элементы.

Политики доступа
Политика доступа — это список разрешений, объединенных по конкретному принципу. Например, есть политика доступа «Object» для работы с объектами. Она содержит разрешения на создание, редактирование, удаление, просмотр объекта и списка объектов. Все политики доступа можно найти в интерфейсе контроля доступа на вкладке «Политики доступа». Там же можно создать свою политику или скопировать уже существующую и выставить в ней нужные права.
Полномочия

Ну и следующий важный элемент системы безопасности — полномочия. Это минимальный уровень, который разрешает пользоваться указанными политиками. В MODX это синоним роли. И тут есть определенная особенность, ломающая мозг. Чем ниже число, тем выше уровень полномочий. Просто запомните этот факт. Он неинтуитивен.

В MODX из коробки есть 2 роли: 0 с псевдонимом «Super User» и 9999 с псевдонимом «Member». Так вот, 0 — это максимальные полномочия. 9999 — минимальные. Создавать роли можно в этих пределах.

Ещё запомните, когда говорят про число, то используют определение «ранг». Когда про псевдоним, то «роль». Таким образом, роль «Super User» имеет ранг 0, а роль «Member» — ранг 9999. Просто в разных местах используют оба понятия, но значат они одно и тоже.

Списки контроля доступа ACL

Теперь сформулируем понятие ACL. Это набор прав, указанных в политике доступа, прикреплённых к определённому объекту (контексту, группе ресурсов, категории) для определённой группы пользователей с указанной ролью. Как видите, списки контроля включают все вышеописанные понятия.

Таким образом, чтобы ограничить доступ пользователя к определённому ресурсу, нужно создать группу ресурсов, добавить в неё нужный ресурс, создать группу пользователей, добавить в неё пользователя и этой группе указать политику доступа к группе ресурсов с нужным уровнем полномочий. Это и называется ACL.

Важно!

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

Ещё важно отметить, что в MODX приоритет доступа allow/deny. Т.е. если для объекта не указан ACL, то доступ разрешён. Или вернее, права для него не проверяются. Например, из коробки в MODX для гостей контекста web задана политика доступа «Load Only» с ролью «Member». Соответственно, если вы создадите пользователя и залогините его на сайте, то должны получить ошибку 404. Причина — раз для контекста уже настроен контроль доступа, и текущий пользователь не прошёл проверку (ведь доступ разрешен только для гостей), то соответственно пользователю в доступе отказано. Поэтому вам придётся создать ещё один ACL для группы пользователя, предварительно её создав и добавив туда этого пользователя. Группе нужно дать доступ к контексту web и указать политику доступа «Load Only». Так как на сайте проверяется только эта политика для контекста.

Ну или второй вариант, удалить ACL для гостей. Тогда проверок не будет и пользователь получит доступ к странице. Именно такая логика задумана, что и подтверждается документацией. Но по факту это не так. Ибо есть баг, из-за которого проверка доступа к контексту не работает.

Системные настройки

Моделью безопасности можно управлять через настройки. Для этого есть специальный раздел «Авторизация и безопасность». И самое первое, на что мы обратим внимание — настройка principal_targets. В ней указаны объекты, для которых нужно проверять права. По-умолчанию, там перечислены все 5 — «modAccessContext,modAccessResourceGroup,modAccessCategory,sources.modAccessMediaSource,modAccessNamespace». Но это ещё не всё. Есть ещё 3 настройки, которые управляют доступом к отдельным объектам:

  • access_category_enabled — Проверять доступ к категориям,
  • access_context_enabled — Проверять доступ к контекстам,
  • access_resource_group_enabled — Проверять доступ к группам ресурсов.

Почему их всего 3, а не 5? Не спрашивайте.

Кэширование

В MODX очень многие вещи кэшируются. И права не исключение. Как я сказал выше, ACL для групп пользователя кэшируются в сессии пользователя. И сбросить этот кэш можно только заставив пользователя перелогиниться. ACL для групп ресурсов (modAccessResourceGroup) хранятся в кэше ресурса в ключике «policyCache». Права доступа к контекстам (modAccessContext) хранятся в кэше контекстов в ключике «policies». Оба кэша можно сбросить через меню «Очистить кэш».

Кэши остальных объектов я не нашёл. Вполне возможно, что их решили не кэшировать по причине того, что они используются только в админке, а значит нет проблем трёх секунд.

Заключение

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

1   2302

Настройка прав доступа для контент-менеджера в MODX Revolution

Всем привет! Сегодня мы рассмотрим настройку и разграничение прав в MODx Revolution. Создадим нового пользователя manager, ограничим его как следует и назначим соответствующие права на редактирование ресурсов и файлов.

Смотреть урок на YouTube

1. Создание нового пользователя и назначение прав

  • Переходим в меню: «Настройки» > «Контроль доступа»
  • Переходим на вкладку «Политики доступа»
  • Копируем «Content Editor», редактируем и называем новую политику «Менеджер»
  • Устанавливаем разрешения:
    • Установить галку «Изменять права доступа (chmod) к каталогам»
    • Установить галку «Создавать каталоги в файловой системе»
    • Установить галку «Получать список подкаталогов для каталога в файловой системе»
    • Установить галку «Переименовывать каталоги в файловой системе»
    • Установить галку «Создавать файлы»
    • Установить галку «Смотреть список файлов в определенном каталоге»
    • Установить галку «Использовать диспетчер файлов»
    • Установить галку «Удалять файлы»
    • Установить галку «Видеть дерево файлов в левой навигационной панели»
    • Установить галку «Изменять файлы»
    • Установить галку «Загружать файлы в папку»
    • Установить галку «Просматривать содержимое файла»
    • Установить галку «Использовать пакеты в системе управления пакетами»
    • Установить галку «Использовать страницу «Поиск»»
    • Сохранить.
  • Переходим в меню: «Настройки» > «Контроль доступа»
  • Переходим на вкладку: «Группы пользователей & Пользователи»
  • Создаем новую группу пользователей и задаем имя «Контент менеджеры»
  • Устанавливаем в окне новой группы пользователей контексты web, mgr
  • Политика бэкэнда в окне новой группы: «Менеджер» + Сохранить
  • Новая группа пользователей «Контент менеджеры» > Редактировать
  • Переходим на вкладку: «Права доступа»
  • На вкладке «Доступ к контекстам» редактируем mgr, web по очереди
  • mgr, web > редактировать, устанавливаем «Политика доступа» как «Менеджер» + Сохранить
  • Переходим в меню «Управление» > «Пользователи» и создаем нового пользователя по кнопке «Новый пользователь»
  • Имя manager, указываем E-mail менеджера, устанавливам радиобаттон ниже как «Я укажу пароль сам» и задаем пароль
  • Переходим на вкладку «Права доступа» > «Добавить пользователя в группу»
  • Группа пользователей: «Контент Менеджеры», Роль: «Super User»
  • Установить чекбокс «Активный» + Сохранить
  • Переходим в меню «Управление» > «Перезагрузить права доступа»

2.

Ограничения на просмотр файловой системы
2.1. Добавляем источник файлов
  • Переходим в меню: «Медиа» > «Источники файлов»
  • Скопируем «Filesystem»
  • Отредактируем скопированный источник
  • Название: «Images»; basePath, baseUrl: «assets/images/»
  • Переходим в меню: «Настройки» > «Контроль доступа»
  • Отредактируем группу пользователей «Контент менеджеры» правой кнопкой мыши
  • Переходим на вкладку: «Права доступа» > «Доступ к источнику файлов» и добавим новый источник по кнопке «Добавить источник файлов»
  • Источник: Images, Минимальная роль: Member — 9999, Политика доступа: Media Source Admin
  • Сохранить; Меню: «Управление» > «Очистить кэш»; Меню: «Управление» > «Перезагрузить права доступа»
2.2. Удаляем источник «Filesystem» для manager
  • Переходим в меню: «Медиа» > «Источники файлов»
  • Filesystem > Редактировать
  • Переходим на вкладку: «Права доступа», нажимаем «Добавить группу пользователей»
  • Группа пользователей: «Administrator», Минимальная роль: «Super User — 0», Политика: «Media Source Admin» + Сохранить
  • Переходим в меню: «Медиа» > «Источники файлов»
  • Images > Редактировать
  • Переходим на вкладку: «Права доступа», нажимаем «Добавить группу пользователей»
  • Группа пользователей: «Administrator», Минимальная роль: «Super User — 0», Политика: «Media Source Admin» + Сохранить

3.

Управление группами ресурсов
  • Переходим в меню: «Содержимое» > «Группы ресурсов»
  • Создать группу ресурсов
  • Имя: «Администратор», Контексты: «web,mgr»
  • Установить галку «Автоматически дать доступ группе Administrator»
  • Добавить элементы в новую группу «Администратор», которые мы хотим скрыть от менеджера
  • Сохранить; Меню: «Управление» > «Очистить кэш»; Меню: «Управление» > «Перезагрузить права доступа»

Премиум уроки от WebDesign Master

Создание сайта от А до Я. Комплексный курс

Создание современного интернет-магазина от А до Я

Я — фрилансер! Базовый курс для начинающих

Другие уроки по теме «CMS»
  • Ajax фильтр на MODx Revolution
  • Посадка типовой секции Landing Page на MODx с использованием MIGX (добавляемые поля)
  • MODX Revolution — Базовый урок
  • Как создать шаблон для WordPress. Грамотная посадка верстки на WordPress (Right Way)
  • Быстрое создание красивых сайтов на WordPress. Layers Style Kit на реальном примере

apache — Кэш ModX: файлы записываются с неправильными разрешениями

спросил

Изменено 10 лет, 1 месяц назад

Просмотрено 1к раз

Название на самом деле не суммирует все это…

Я недавно установил ModX Revolution 2.2.4 на сервер Apache, и у меня возникли проблемы с папкой кеша. Иногда мне приходится вручную очищать папку кеша через ftp, но любые записанные туда файлы принадлежат Apache, и моя учетная запись не может их удалить. Я попытался добавить «new_file_permissions» и «new_folder_permissions» в системные настройки, но никаких изменений. Файлы кеша всегда принадлежат Apache, и у меня нет доступа по ftp.

Кроме того, такие файлы, как .htaccess и вообще все, что я загружаю (css и т. д.), рассматриваются как нередактируемые для modx, если только я не изменю их вручную на 777 через ftp. Я не могу изменить владельца и группу.

Серверный техник не может понять. Этот вопрос уже поднимался на форумах modx, но на него так и не ответили.

  • apache
  • права доступа к файлам
  • modx
  • modx-revolution
  • права доступа к каталогам

Очевидно, это проблема сервера.

У меня была эта проблема (правда, с сервером IIS), и хосту нужно было изменить некоторые настройки.

Особенно, если MODX работает на разных хостах.

1

Это то, как это должно работать, у вашей учетной записи FTP нет разрешения на запись файлов, написанных apache, ваш ftp может быть членом группы, но не имеет разрешения на запись.

[необходимо удалить]. Я подозреваю, что это сделано в целях безопасности.

Ваши разрешения new_file_permissions, new_folder_permissions используются файловым менеджером modx.

Итак, вы можете сделать несколько вещей:

Запустить modx под fastcgi, таким образом, пользователь, пишущий файлы, должен быть тем же пользователем, что и пользователь ftp.

ИЛИ

напишите небольшой скрипт [вы даже можете вставить его во фрагмент], который удалит файлы кэша для вас. [поскольку он будет работать как пользователь apache, это не должно быть проблемой.

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

MODX Версия 2.

0.0-rc-1 — SiteDash, возьмите под контроль свои сайты MODX

MODX 2.0.0-rc-1 был выпущен 12 лет назад 22 марта 2010 г.

Загрузки Список изменений

  • Подготовлено для версии rc1
  • Исправлено копирование сжатия CSS в build.xml
  • Исправлена ​​ошибка, из-за которой функции regClient*() снова работали с кэшируемыми скриптами
  • Переместите источник элемента и включите файлы кеша за пределы каталогов кеша контекста, поскольку их следует очищать только при обновлении элементов
  • Удалить eval() из modScript и снова включить удаленную отладку экземпляров modScript с помощью функции кэширования, включаемой в дополнение к исходному кешу
  • [#MODX-1759] Убедитесь, что журнал менеджера срабатывает при удалении верхнего меню
  • [#MODX-1772] Убедитесь, что массив идентификаторов передается в события подключаемого модуля OnBeforeEmptyTrash и OnEmptyTrash
  • Добавлен экран приветствия, отображаемый при первом входе в менеджер
  • [#MODX-1738] Исправлена ​​проблема со значением по умолчанию на радио-телевизорах
  • [#MODX-1741] Исправление несовместимой ширины для параметров радио, заставляя их перечисляться вертикально, а не горизонтально
  • [#MODX-1769] Поиск сетки Lexicon теперь ищет имя и значение
  • [#MODX-877] Обновлен сбивающий с толку текст на вкладке прав доступа к телевизору
  • .
  • [#MODX-1766] Исправлена ​​проблема с PHP_SAPI для правильной работы путем установки значения по умолчанию при настройке для предоставления значения http_host по умолчанию для правильного заполнения site_url
  • Исправлена ​​ошибка в программе установки, из-за которой в предыдущих конфигурациях не учитывался путь к процессорам.
  • [#MODX-1759] Исправлены ошибки, из-за которых в журнале менеджера не сохранялись правильные значения PK или отображались отсутствующие ключи в сетке
  • [#MODX-1766] Исправлен файл config.inc.tpl для работы с не-httpd SAPI
  • .
  • Добавлен заголовок/информация для страницы Отчеты->Информация о системе->База данных. Это также исправило проблему со стилем CSS.
  • Исправлены стили CSS для недавних документов. Отступ 5px был удален.
  • Исправлены ошибки с классом modMail и атрибутами по умолчанию, из-за которых атрибуты не сохранялись после reset()
  • Удаление устаревшего кода обработчика RTE
  • [#MODX-1762] Увеличен размер окна загрузки файлов для переводов
  • Не отображать ненужные вкладки на панели Resource TV, если нет TV, назначенных шаблону для этого ресурса
  • Сортировка переменных шаблона на странице редактирования шаблона по имени
  • Убедитесь, что свойства элемента, содержащие HTML, отображают разметку вместо отображения HTML в режиме редактирования в mgr ui
  • [#MODX-1669] Переработан загрузчик файлов в дереве каталогов, чтобы он был более совместим с разными браузерами
  • Очищен и улучшен вход в систему CSS
  • Стандартизация и добавление констант класса в классы modRest*
  • Обновлены данные об авторских правах в словарных записях
  • Исправления в build. xml, команде сжатия css
  • Обновлены даты авторских прав
  • [#MODX-1750] Множество процедурных и справочных исправлений в пользовательском интерфейсе сетки Lexicon
  • Убрано представление записей modAction в mgr
  • Добавлено исправление для дерева refreshParentNode; расширенный modUserGroup::getUsersIn()
  • В сетку свойств элемента добавлена ​​маска сохранения, которая срабатывает при сохранении набора свойств
  • Удалена устаревшая ссылка на файл в шаблоне входа
  • Добавлены системные настройки для переключения каналов новостей/безопасности на панель приветствия
  • Добавлен системный параметр для включения автоматической проверки обновлений пакетов в управлении пакетами
  • [#MODX-1751] Исправлена ​​ошибочная ссылка в описании настройки дружественного псевдонима
  • [#MODX-1752] Исправлена ​​ошибка, из-за которой элементы верхнего меню без дочерних элементов не отображались, даже если у них было действие
  • Некоторые настройки CSS для страницы входа
  • Обновлен до xPDO 2. 0.0 r419 для исправления ошибки xPDOVehicle
  • Исправлена ​​ошибка с кнопкой Download Output в MODx.Console
  • Убедитесь, что электронная почта для активации при забытом входе имеет формат HTML
  • .
  • Добавлена ​​ссылка и форма «Забыли логин» для менеджера, отправляет активационное письмо на указанный адрес электронной почты, если пользователь забыл логин/пароль
  • Исправлен алгоритм сортировки SQL для версий пакетов, добавлены вспомогательные методы для сравнения версий пакетов
  • Добавлен $resource к свойствам, передаваемым в OnDocFormDelete в обработчике ресурсов/удаления
  • Обновлено до xPDO 2.0.0 r417 ([#XPDO-40] Исправлена ​​работа getCount при передаче критерия с установленным псевдонимом класса)
  • Усовершенствованный фильтр вывода стриптегов для получения параметра разрешенных тегов
  • Убедитесь, что $paths и $options переданы в OnCacheUpdate
  • Добавлены ссылки на сжатие/объединение для входа в систему и браузера tpls
  • Исправлены скрипты build. local.xml и build.xml
  • Добавлен системный параметр compress_css для сжатого CSS для выпусков, перенесенный из modx-theme.css в шаблоны css/dir. Не используйте сжатие_css без предварительного запуска задачи Ant _build/build.local.xml.
  • Очищены оставшиеся определения функций PHP4, неэкранированный код SQL, добавлены правильные методы доступа для частных переменных, другой старый код
  • Исправлена ​​ошибка с modLexiconLanguage::clearCache
  • [#MODX-1738] Исправлена ​​ошибка, из-за которой правила FC TV не работали должным образом в обновлении ресурсов 9.0020
  • Исправлена ​​ошибка, из-за которой свойства события плагина объединялись, если с событием было связано более одного плагина
  • Добавлена ​​маска загрузки на панели редактирования для предотвращения случайного редактирования до загрузки данных
  • Добавлена ​​проверка работоспособности для обработки события OnRichTextBrowserInit
  • Добавлено исправление для загрузки RTE на панели ресурсов, должно исправить большинство ошибок сохранения RTE
  • Добавлена ​​возможность складывания панели документов
  • Добавлен системный параметр concat_js, который объединит все распространенные файлы JS в один файл
  • Скорректирован lang. js.php для правильного использования заголовка ETag для кэширования lang js
  • Добавлено правило css для предотвращения отображения скрытых фреймов
  • Исправлена ​​ошибка, из-за которой группы ресурсов нельзя было редактировать при создании ресурса
  • .
  • Добавлена ​​проверка работоспособности для пакетов с отсутствующим провайдером
  • Добавлен столбец «Доступные обновления» в сетку пакетов, автоматически проверяет наличие обновлений у поставщика
  • [#MODX-1732] В языковую сетку добавлена ​​возможность дублирования языка
  • [#MODX-1741] Исправлена ​​возможная ошибка с метками радио/телевидения
  • [#MODX-1593] Исправлена ​​ошибка, из-за которой пользователь не мог быть добавлен без роли в дереве групп пользователей
  • [#MODX-1735] Правильно кодировать URL-теги ссылок, сохраняя при этом знаки = и & в строке запроса
  • [#MODX-1736] Исправлена ​​ошибка с назначением телевизоров группам ресурсов
  • [#MODX-1740] Добавлен обходной путь для кода SQL для правильного скрытия телевизоров с правилами FC
  • [#MODX-1738] Исправлена ​​ошибка с радиогруппами и установка правила FC по умолчанию для ТВ
  • Исправлены некоторые проблемы с заголовками, обработка типа содержимого _FILES
  • [#MODX-1733] Исправлена ​​ошибка, приводившая к удалению тегов из обработки коннектора
  • .
  • Гарантировано, что изменение имени файла статического ресурса вызывает грязный статус
  • Убедитесь, что при выборе значения по умолчанию активируется грязный статус для панели ресурсов
  • Исправлена ​​возможная ошибка растяжения по ширине на панели ТВ в представлении редактирования ресурсов
  • [#MODX-1543] Добавлено «Переименовать категорию» в узлы категорий в подузлах элементов в дереве элементов
  • [#MODX-933] Теперь можно перетаскивать элементы в категории в дереве элементов, чтобы назначить их категориям 9.0020
  • [#MODX-1729] Исправлено неправильное имя фильтра, чтобы оно больше соответствовало функции
  • [#MODX-1727] Добавлен отсутствующий флажок «Очистить кеш» на панели производных ресурсов
  • [#MODX-1724] Исправлена ​​ошибка, из-за которой выходные рендеры на панели ТВ не приводили к срабатыванию грязного статуса панели
  • [#MODX-1730] Исправлена ​​ошибка с $scriptProperties и процессором входа в систему
  • .
  • Некоторые исправления для потока MODExt и ссылки на ID
  • Изменены все ссылки GPC в процессорах на $scriptProperties, который загружается в точках входа в процессоры с переменными GPC, передавая обработку ввода на коннектор
  • [#MODX-1711] Исправлена ​​ошибка с выходным фильтром полосы
  • Добавлен выходной фильтр с многоточием
  • Исправлены различные вызовы событий в реализации JS для правильной модульности компонентов modext
  • Добавлены события в сетку групп пользователей для обеспечения грязной стрельбы
  • Добавлен MODx.FormPanel::markDirty
  • Добавлены настройки CSS для поддержки Opera 10.5
  • Исправлена ​​ошибка с сеткой пользователей, если вкладка прав доступа удалена
  • Исправлены устаревшие определения методов в классах modConnector
  • Исправлен текст в настройках языка для более точного отображения функции
  • Добавлен фильтр области в сетку настроек
  • [#MODX-1721] Отключено ненужное разбиение по страницам в таблице системных событий
  • [#MODX-1726] Добавлена ​​проверка работоспособности, чтобы убедиться, что тип входа телевизора установлен правильно
  • Исправлена ​​ошибка с кнопками действий и методом продолжения пребывания
  • Добавлен пользовательский интерфейс для управления полем веб-сайта в modUserProfile
  • Добавлено поле веб-сайта в modUserProfile
  • Удалено ненужное и проблемное выпадающее меню редактора на экране редактирования чанка
  • Ускорено перетаскивание переупорядочивания в дереве, теперь только кадрирование перемещенных узлов вместо обновления
  • Добавлен метод modRequest::getParameters() для получения различных переменных GPC или массивов переменных; автоматически удаляет параметры MODx GET по мере необходимости
  • modRequest::__construct() теперь создает ссылки на все переменные GPC в modRequest::$parameters
  • ModX::makeUrl()/modContext::makeUrl() изменен для приема параметров строки запроса в виде массива или строки
  • Добавлен статический метод modX::toQueryString() для преобразования ассоциативного массива в допустимую строку запроса
  • [#MODX-1709] Исправлена ​​проблема с кодировкой параметра кнопки действия
  • .
  • [#MODX-1554] Предотвращена загрузка файлов в сами файлы в дереве каталогов
  • [#MODX-1700] Исправлена ​​проблема с настройкой ссылок на текст в словаре
  • .
  • Убедитесь, что теги в содержимом статического ресурса проанализированы, прежде чем пытаться загрузить исходный путь
  • Исправлено обновление статических/веб-ссылок js
  • Удалена ненужная и избыточная проверка префикса таблицы позже в настройке
  • Исправлены свойства css/js на вкладке TV, позволяющие RTE автоматически определять высоту своих полей TD
  • Исправлена ​​отсутствующая ссылка на разрешения для контроллеров ресурсов
  • Добавлен OnHandleRequest в modManagerRequest::handleRequest
  • Правильно скрывает элементы пользовательского интерфейса для кнопок/страниц ресурса, если у пользователя нет разрешений
  • Рефакторинг modResource::cleanAlias() для включения различных параметров, включая встроенные и пользовательские возможности транслитерации
  • [#MODX-717] Иностранные символы (данные UTF8) без необходимости удалены из псевдонима
  • Скрыть элементы верхнего меню, если нет подменю и если верхнее меню не кликабельно
  • [#MODX-1690] Исправлен текст диалогового окна подтверждения при удалении элемента, чтобы включить имя и тип элемента
  • [#MODX-1707] Добавлены системные настройки mail_charset и mail_encoding для управления набором символов и кодировкой в ​​электронных письмах
  • [#MODX-1706] Убедитесь, что в текстовых полях и полях qtip в деревьях ресурсов/элементов удалены все теги
  • [#MODX-1699] Исправлена ​​ошибка в Quick Edit TV, из-за которой заголовок стирался и заменялся именем
  • [#MODX-1704] Исправлена ​​ошибочная инструкция if в кнопке очистки, которая скрывалась на панели журнала ошибок
  • [#MODX-1675] Добавлено исправление для путей Windows на панели «Редактировать файл»
  • [#MODX-1681] Добавлены проверки на наличие проблем с импортом лексики в браузерах на основе Webkit
  • Очистки для ширины входа ТВ
  • Удаление ядра RTE; слишком много работы, может вернуться в более позднюю версию
  • [#MODX-1697] Добавлена ​​возможность редактирования изображений и ссылок в RTE
  • .
  • Добавлен более надежный API MODx.rte.Selection
  • Добавлены отсутствующие изменения в modActions, необходимые для загрузки записей словаря для RTE
  • [#MODX-1662] Исправлено несоответствие в метке поля виджета меню
  • [#MODX-1687] Исправлены ошибки в браузере пакетов шаблонов из-за изменений в modx.view.js
  • Панель ресурсов сделана панелью с возможностью загрузки файлов для плагинов
  • [#MODX-1357] Добавлен системный параметр richtext_default 9.0020
  • [#MODX-1685] Добавлен MODxEditor, базовый RTE на основе Ext, который будет RTE по умолчанию для Revolution
  • .
  • [#MODX-1674] MODx.Browser стабилизирован для работы с ядром RTE
  • .
  • — Добавлены отсутствующие классы реестра.db.modDbRegister* для настройки
  • .
  • [#MODX-1642] Выход из системы не разблокирует ресурсы: добавлен modUser::removeLocks() и изменен modUser::endSession() для вызова этого метода
  • Добавлено событие OnInitCulture в базовые транспортные данные.
  • [#MODX-1672] Рефакторинг процессоров сортировки/соединения в настройках для повышения стабильности
  • Обновлен xPDO до r414 для улучшения xPDOManager
  • modInstall::writeConfig() использует new_file_permissions, если указано, или настройки umask() по умолчанию
  • Удалены лишние вызовы xPDO/modX::setDebug() и xPDO/modX::setLogLevel() в modInstall
  • modInstall::getConnection() теперь использует utf8_general_ci для кодировки/сопоставления по умолчанию
  • [#MODX-1691] Настройка окон быстрого создания/обновления для использования свойства привязки, а не ширины для настройки изменения размера
  • Добавлена ​​настройка «cultureKey», позволяющая упростить языковой перевод в contexts/fe/components
  • Исправлены стили для окна MODx.Browser
  • Добавлен параметр ‘relativeUrl’ в данные файла MODx.Browser
  • [#MODX-1674] Исправления и стабилизация в MODx.Browser, особенно при использовании RTE
  • Изменение редактора по умолчанию с TinyMCE на пустое значение
  • Исправлена ​​ошибка в настройке, из-за которой параметр на месте принудительно устанавливался на 1
  • Очищено большинство процессоров, исправлены неправильные ссылки на разрешения, стандартизирован код
  • Исправлена ​​панель приветствия, чтобы отображались только панели с разрешением на просмотр
  • Исправлена ​​страница просмотра журнала ошибок для ограничения просмотра и очистки по разрешению
  • Добавлена ​​описательная информация в сетку ролей
  • Множество исправлений разрешений, других исправлений и проверок работоспособности процессоров/контроллеров Element
  • Добавлены разрешения на набор свойств
  • Очистка контроллеров ресурсов, процессоров, оптимизация проверок разрешений безопасности
  • Исправлены различные ошибки со страницей поиска
  • Исправлена ​​ошибка с добавлением политик, препятствовавших частичному совпадению регулярных выражений в имени
  • Исправлены ошибки при добавлении новых политик или разрешений, которые отображали ранее добавленные разрешения/политики в форме
  • Правильно защищенная и реорганизованная сетка недавно отредактированных ресурсов
  • [#MODX-1670] Скорректированы разрешения, чтобы разрешить пользователю с ограниченным доступом редактировать профиль
  • [#MODX-1667] Удалено ненужное правило CSS непрозрачности в меню
  • Исправлена ​​ошибка, из-за которой страница не перезагружалась при входе в систему в определенных ситуациях
  • Увеличьте длину div rightlogin для поддержки более длинных переводов
  • [#MODX-1653] Исправлены проблемы со связанными объектами, удаление агрегатов и другие ошибки упаковки. Представлен xPDOTransport::UNINSTALL_OBJECT, значение которого по умолчанию равно true. Когда он выключен, он предотвратит удаление объекта.
  • Обновлен xPDO до r413
  • [#MODX-761] Исправлена ​​проблема с языком в настройках, теперь он устанавливается правильно и загружает правильный словарь для экрана входа в систему
  • Убедитесь, что окно консоли отображается поверх других окон
  • [#MODX-1663] Добавлен файл MODx.msg.status, который показывает исчезающее сообщение о состоянии при успешном сохранении. Это также решает проблему обратной связи с пользователями.
  • Удалено ненужное поле из сетки недавно отредактированных ресурсов на экране приветствия
  • [#MODX-1660], [#MODX-1037] Экран входа в систему изменен на HTML/CSS, базовая обработка форм позволяет браузерам сохранять пароль в своих системах управления паролями
  • Обновленный пользовательский интерфейс в новых параметрах настройки, очищенный текст, упрощенные представленные параметры
  • [#MODX-18] Разрешить редактирование MODX_CONFIG_KEY в окне приветствия установки
  • [#MODX-18] Запрашивать у пользователя MODX_CORE_PATH, если он не найден в начале установки
  • [#MODX-760], [#MODX-1080], [#MODX-1528] Добавлен параметр настройки для установки разрешений new_file_permissions и new_folder_permissions в окне приветствия
  • [#MODX-760], [#MODX-1528] Удалены системные настройки new_file_permissions и new_folder_permissions из программы установки
  • [#MODX-760], [#MODX-1528] Обновлен xPDO 2. 0 до версии 407: новые права доступа к файлам и папкам определяются с помощью umask()
  • [#MODX-878] Кнопки Stay теперь зависят от действия, выполняемого через состояние Ext, а не через PHP
  • .
  • Повторить логический порядок modPackageBuilder::buildLexicon, чтобы убедиться, что языки упакованы перед темами
  • [#MODX-1647] Добавлена ​​спецификация ширины, чтобы принудительно установить ширину экрана, чтобы предотвратить прокрутку телевизоров RTE
  • Убрано правило настройки формы tvTitle путем переноса кода с JS на PHP
  • Исправлена ​​проблема с z-индексом для Windows из-за исправления IE
  • .
  • [#MODX-732] Добавлен принудительный z-индекс в верхнее меню для IE, исправлен раздел правого входа на верхней панели для IE 9.0020
  • [#MODX-1641] Оптимизирован и очищен код, связанный с видимостью ТВ настройки формы и значениями по умолчанию
  • [#MODX-1658] Исправлена ​​ошибка, из-за которой размещение пункта меню в подменю помещало его на верхний уровень
  • [#MODX-1624] Включено изменение текстового поля в пунктах меню
  • [#MODX-1656], [#MODX-1654] Исправлен пробел CSS в сводке установки в программе установки
  • [#MODX-1655] Исправлены жестко заданные строки лексикона в настройке
  • .
  • [#MODX-1621] Удалите ненужные элементы контекстного меню из элементов в дереве ресурсов группы ресурсов 9.0020
  • [#MODX-1627] Исправлено неправильное меню в ресурсах дерева группы ресурсов при новом перетаскивании
  • [#MODX-1599] Добавлен системный параметр manager_date_format для настройки форматов даты для менеджера
  • [#MODX-1651] Увеличение ширины кнопок панели навигации настройки для размещения переводов
  • [#MODX-1649] Исправлена ​​ошибка, из-за которой функция быстрого создания не учитывала параметр default_template
  • .
  • [#MODX-1650] Исправлена ​​ошибка с указанием языка в настройках для правильной установки файлов cookie для компьютеров Windows и правильной установки исходного языка
  • [#MODX-1626] Исправлена ​​ошибка, из-за которой в верхних меню не было действий
  • [#MODX-1494] Исправлена ​​ошибка, из-за которой у некоторых настроек не было описаний, и убраны устаревшие настройки
  • [#MODX-1645] Исправлен неправильный ключ словаря для settings_site_start_err
  • [#MODX-1646] Исправлена ​​ошибка, из-за которой кнопки загрузки оставались серыми, если отображалось сообщение об ошибке
  • .
  • [#MODX-1644] Почтовые настройки SMTP добавлены в системные настройки по умолчанию, чтобы разрешить глобальное использование SMTP для всех функций modMail
  • [#MODX-1606] Исправлена ​​ошибка в классе modRestCurlClient из-за закодированного амперсанда
  • .
  • [#MODX-197] Рефакторинг JS кнопок действий, добавлены события actionNew, actionContinue и actionClose в объекты MODx.FormPanel, гарантируется сохранение parent/context_key за счет добавления других ресурсов
  • Добавлена ​​пара проверок работоспособности в modRestCurlClient
  • Добавлен JS для отключения кнопки установки при нажатии в настройках для предотвращения двойного щелчка
  • controllers/resources/create: рефакторинг наследования шаблонов, который должен выполняться перед вызовом любого контроллера-делегата.
  • процессоров/ресурсов/создать: вызов события OnBeforeDocFormSave перемещен до тех пор, пока переменные POST не будут применены к объекту $resource.
  • процессоров/ресурсов/создать: рефакторинг общего кода, который будет выполняться перед вызовом любого процессора-делегата.
  • процессоров/ресурсов/создать: рефакторинг для учета разрешений add_children и new_document_in_root.
  • В тему ресурса добавлены различные словари access_denied.
  • Добавлено разрешение new_document_in_root для управления доступом к созданию ресурсов на корневом уровне.
  • Обновлено до версии xPDO 2.0 406.
  • [#MODX-1606] Добавлены проверки работоспособности и стандартизация идентификаторов для узлов DOM для браузера пакетов
  • .
  • Исправлена ​​возможная ошибка с та-переключателем div на панели ресурсов
  • [#MODX-1628] Исправлено правило FC tvDefault путем установки php-side
  • [#MODX-1636] Добавлена ​​возможность назначать роль пользователю при добавлении его в группу пользователей из дерева групп пользователей
  • [#MODX-1634] Исправлена ​​ошибка с обработчиком ресурсов/ресурсных групп/гетлистов, из-за которой группы ресурсов не отображались в новых панелях ресурсов
  • [#MODX-1639] Исправлена ​​ошибка, из-за которой JS панели ресурсов не проверял наличие возможно скрытой сетки разрешений доступа
  • Исправлена ​​ошибка, из-за которой modUser::removeSessionContext() вызывал modUser::endSession(), если не осталось контекстов
  • Исправлена ​​ошибка, из-за которой modUser::endSession() уничтожал все данные SESSION и файл cookie сеанса.
  • Исправлена ​​ошибка в Плагин -> вкладка Системные события, вызванная неверным вызовом функции в процессоре getlist
  • Исправлены проблемы с различными устаревшими функциями для повышения совместимости с Evo и предотвращения проблем с производительностью:
  • * modX::getDocuments() и modX::getDocument()
  • * modX::getAllChildren()
  • * modX::getActiveChildren()
  • * modX::getDocumentChildren()
  • * modX::getDocumentChildrenTVars()
  • * modX::getParent()
  • * modX::getPageInfo()
  • * modX::getUserInfo()
  • Исправлено объявление modX::__construct(), чтобы правильно указать его как общедоступный метод; добавлены комментарии phpdoc.
  • Исправлено объявление modX::sanitize() для правильного указания его как статического метода.
  • Обновлен до версии xPDO 2.0 405
  • [#MODX-1614] Исправлена ​​ошибка, из-за которой кешированные страницы переходили на неавторизованную_страницу вместо ошибочной_страницы, когда у пользователя нет разрешения на загрузку
  • [#MODX-411] Установите системные настройки: emailsender на адрес электронной почты администратора во время установки
  • [#MODX-1556] Показать класс и идентификатор для удаленных ресурсов или элементов в журнале действий диспетчера
  • [#MODX-1552] Создать новый элемент Здесь показаны корневые элементы, но не элементы категорий
  • [#MODX-1625] Исправлены ошибки с деревом меню, препятствующие созданию дочерних узлов новых элементов, обновленного меню и значков действий
  • Добавлена ​​превентивная функция, обеспечивающая однократную загрузку пакетов в браузере пакетов
  • [#MODX-1623] Исправлена ​​ошибка установки пакета: попытка сохранить файлы завершалась с ошибкой
  • .
  • Обновлен до версии xPDO 2.0 404
  • Обновления установки больше не сохраняют существующие данные/файлы при установке
  • Исправлена ​​проблема с попыткой установки записать файлы коннектора, несмотря на то, что файлы уже на месте
  • Обновлен до версии xPDO 2.0 403
  • Исправлена ​​ошибка, из-за которой свойства плагина не вводились в вызов события плагина
  • .
  • [#MODX-1617] Исправлена ​​ошибка с правилом настройки формы tvDefaultValue
  • .
  • [#MODX-1619] Добавлена ​​проверка работоспособности для проверки ограничения modActionDom
  • [#MODX-1620] Исправлены отсутствующие или неправильные словарные записи в пользовательском интерфейсе
  • .
  • [#MODX-1612] Исправлена ​​ошибка, из-за которой кнопка «Создать меню» не работала
  • [#MODX-1616] Переименовано «поле» в «имя» в правилах настройки форм Windows
  • Удалены все несущественные JS из пунктов верхнего меню
  • Добавлена ​​дополнительная проверка и протоколирование ошибок для параметра processing_path в modX::executeProcessor().
  • Добавлено отсутствующее разрешение view_sysinfo в политику администратора по умолчанию
  • [#MODX-1595] Исправлена ​​ошибка скрытия элементов верхнего меню с разрешениями
  • [#MODX-1596] Исправлена ​​ошибка, связанная с созданием нового пункта верхнего меню
  • Исправлены проблемы, связанные с панелями групп пользователей и редактированием анонимных групп пользователей
  • Исправлена ​​ошибка в средстве просмотра шаблонов для браузера пакетов, которая неправильно разбивалась на страницы
  • Добавлен modRestServer для обработки общих запросов REST
  • Включить удаленную сортировку и сортировку по идентификатору в сетке пользователей
  • Исправлено и расширено поле поиска в сетке пользователей
  • Исправлена ​​ошибка с дублированием контекста, при котором дублировался только первый уровень
  • Обновлен до версии xPDO 2.0 396
  • Исправлена ​​ошибка, из-за которой информация о версии пакета не вычислялась при загрузке/сканировании
  • Добавлена ​​проверка на заблокированный статус ресурсов, теперь показывает заблокированный статус в дереве, а также кто редактирует
  • [#MODX-1592] Исправлена ​​ошибка с созданием группы пользователей путем перемещения ее в окно
  • [#MODX-1590] Исправлены отсутствующие процессоры для сеток ACL
  • [#MODX-1526] Добавлены разрешения resource_tree, element_tree, file_tree, ограничивающие отрисовку/просмотр левых деревьев. Должен применяться к политикам доступа.
  • [#MODX-625] Скорректирован текст предупреждающего сообщения 9 в config.inc.php с возможностью записи.0020
  • [#MODX-1586] Исправлена ​​ошибка рендеринга панели инструментов в пользовательских настройках из-за скрытого div, теперь используется hideMode: offsets
  • Добавлен поиск ящика пользователя в сетке пользователей группы пользователей
  • Сетка пользователей группы пользователей изменена на нелокальную сетку, теперь поддерживает нумерацию страниц и правильную проверку
  • Расширенный пользовательский интерфейс для редактирования списков ACL контекста группы пользователей/группы ресурсов
  • [#MODX-1525] В modMenu добавлено поле разрешений для определения разрешений политики, необходимых для просмотра элементов верхнего меню
  • Исправлена ​​ошибка в сетке «Пакеты» для правильного отображения имени провайдера
  • .
  • Добавлен класс modRestResponse, улучшена обработка ошибок для управления пакетами на основе REST
  • Добавлена ​​проверка для провайдеров, теперь проверьте, могут ли они подключиться перед добавлением или обновлением
  • В Управление пакетами добавлена ​​страница просмотра пакетов, позволяющая просматривать дополнительную информацию о пакете, просматривать ранее установленные версии и удалять старые версии пакетов
  • Исправлена ​​опечатка в сценарии настройки для изменений PM
  • Добавлены поля version_major, version_minor, version_patch, release и release_index в таблицы modTransportPackage для облегчения сортировки и организации
  • Исправлена ​​ошибка в схеме транспорта
  • [#MODX-1571] Исправлен xtype в настройке Automatic_alias
  • [#MODX-1572] Исправлена ​​устаревшая ошибка в службе PHPMailer
  • .
  • [#MODX-1512] Исправлена ​​ошибка с MODx.tree.Tree::refreshNode, которая вызывала странную ошибку дублирования узла
  • .
  • Обновлен xPDO до версии 392, чтобы получить новые функции вложенных условий
  • [#MODX-1515] Фиксированный выбор даты CSS
  • [#MODX-923] Добавлен путь к файлу для сообщения config.inc.php configcheck на странице приветствия
  • [#MODX-1579] Добавлен код для предотвращения использования недопустимых символов в имени пользователя/пароле администратора в настройках
  • [#MODX-1575] Исправлена ​​ошибка с процессором getList группы ресурсов
  • .
  • Обновлен до версии xPDO 2.0 389
  • Добавлена ​​проверка поля modContext.key; должен быть действительным идентификатором PHP без символов подчеркивания
  • ModError::checkValidation() изменен для вызова modError::addField() для каждого сообщения проверки
  • [#MODX-1562] Очищена сетка расписания сайта для правильной загрузки baseParams во время обновления и настройки нумерации страниц
  • Очищен код процессора, вызов плагина, проверка прав доступа в процессорах
  • [#MODX-1562] Исправлена ​​ошибка в данных расписания сайта
  • Исправлены вызовы OnDocUnpublished и OnDocPublished в процессорах для передачи ссылки modResource
  • [#MODX-1564] Исправлена ​​ошибка, из-за которой значения комбо переопределялись, если они были установлены до загрузки хранилища комбо
  • Переместить события плагина предварительной визуализации элементов и ресурсов после регистрации js, чтобы обеспечить правильный порядок выполнения событий
  • [#MODX-986] В дерево ресурсов добавлено «Дублировать контекст», а также «Удалить контекст»
  • Исправлена ​​ошибка с поставщиком по умолчанию в пользовательском интерфейсе управления пакетами
  • [#MODX-1540] Исправлено отображение последнего входа в систему на странице приветствия
  • .
  • [#MODX-1567] Включена сортировка в Отчетах -> Информация о системе -> Недавно отредактированные документы
  • [#MODX-1522] Редактирование пользователей ограничено только разрешением save_user
  • Добавлена ​​кнопка «перезагрузка» в журнал ошибок
  • Исправлены активные ресурсы в отчетах — информация о системе
  • Исправлен запрос версии базы данных в отчетах — информация о системе
  • [#MODX-1560] Добавлена ​​кнопка для усечения журнала менеджера
  • Добавлен новый вид просмотра шаблонов в управлении пакетами; просмотр на основе эскизов.
  • [#MODX-1534] Страница редактирования файла изменена, чтобы соответствовать другим структурам страниц
  • [#MODX-1542] Добавлено отсутствующее разрешение на восстановление в базовую политику ресурсов
  • [#MODX-1539] Добавлено разрешение view_user для устранения ошибки выпадающего списка пользователей, которая требовала «edit_user»; вид более применим там
  • [#MODX-1553] Показать текущие разрешения в окне chmod
  • [#MODX-1539] Исправлено несколько ошибок со страницей журнала менеджера
  • .
Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *