Skip to content

AgelxNash/DocLister

Repository files navigation

DocLister for MODX Evolution

Evolution CMS Build Status Issues Scrutinizer Code Quality Documentation License

Класс для вывода информации из таблиц по предопределенным правилам. Если нет правил, то данные отображаются без дополнительной обработки и связи. Т.е. все поля и значения совпадают с базой данных.

Правила для обработки информации описаны в контроллерах. Главный контроллер - site_content, который определяет связь основных документов site_content с данными в TV-параметрах

На базе класса DocLister сформировано 12 сниппетов:

  • DocLister - основной сниппет для вывода информации по принципу сниппетов Ditto и CatalogView
  • DLcrumbs - для формирования хлебных крошек по принципу сниппета Breadcrumbs
  • DLglossary - для фильтрации документов по первому символу в определенном поле
  • DLvaluelist - для замены сниппета DropDownDocs
  • DLTemplate - для замены $modx->parseChunk()
  • DLFirstChar - выборка документов и группировках в блоках по первой букве
  • DLPrevNext - цикличная навигация вперед/назад между соседними документами
  • DLMenu - Построение меню неограниченой вложенности
  • DLSitemap - Построение xml-карты сайта
  • DLReflect - Построение списка дат
  • DLReflectFilter - Фильтрация документов по датам
  • DLBeforeAfter - Пагинация по прошедшим и предстоящим событиями с учетом текущей даты

Полезные ссылки


Компоненты на базе DocLister


Авторы


Борисов Евгений
Agel Nash

http://agel-nash.ru

ICQ: 8608196
Email: modx@agel-nash.ru

Реквизиты для доната






Максим
Pathologic

@Pathologic

Email: m@xim.name

Реквизиты для доната



ЯД: 410011458897796

Как прислать PullRequest


1. Сделайте "форк" репозитория AgelxNash/DocLister, а затем клонируйте его в свою локальную среду разработки

git clone git@github.com:имя-вашего-пользователя/DocLister.git

2. Добавьте основой репозиторий DocLister как удаленный (remote) с названием "upstream"

Перейдите в директорию куда вы сделали клон на первом шаге и выполните следующую команду:

git remote add upstream git://github.com/AgelxNash/DocLister.git

3. Получите последние изменения кода из основного репозитория DocLister

git fetch upstream

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

4. Создайте новую ветку основанную на текущей master ветке DocLister

git checkout upstream/master
git checkout -b 999-название-вашей-ветки

5. Пишем код

Убеждаемся, что он работает :)

6. Cделайте коммит изменений

Добавляем файлы c изменениями:

# один файл
git add путь/до/вашего/файла.php
# все измененные файлы
git add .

Если добавить в описание коммита номер тикета #XXX, тогда GitHub автоматически свяжет его с тикетом над которым вы работаете:

git commit -m "Описание коммита для тикета #42"

7. Получите последние изменения кода из upstream (добавили на втором шаге)

git pull upstream master

Опять же таким образом убеждаемся, что ваша ветка содержит последние изменения. Если возникли конфликты, исправляем и снова комитим.

8. Имея код без конфликтов отравьте изменения на github

git push -u origin 999-название-вашей-ветки

9. Пришлите pull request в основной репозиторий DocLister

Перейдите в свой репозиторий на GitHub'e и нажмите "Pull Request", выберите свою ветку справа и добавьте описание вашего "Pull Request'a", чтобы GitHub автоматически связал его с тикетом добавьте в комментарий номер тикета '#999'.

10. Ожидайте рассмотрения вашего кода

Кто-то рассмотрит ваш код и может быть попросит внести изменения, если это произошло возвращайтесь к 5 шагу.

11. Удаление ветки

После того как ваш код приняли или отклонили вы можете удалить ветку из локального репозитория и GitHub'a

git checkout master
git branch -D 999-название-вашей-ветки
git push origin --delete 999-название-вашей-ветки

Все шаги кратко

git clone git@github.com:ваше-имя-пользователя/DocLister.git
git remote add upstream git://github.com/AgelxNash/DocLister.git
git fetch upstream
git checkout upstream/master
git checkout -b 999-название-вашей-ветки
/* пишем код */
git add путь/до/вашего/файла.php
git commit -m "Описание коммита для тикета #42"
git pull upstream master
git push -u origin 999-название-вашей-ветки