Diem 5.0.0_DEV

This version is under heavy development

Version notes

November 18, 2009

This is the first open source release of Diem!

A bit of history
Diem has been used for 2 years in a french agency to build dozens of websites.
In August 2009, the lead developer started to work on the fifth version, based on the symfony 1.3/1.4 branch. This new version is designed to have an opensource life.

Changelog

View the changelog on symfony trac

Note
Diem development started with symfony 1.0 on late 2007. It is opensource since August 2009, so the changelog only starts to the 24/08/09.

  • removed symply-buttons-v2 library
  • removed deprecated dmAdminConfig.js and dmFrontConfig.js
  • removed deprecated sfWidgetFormDmFilterDate and sfWidgetFormDmFilterInput classes
  • fixed administration loremization links
  • fixed various bugs in admin media library actions and forms
  • improved admin media library look & feel
  • made doctrine Sortable extension more robust
  • fixed dmDoctrineFormFilterGenerator
  • fixed PluginDmMedia->copyTo and PluginDmMedia->backup methods
  • improved performances on PluginDmMediaTable
  • improved xhr requests detection in dmWebRequest
  • fixed ui.dialog overload in dmCoreEditPlugins when dialog lib is loaded asynchronously
  • made $.dbg jQuery function more robust
  • added exception when module has no table in dmWidgetProjectModelView->configure method
  • made front list widget maxPerPage option not required (if null or ==0, all items are displayed)
  • Allowed link drag & drop in admin markitup textareas
  • fixed links to page record in admin
  • made automatic page SEO preview more robust
  • added dm_xhr parameter to all ajax calls
  • made search engine update more robust and give more information on error
  • fixed front widget ajax update when file uploaded
  • fixed link drag & drop on front widgets
  • made dmBaseActions->renderJson handle special case of json return as a response to a file upload with jquery.form
  • added parent validation in dmModuleManagerConfigHandler
  • improved performance on dmDoctrineQuery->withI18n method by allowing to pass the rootAlias as a parameter
  • fixed dmForm->removeCsrfProtection to make it work even before the field has been set up
  • made dmFileLog->getEntries method work even if function mb_strlen does not exist
  • added dmMarkdown->replaceInternalLink method
  • improved dmMarkdown->brutalToText to handle links
  • fixed markdown tables
  • cached width and height attribute in PluginDmMedia class
  • handled pages with no more modules in PluginDmPage class, and allowed to delete them in front interface
  • improved nearly all methods of PluginDmPageTable class to gain some boost
  • disabled list page creation for modules without show page
  • added keywords usage test in dmSearchPageDocument class
  • made dmMediaTagImage show the original image when there is nothing (size, filter, overlay...) to modify in order to avoid PNG problems
  • fixed front page tree pages urls
  • improved dmWidgetNavigationBreadCrumbView class and added the dm.bread_crumb.filter_pages event to allow to filter and modify the pages list from outside
  • dmWidgetListForm now defaults orderField to "position" for Sortable tables
  • fixed dmWidgetContentMediaView->doRenderIndex
  • dmWidgetAdvancedSearchFormView now defaults the query to the request query parameter if any
  • made front search results widget maxPerPage field not required
  • fixed various bugs in dmWidgetAdvancedSearchResultsView
  • added titlePosition field in front text widget form (defaults to 'outside')
  • made front code editor use the helper service to return the stylesheet path for asynchronous reload
  • improved search results widget default template
  • improved documentation
  • addedDmTableRelationHolder->getForeignByClass method
  • improved admin response automatic title
  • added dmContext->reloadModuleManager method
  • added anchor option to form rendering
  • improved dmForm hidden field automatic rendering
  • fixed dmFormDoctrine autoFieldsToUnset
  • reloaded module manager during setup task
  • added dmCoreLayoutHelper->getMetas method and improved metas rendering
  • added dm.response.filter_metas filter to filter and modify the metas list just before rendering
  • added validate option to automatic functional tests
  • fxed dmConfigForm boolean widget defaults
  • improved dmScriptNameResolver
  • made dmAuth->signin redirect to front if user is not allowed to acces administration
  • global cleanage
  • removed deprecated models and modules for DmAbbr & DmLang
  • refactored i18n message source to use pdo with doctrine connection
  • removed deprecated admin filters dm_seo & dm_html
  • added i18n and helper dependency to admin bread_crumb service
  • replaced all remaining ugly static accesses by beautifull service container accesses
  • added helper dependency to admin log_view service
  • removed html validation because symfony 1.4 now does it in functional tests
  • added dm_ prefix to template translation tables
  • added helper dependency to the markdown service
  • removed seo validation utilities
  • removed automatic orderBy table options in Sortable doctrine extension because it makes complex requests fail
  • removed deprecated dmInitFilter->saveHtml method
  • cleaned dmWebResponse and asset compressors
  • removed deprecated methods in dmBaseServiceContainer
  • improved dmFrontFunctionalTest performance
  • dmMediaTagImage->overlay now requires a dmMediaTagImage instance as argument
  • removed html validation methods from javascript controllers
  • cleaned widget views, dmFrontInitFilter and dmFrontBaseServiceContainer
  • added dmFrontHelper & dmAdminHelper classes to implement the helper service
  • made sitemap generation more robust
  • moved mb_internal_encoding configuration to dmCorePluginConfiguration
  • added configurable automatic ids for header in markdown service
  • improved skeleton
  • added helper service getter in dmBaseActions
  • added truncation in log entries configuration
  • allowed to add anchors to markdown internal links
  • improved server check
  • added helper service getter in layout_helper service
  • removed deprecated dmWebDebugPanelTimer
  • disabled automatic admin csv export as it is not ready yet
  • added one service per link_tag type and media_tag type
  • added ability to inject dmConfig values to the service container builder with dmServiceContainerLoaderConfiguration class
  • added default title widget on project creation
  • fixed dmPermissionsTask
  • added permissions check to dmSetup task
  • fixed refresh popup style in front
  • added dmFrontDoctrineHelper->setContext method and made service container call it
  • improved front component comments generation
  • fixed dmFrontDoctrinePager bad links when refreshed with ajax
  • made front default page layout more robust
  • added dmUpgradeTask to ensure Diem backward compatibility
  • deprecated dmGenerateMigrationTask and dmSpriteTask
  • switched to symfony 1.4
  • added gallery javascript admin controller
  • added dmMailTemplate module
  • removed deprecated dmModelGeneratorConfiguration and dmModelGeneratorConfigurationField classes
  • fixed admin export and form class generation
  • fixed dmAdminBreadcrumb and made it more flexible
  • removed deprecated admin modules dmArea, dmPage, dmPageView, dmZone and dmWidget
  • fixed admin chart showSuccess template when no image is available
  • improved google webmaster tools interface
  • added duplicate functionality to admin layout module
  • fixed default admin passsword if database has no password
  • added tree javascripts to core assets configuration
  • added mail service
  • added DmMailTemplate to cache_cleaner safe models configuration
  • fixed DmPageView and DmLayout table declaration
  • added french translations
  • improved project skeleton
  • fixed and improved dmBaseActions->download method
  • added doctrine extension DmGallery
  • added removeCsrfProtection, changeToEmail, submit and renderCsrfProtection methods to dmForm
  • made many improvements in dmAdminGeneratorBuilder
  • improved performances in PluginDmMediaFolderTable
  • fixed automatic page view attribution to page model when its module or action has been changed
  • created a new DmArea when a DmPageView is saved
  • improved performances in PluginDmWidget getValues and setValues methods
  • added service container dependency to dmWebResponse
  • refactored dmWebResponse->getAssetAliases and dmWebResponse->getCdnConfig methods to lazy load them
  • made dmAssetCompressor abstract class extend dmConfigurable
  • refactor dmBaseServiceContainer to improve performances by loading only required services for the current request
  • fixed dmAdminDoctrineGenerateModuleTask, dmAdminGenerateTask and dmSetupTask
  • added getStylesheetWebPath, getStylesheetFullPath, getJavascriptWebPath and getJavascriptFullPath methods to helper service
  • refactored asynchronous loading of stylesheets and javascripts on dmCoreEditCtrl.js
  • replaced deprecated sfWidgetFormDoctrineSelect by sfWidgetFormDoctrineChoice in dmWidgetListForm and dmWidgetShowForm classes
  • added checkBackground callback validator in dmWidgetContentMediaForm
  • fixed dmWidgetContentMediaView->doRenderForIndex declaration and implementation
  • added a search page check in dmWidgetAdvancedSearchFormForm->configure method
  • removed csrf protection from dmSearchForm
  • fixed dmWidgetContentTextView->doRenderForIndex method
  • fixed dmFrontActionGenerator to make action classes extend dmFrontModuleActions and not dmFrontModuleComponents
  • added front.base stylesheet to all front pages
  • modified dmFrontUser to store the current theme key in the user attributes, instead of using directly its storage
  • made front codeEditor actions use helper service to find related javascripts to load asynchronously
  • improved performances on front page module actions and made the messages more polite
  • made front page actions use helper service to find related javascripts to load asynchronously
  • removed form csrf protection for front forms which need admin credentials
  • improved the default search form
  • made possible to skip the cssClass field in the dmWidgetContentMedia form template, and fixed coding standards
  • fixed dmWidgetContentMediaForm jQuery selectors
  • added postSave methods to user model classes according to sfDoctrineGuardPlugin evolution
  • wrote some pieces of documentation and started building the diem website
  • refactored the security plugin
  • renamed dmMigrateTask to dmGenerateMigrationTask
  • added admin user module classes for form and export
  • updated all user related classes to match new security subframework
  • changed all admin generator.yml table_method configuration to getAdminListQuery
  • made command line installer more readable
  • made cache_cleaner service extend dmConfigurable
  • disabled model validation in dmModuleManagerConfigHandler
  • fixed bug in dmDoctrineRecord->get
  • fixed bug in dmAdminGenerateTask when generating diem modules
  • fixed bug in dmDataTask when loading security groups
  • improved dmLoremizeTask output
  • fixed dmSecurityUser->signIn
  • fixed auth module layout choice
  • improved admin security modules configuration
  • fixed admin user module
  • made dmSecurityUser more robust and work without context instance
  • fixed auth layout choice when redisplaying the form after a wrong password
  • made possible to have 2 diem modules for 1 model
  • configured with_doctrine_route: false in all generator.yml files
  • made dmAPCCache more robust on cli environment
  • made dmConfig survive when dm_settings table does not exist
  • disabled all model checks in dmModuleManagerConfigHandler
  • added a Doctrine_Connection parameter to dmDb::pdo
  • fixed dmDoctrineQuery->whereDescendantId when the model has two or more diem modules
  • fixed warnings in dmFormDoctrine when embedded forms have been unsetted
  • fixed recursion madness in dmFileLog->fixLog
  • removed seo title prefix & suffix from dmSeoSynchronizer
  • fixed dmAdminFunctionalCoverageTest urls prefixes
  • fixed dmCoreFunctionalCoverageTest user signin simulation
  • made dmMediaResource throw an exception when the source is a new instance of DmMedia
  • removed deprecated noRightClick jQuery function from dmCorePlugins.js
  • fixed front widget filters and wrap classes
  • fixed front ajax edit actions expect a put method instead of a post
  • added dmUserPlugin tasks: change-password and promote
  • added thread_launcher to the service container. It allows to run heavy manipulations (like page synchronization) in another php processus
  • exploded the update_project action into 3 parts to avoid memory problems
  • added ajax messages when updating the project
  • huge performance improvement and 3x less memory usage in page_synchronizer and seo_synchronizer (use now pdo instead of doctrine when possible)
  • added sfImageTransform default configuration
  • selected useful classes of sfImageTransform and removed the other ones because the make the autoloader too big
  • improved routing speed and memory usage in admin: each module now has only one route instead of 7
  • fixed image size bug when image can not be scaled
  • made page_tree_watcher_service extend dmConfigurable and added a use_thread option (can be set to auto)
  • made possible to inject a module manager in a record
  • improved automatic seo defaults
  • improved all logs speed and usability
  • added dmDb::pdo method to build raw pdo queries
  • made possible to change dmContext class in dm::createContext
  • removed dmContext dependency from dmModuleManagerConfigHandler
  • added dmConfig::setCulture method to allow dmConfig to work without a context instance
  • fixed dmString::slugify for french culture and improved its performances
  • added dmString::convertBytes method to convert a shorthand byte value from a PHP configuration directive to an integer value
  • added dmBaseActions::getBackUrl method to avoid redirections cycles
  • reduced max size in log default options
  • fixed many routing bugs due to recent admin routing refactoring
  • improved accuracy & performances in log chart
  • moved tons of code from generated admin classes to extended classes: admin is more DRY, lighter and more extensible
  • removed deprecated classes dmDoctrineConfiguration, Doctrine_Cache_Dm, dmDoctrineTaggable
  • removed doctrine_config service from service container
  • made bread_crumb admin service shared and added an event connection to admin.edit_object to display current object name
  • added admin.edit_object event notification to admin generated modules
  • improved admin sent mails module interface
  • added dmProjectConfiguration::configureDoctrineCache method which is run when project.yml configuration is loaded
  • improved performance on dmConfig::load by using pdo statement
  • simplified dmDoctrineQuery::dmCache method
  • removed automatic doctrine cache usage from dmDoctrineRecord queries
  • added dmMarkdown::brutalToText method which will be used by seo_synchronizer
  • fixed bug in dmPageTreeWatcher use non-existant attribute moduleManager
  • improved service container performances by using dmString::camelize in hasService and getService methods
  • improved performance on dmTheme initialization
  • added static cache option to widget types and module actions. It makes the cache non-contextual
  • refactored dmWidgetBaseView for cleaner interface and faster execution
  • added built-in cache in dmWidgetBaseView
  • improved performances on front init filter when guessing the page from an ajax call
  • refactored the automatic pages seo generator
  • added dmDoctrineTable::getSeoColumns overridable method
  • added jquery ui accordion assets
  • made cache_cleaner service notify a dm.cache.clear_template event
  • provided service container to doctrine tables
  • fixed dmForm::renderSubmitTag input and dmForm::open method (defaults to POST)
  • improved performances on front i18n by loading diem translations only if the user has edition credentials
  • removed useless serialization on i18n message source cache methods
  • made event_log service listen dm.cache.clear_template
  • overrided PluginDmProfileTable::getSeoColumns to provide virtual access to username and email
  • made page_tree_watcher synchronize seo when a DmAutoSeo object has been modified
  • improved error handling when updated project with threads
  • removed deprecated dm_xhr query parameter from jQuery ajax calls
  • refactored seo_synchronizer service and added a validatePattern method
  • added dmBaseServiceContainer::reload method to create a new shared service when its parameters has been changed
  • added a symfony installer with a great command line configuration wizard
  • renamed project.yml to config.yml
  • removed deprecated dmActionLog module
  • cleaned and completed skeleton
  • removed deprecated common filter from filter.yml files
  • fixed bug on dmLogChart when site is new
  • cleaned dmAdminApplicationConfiguration
  • improved chart interface and added useful error messages for disabled charts
  • removed automatic lazy_cache_key configuration in dmCorePluginConfiguration
  • added isModelSafe method in the cache_cleaner service to ignore some models when deciding if the template cache must be cleared
  • added checkProjectIsSetup in dmContext
  • fixed dmRequestLog when log is new
  • fixed uri when no script name on dmRequestLogEntry
  • improved dmServerCheck standalone class
  • added the dm:server-check task which uses dmServerCheck
  • added the dm:permissions and dm:publish-assets tasks
  • fixed dm:setup when project has no models
  • disabled logging during functional tests
  • added DIEM_VERSION constant
  • changed front routing class to dmFrontRouting in front factories
  • added the project skeleton
  • removed deprecated dmMediaTools static class by dispatching to services its responsabilities
  • disabled log_chart service on the very beginning of the site's life
  • added getMediaUrl method to admin routing
  • simplified layout_helper services dependencies
  • removed useless relationAssociation controller
  • improved and cleaned relationForeign partial
  • made service container listen the context.change_action and store the current module and action
  • removed action_stack service from service container
  • made search_index and helper service do not depend on the user
  • made skeleton application settings more precise
  • added getRouting method to dmBaseActions
  • made cache_manager service notify a task.cache.clear event for compatibility with other plugins (like sfSuperCachePlugin)
  • improved dmFileLog buffer system and removed deprecated method getFilteredEntries
  • added filesystem dependency to front code generators
  • tracked and destroyed nearly all sfContext::getInstance call (or similar bad static practice) in all codebase
  • removed deprecated methods in dmHelper and fixed coding style in the others
  • simplified widget_type_manager service dependencies
  • added getPage method to abstract class dmWidgetProjectForm and used it in inherited classes to remove sfContext::getInstance calls
  • improved the setup task with step by step doctrine migration wizard
  • removed deprecated classes dmDoctrineMigrationBase & dmGenerateMigrationsDiff
  • overriden sfDoctrineForm(Filter)Generator filterModels method to unset weird ToPrfxModels? generated by doctrine migrations
  • improved all tasks output
  • removed wrong assets symlink creation on publish assets task
  • added dmMigrate task and dmDoctrineBuildFiltersTask
  • added rotation to file logs
  • made dmBrowser recognize google chrome
  • fixed bug in front page edit actions
  • made page synchronisation service more robust
  • improved performances on dmHtmlTag
  • added overlay feature on image tag
  • fixed bug in media subframework when relative_url_root is not empty
  • implemented a chart subframework based on pChart and GAPI
  • improved content chart to make it show actual activity
  • added see_chart credential
  • added week_chart to service container
  • made multi little charts load asynchronously
  • added autoLoading method to javascript admin controller
  • added server log chart to service container
  • added server log mini chart to admin homepage
  • added mem_peak_usage info to user log
  • improved smart 404 feature to work even if search index is not updated
  • improved activity and server chart
  • fixed MVC in dmChart admin module
  • implemented charts credentials checks
  • added full google analytics configuration to dmGoogleAnalytics admin module
  • added hiddenFields rendering to dmForm->render method
  • added cache cleaner service to service container
  • improved server chart memory scale
  • added memory info to user log display
  • added more delay to ajax autoloading components on admin
  • removed useless dependence to event dispatcher in cache manager
  • small performance improvement on dmDoctrineQuery
  • replaced all widget view dependencies by a unique dependency to the context
  • added widget type cachable option
  • made widget forms and widget views throw exceptions when their module and/or action does not exist
  • improved performances on widget type loading
  • renamed actionLog to eventLog and userLog to requestLog
  • improved logs views
  • added filters on logs
  • extended eventLog capabilities by listening more events
  • added admin breadcrumb service to service container
  • made dmSitemap notify an event when sitemap is written to disk
  • improved ajax linux console look & feel
  • made dmConfig notify an event when config is written to database
  • added a nameBackup property to pages, which still contains the page name when the page is deleted (useful for logs)
  • rewrote service manager events connections
  • fixed incremental skeleton structure and content
  • created seo_synchronizer service to update pages seo automatically
  • created page_synchronizer service to create, delete and move pages automatically,
  • replaced all dmServices by simple tasks
  • improved loremization process in admin generated modules
  • added labels to server chart based on event log
  • added credential to clear the cache with the front & admin toolbar
  • added service container dependence to page_tree_watcher
  • improved clear cache process with tests and events
  • added setting parameter to dm.config.updated event
  • filtered internal config modification in event_log
  • improved page_tree_watcher to use new synchronization services
  • made dmDataTask, dmLoremizeTask, dmFrontGenerateTask, dmSearchUpdateTask, dmSetupTask and dmSpriteTask extend dmContextTask
  • added exception in media_tag_image when file does not exist or is not an image
  • compressed sprite stylesheets
  • added page_not_found_handler service to front service container
  • aded dm.page_not_found.before and dm.page_not_found.after events
  • made front init filter use page_not_found_handler service to handle unknown slugs
  • fixed bug in widget base view when view cache manager is not available
  • adjusted each chart lifetime option in service container parameters
  • renamed dmChart configure method to draw, and added an empty configure method
  • added clear cache events on the server graph, and improved it globally
  • applied some tricks to reduce the request log filesize
  • added values on bar charts
  • added getCurrentTranslation method to dmDoctrineRecords
  • made media subframework more robust
  • fixed bug when editing a page with some kind of module in front edition
  • fixed major bug when using a dmDoctrineForm to update an object with dmFormManager
  • cleaned dmAdmin actions
  • fixed some bugs in admin interface
  • made front components more robust
  • fixed front widget edition
  • added configureServiceContainer method to project configuration class to allow developer to configure the service container
  • disabled admin list pager select when no results
  • made admin javascript loading more precise
  • added admin breadCrumb and search form on object creation interface
  • removed all max_per_page configuration in generators
  • fixed doctrine generated templates
  • added module replacement in module manager config handler
  • improved generator.yml file generation
  • fixed bug in widget type manager
  • removed links in front template generation when module has no page
  • improved ajax error handling on front widget edition
  • implemented form html generation chainability: echo $formname?->label('Name')->field()->error();
  • made form field class overridable
  • improved front actions class differential generation
  • merged all Diem doctrine schemas into one
  • removed deprecated dmMigrate task and dmBuildModel task
  • improved size detection in media image tag
  • added unbindKey jQuery method
  • renamed formManager to forms in actions and components and made it implement ArrayAccess
  • improved front slug generation
  • added getHrefPrefix method to link subframework
  • first alpha version of Diem5
  • added preloadPagesForRecords method in dmDoctrineTable
  • replaced front routing config handler by dmFrontRoutingConfigHandler to handle user special urls
  • added preloadPages method to front actions and components
  • added renderHead method to front layout helper service
  • added dmRedirect module to allow seo team to perform 302 redirections without .htaccess
  • added url_redirect permission
  • added smart 404 functionality
  • massive performance improvement on search index reconstruction
  • added search_page service to service container
  • added isIndexable attribute to widget view classes
  • implemented fast and extensible indexation for model view widgets
  • made form manager create non-existent forms on demand
  • made form manager user model name as key
  • modified front action generator according to previous modifications
  • made list widgets acccept filter modules by local relation
  • added admin modules google analytics & google webmaster tools
  • fixed admin sort interface
  • removed all hardcoded context creations
  • removed some internal admin modules for performance boost on routing factory
  • added canAccessToModule method to dmAdminUser
  • admin list links to another module now check if user can access the module
  • improved admin list associations and foreigns
  • made doctrine page_schema more explicit
  • module manager config handler now checks if a module is declared twice
  • dmFrontWebController now generates redirection url before firing event
  • improved performances on doctrine pager by caching results
  • added isMarkdownColumn on dmDoctrineTable to check if a column is a markdown text
  • removed automatic anchor from form actions
  • added unMarkdown helper to convert a markdown text to a simple text
  • improved performances in DmLayout model and DmPage table
  • made dmStylesheetCompressor fixCssPaths method public to allow actions to use it
  • great performance boost on search engine population by optimizing queries
  • added more logs to search engine population
  • made ui tabs, ui resizable, markdown javascript and stylesheets loaded on demand on front edition to reduce page load time
  • removed useless jquery plugin jqtransform
  • updated Zend Framework Search Lucene
  • dynamically load widget forms js & css (tabs, markdown...) for performance reasons
  • improved admin interface usability
  • admin interface work like gmail
  • splitted dmDoctrinePager in dmFrontDoctrinePager and dmAdminPager
  • added doctrine pagers to service container
  • added dmMarkdown to service container and made its methods non-static
  • made front & admin edition template cache aware of user credentials
  • admin look & feel general improvement by cleaning and improving stylesheets and javascripts
  • added fluent interface to dmForm
  • added dmGoogleWebmasterTools module
  • fixed sfGuardPermission and sfGuardAuth admin modules compatibility with Diem admin generator
  • restored auto seo filter
  • removed sprite creation from setup service
  • tricky interface improvements
  • added code_editor_controller, code_editor_model and code_editor_view permissions
  • added htmlWidth, htmlHeight and htmlSize methods to front media image tag
  • updated jquery ui to 1.8a1 and fixed js code
  • updated schema to remove doctrine validations
  • removed outdated Zend Framework components and updated Zend Framework components to 1.9.3PL1
  • disabled useless diem modules in admin configuration
  • removed deprecated doctrine hydrator dmAssoc
  • improved doctrine configuration
  • improved performance on web debug panel and on DmMedia model
  • made page record cache more precise gaining great performance boost on big sites
  • decreased media bar thumbnails quality for faster load on browser
  • replaced sfWebDebugPanelDoctrine by dmWebDebugPanelDoctrine to get query times in ms
  • made module manager non-static and replaced static references to module manager everywhere
  • added module manager to context factories
  • added sfTemplate to vendor dir
  • now all module configuration and hierarchy is preprocessed and cached
  • added module path processing into config cache for performance
  • splitted dmModuleConfigHandler in dmAdminModuleConfigHandler & dmModuleConfigHandler
  • moved modules direct actions checks to config cache
  • added ability to show / hide dispatcher dependencies in admin diagram generators
  • added moduleManager dependency to dmWidgetBaseView
  • improved performance in dmWidgetTypeManager
  • fixed dmDoctrinePager Iterator interface borken by doctrine collection
  • moved modules, module Spaces and moduleTypes slug generation to admin routing config cache
  • refactored dmDoctrineTableExport
  • added gmap configuration and jmap jquery plugin
  • added dmResponse->withGoogleMap method
  • improved admin homepage extensibility
  • made admin actions and components overridable
  • fixed doctrine admin module configuration
  • added dmDoctrineForm unsetAutoFields method
  • ajax responses now use json to pass multiple parameters
  • added is_indexable i18n field to DmPage to know if web crawlers are allowed to access it
  • added createI18nForm and mergeI18nForm methods to dmFormDoctrine
  • deprecated model DmMetaWrap and replaced it by dmConfig
  • removed mailer from factories and loaded only on demand for performance boost
  • restored admin breadCrumb
  • fixed dmGuardPlugin not loaded on certain tasks
  • admin routing no more relies on i18N
  • added conveniance methods to dmDoctrineRoute
  • disabled APCCache opcode removal on clear cache to fix strange behaviours
  • improved module manager config handler to make all its classes configurable in factories.yml
  • moved module hierarchy consistency checks to config cache
  • reduced memory print in admin
  • added markdown helper
  • improved image media tag exceptions management
  • made admin homepage more extensible
  • improved javascript performances by lazy loading menus
  • added dmTableTag service to service container
  • added getAssociationByRefClass method on relation holder
  • dmStylesheetCompressor & dmJavascript Compressor are now decoupled and extensible
  • removed deprecated classes dmStaticHelper, dmFrontRoutingConfigHandler
  • improved performance on dmAdminPluginConfiguration & dmFrontPluginConfiguration
  • improved performance loading sfService classes manually
  • fixed some dependencies in many parts, replace singleton static instance request by sfService request
  • moved front routing to dmFrontPlugin routing.yml file
  • improved global decoupling using sfServiceContainer and sfEventDispatcher
  • added dmThemeManager and dmTheme to sfServiceContainer
  • improved theming capabilities
  • improved dmAssetConfigHandler performances
  • removed references to Symfony 1.3 deprecated stuff
  • fixed admin list foreign records widget
  • added more precise timer to dmWebDebugPanel (Symfony timer does not measure all request time)
  • fixed admin table referers automatic sorting interface generation
  • fixed admin table referers widget default sorting
  • moved asset configuration to classes managed by sfServiceContainer
  • removed deprecated dmAssetFilter classes
  • improved global performance by disabling timers on prod environment
  • fixed markdown editor on admin
  • improved markdown javascript compression
  • fixed zone rendering bug on dmFrontPageEditHelper
  • removed all sfContext::getInstance() and related in dmMediaResource
  • added unit-tests for dmMediaTag classes
  • huge code refactoring (decoupling, extensibility, testability and performance improvements)
  • added link subframework to service container
  • fixed admin module space page show modules without routing configuration
  • added getBaseFromUrl and getDataFromUrl static methods to dmString class
  • made dmDoctrineRecord->getDmMediaByColumnName more robust
  • made service container available in dmForm instances and dmHtml instances
  • added clearStylesheets and clearJavacripts methods to dmWebResponse
  • added action log managed by service container and event dispatcher
  • added log abstract classes and refactored user log and action log to use them
  • removed admin generator dependency to page tree watcher using event dispatcher
  • added connectService method to service containers
  • fixed admin form checkbox javascript controller
  • removed service container dependency from widget view classes
  • improved performances in dmFrontLayoutHelper class
  • added ajaxified action log on admin homepage
  • edited admin routing to make edit routes shorter
  • modified join alias names on dmDoctrineQuery and dmDoctrineTable automatic joins
  • improved performances and fixed dependencies in page model and widget model
  • added late enabled check in asset compressors to allow user to disable them programatically in a controller
  • added script name resolver to service container
  • fixed bad default method table in admin generator builder
  • working on DmSettings which allows to store configuration in the database
  • updated dmDataService to provide default configuration
  • removed SiteI18n Table
  • fixed page tree style in front edition
  • removed useless dm_site table and all dependencies to DmSite
  • updated settings form
  • fixed bad css compression on front when not logged
  • improved admin modules security
  • assigned credentials to admin module to unshow them in the menu
  • speed up credential checks in dmUser
  • removed deprecated dmGraphViz admin module
  • fixed minor bugs in dmConfig admin interface
  • added french translations
  • updated configuration credentials
  • fixed bug when an empty credential is sent to the user
  • improved configuration panel
  • fixed i18n initialization on dmDoctrine records
  • added default settings to dmDataService
  • improved admin & front toolbar
  • implemented basic doctrine i18n fallback
  • added tons of functional tests for i18n and settings
  • moved default culture calculation to dmApplicationConfiguration
  • removed deprecated dmYaml & dmYamlDumper
  • fixed missing attribute in dmMediaImageTag when method is not fit
  • improved performance on config loading by using doctrine statement
  • implemented Symfony Dependency Injection Container in the following Diem services: search_engine, doctrine_config, filesystem, user_log, page_tree_watcher, file_backup, helper, cache_manager, sitemap, page_helper, widget_type_manager
  • added event notification after serviceContainer creation
  • made possible to customize the metaCache class
  • improved performance on dmHtmlMenu
  • updated diem to match new Symfony 1.3 requirements
  • added autogenerated graphs
  • added dmUserLogEntry, dmBrowser, dmWidgetView and dmAuthLayoutHelper to sfServiceContainer
  • separated autogenerated database diagram in 3 parts (project, user and core)
  • improved performance in dmAdminRecursivePageList and dmFrontRecursivePageList
  • improved userLog and admin usability
  • added symfony check_configuration.php to dmServerCheck and made sfGuardSignin extend BaseForm
  • made sfWidgetFormDmDate extend sfWidgetFormI18nDate instead of sfWidgetFormDate and fixed jquery ui datepicker inclusion in forms that require it
  • load current object variable in admin forms partials and components
  • improved automatic i18n form merge in admin
  • improved admin usability and fixed apc cache abstraction
  • improved dmAPCCache (added prefixes to cache name)
  • installed apc monitor and improved apc integration
  • removed deprecated class dmAdminHelper
  • fixed i18n date validator
  • disabled symfony functional tests creation for admin
  • revamped automatic media form embedding
  • added automatic batch actions for record activation
  • improved routing performance
  • fixed admin doctrine selects must use defaut table sort
  • improved admin list performance
  • added badBrowser login page
  • added select all / unselect all to multi checkbox admin fields
  • fixed admin media form embedding
  • added developer friendly method to perform custom joins in admin list query
  • extended Zend CodeGenerator to fix indentation issues
  • improvements on front edition and progressive code generation
  • fixed i18n features and page creation
  • moved doctrine filters creation to table
  • huge performance boost
  • added Zend Lucene
  • updated search engine
  • added dmServer module in admin which performs dmServerCheck and show phpinfo in a symfony secure way
  • improved admin javascript
  • added dmServer module to admin
  • improved front edition and rich text widgets
  • added user log
  • renamed is_approved to is_active and some minor fixes
Fork Diem on GitHub