evolution-cms-extras / doclister
evocms package for work with documents
Installs: 155
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 39
Language:JavaScript
Type:evolutioncms-snippet
Requires (Dev)
- agelxnash/modx-evo-database: 1.4.*
- phpunit/phpunit: 4.2.*
README
DocLister for MODX Evolution
Класс для вывода информации из таблиц по предопределенным правилам. Если нет правил, то данные отображаются без дополнительной обработки и связи. Т.е. все поля и значения совпадают с базой данных.
Правила для обработки информации описаны в контроллерах. Главный контроллер - 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 - Пагинация по прошедшим и предстоящим событиями с учетом текущей даты
Полезные ссылки
- Документация: http://docs.evo.im/extras/doclister.html
- Статьи про DocLister: http://modx.im/tag/doclister/
Компоненты на базе DocLister
- SimpleGallery
- SimpleTube
- SimpleFiles
- SimplePolls
- LikeDislike
- FormLister
- FastImageTV
- DLRequest
- evoSearch
- eFilter
- Selector
Авторы
Как прислать 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-название-вашей-ветки