/Что нового в diafan.CMS 5

Авторы

Дмитрий Афанасьев Марина Дорохина Юлия Афанасьева Дмитрий Селезнев Игорь Ряховский
Игорь РяховскийИгорь Ряховский
01 апреля 2012 г.
Теги: diafan.CMS

Разработка 5 версии diafan.CMS стала для нашей компании тяжелым испытанием, так как в достаточно сжатые сроки реализовать огромное количество пожеланий наших пользователей было непросто. Но в план мы уложились и, как должны были, 1 апреля выпустили пятую версию, о чем мы спешим поделиться с вами. Как бы это пафосно не звучало, но мы считаем, что знакомство с нашей CMS будет полезным всем, кто так или иначе касается создания сайтов. Конечно, для разных сайтов есть свое решение, где-то достаточно вордпресса, но мы уверены, что ниша, которую мы пытаемся занять, есть и мы там очень хорошо смотримся. Список изменений в diafan.CMS просто огромен, чтобы описывать его полностью, поэтому в блоге я опишу только некоторые ключевые моменты. Изменения произошли как в интерфейсе, так и в коде CMS. Разработаны новые модули, добавлена система кэширования memcached, поддержка расширения MySQLi и многое другое.

Административная панель преобразилась полностью, кроме нового дизайна с поддержкой смены тем, добавлена сортировка элементов перетаскиванием, перетаскивание на страницы, перетаскивание из ветки в ветку, асинхронная подгрузка раскрываемых пунктов, уведомления о новых событиях в интерактивных модулях, быстрое редактированию полей, быстрое создание элементов и новые групповые операции.

Отдельного внимания заслуживает модуль «Магазин». Пожалуй это самый объемный модуль во всей CMS над ним мы трудились не один месяц.Добавлен новый тип товара "файл". Т.е. можно загрузить в качестве товара какой-нибудь файл, например, книгу, музыку или архив с программой. Добавлена мультивалютность, скидки с купонами, несколько модулей оплаты.Теперь «Магазин» в diafan.CMS умеет сравнивать товары по характеристикам, составлять листы желаний. При всем при этом характеристики товаров были переработаны, их можно указывать при сортировке, прикреплять к нескольким разделам, можно делать накопительные скидки раздавать пользователям купоны и многое другое.

Модуль поиска претерпел глобальные изменений, из простого SQL запроса с использованием оператора LIKE он перерос в крупный модуль поддерживающий индексацию, механизмы ранжирования и другие фишки, свойственные внешним системам поиска.

Теперь гибкая система распределения прав доступа, позволяющая тонко настроить доступ пользователей к каждому модулю. Более того, объединение пользователей позволило существенно упростить распределение доступа к контенту на самом сайте, теперь у каждой странице и у каждого модуля есть собственные разграничения доступа. А так же у пользователя появилась личная страница, и появилась возможность отправлять личные сообщения между пользователями.

У нас появился новый модуль «Баннеры», который, по сути, является полноценной баннерокрутилкой, позволяет размещать в любом месте страницы с помощью шаблонного тега:  изображение, флеш или блок HTML.  При этом можно указать период показа, ограничить количество показов, ограничить количество показов посетителей в сутки и получать статистику о количестве переходов и просмотров.

В ходе переработки пользовательских JavaSciprt-ов были обновлены все используемые библиотеки. Diafan.CMS теперь активно использует JqueryUI. На нем реализованы табы, сортировка, а так же продвинутый датапикер, взамен старого timecalendar.
Для того что бы не нагружать ваш сервер зазря некоторые популярные JavaScript скрипты, которые используются в CMS, были заменены на ссылки на Яндекс CDN (от англ. Content Delivery Network). Основным преимуществом является увеличение скорости загрузки контента. Также технология CDN способна предотвратить задержки при передаче данных, возможные прерывания связи и потери на перегруженных каналах и стыках между ними.  Как всегда вам предоставляется свобода выбора, ведь эти скрипты никто не запрещать закачать на FTP как раньше.
Даже визуальный редактор TinyEditor не остался без внимания. К стандартному плагину TinyEditor advlink добавился выбор ссылок с карты текущего сайта. Теперь в работе над текстом кроме визуального редактора поможет «типограф», который отформатирует текст по правилам экранной типографики (спасибо самизнаетекому).
В «страницах сайта» добавлена возможность добавление пользовательского JS кода на страницу, это может быть полезно если вы например хотите разместить на странице Яндекс карту, комментарии в контакте и другой контент, который требует внедрение в страницу JS  кода.
В ходе рефакторинга были переработаны абстрактные классы модулей, конструктора и класс представления, а так же появился новый абстрактный класс Ajax, который включает в себя весь необходимый функционал для работы модулей diafan.CMS с Ajax запросами (проверка форм, проверка капчи, отправка данных в JSON формате).
Так же стоит отметить переработку вывода шаблонов, теперь в административной панели можно назначить свой шаблон при редактировании элемента. Все шаблоны вывода хранятся в папке /modules/модуль/views/ и представляют из себя файлы с расширением  модуль.view.название функции из модели.php
Специально для наших партнеров и просто кодеров, программистами diafan.CMS был переработан вывод ошибок, теперь на том месте, где возникла ошибка, появится надпись ERROR #номер ошибки, перейдя на который, можно посмотреть в каком файле в какой строке и что еще более важно, увидеть стек вызовов до места ошибки.Специально для наших партнеров и просто кодеров, программистами diafan.CMS был переработан вывод ошибок, теперь на том месте, где возникла ошибка, появится надпись ERROR #номер ошибки, перейдя на который, можно посмотреть в каком файле в какой строке и что еще более важно, увидеть стек вызовов до места ошибки.

Комментарии

ГостьЮмагулов Азат (dewmas)
05 апреля 2012 г.
Шрифт чего такой мелкий? :)
ГостьЮмагулов Азат (dewmas)
05 апреля 2012 г.
По поводу «ERROR #номер ошибки». Ссылка ведет на 404
ГостьMr_facepalm (Влад)
05 апреля 2012 г.
Исправьте:
"эти скрипты никто не запрещать закачать на FTP"
ГостьОлег (PerpetuumMobile)
29 мая 2012 г.
Молодцы, Диафан всегда меня радует

Чтобы оставить комментарий необходимо авторизоваться на сайте.