Index: inc/public/class.dc.template.php
===================================================================
--- inc/public/class.dc.template.php	(revision 3731)
+++ inc/public/class.dc.template.php	(revision 3874)
@@ -29,188 +29,188 @@
 
         # Transitional tags
-        $this->addValue('EntryTrackbackCount', array($this, 'EntryPingCount'));
-        $this->addValue('EntryTrackbackData', array($this, 'EntryPingData'));
-        $this->addValue('EntryTrackbackLink', array($this, 'EntryPingLink'));
+        $this->addValue('EntryTrackbackCount', [$this, 'EntryPingCount']);
+        $this->addValue('EntryTrackbackData', [$this, 'EntryPingData']);
+        $this->addValue('EntryTrackbackLink', [$this, 'EntryPingLink']);
 
         # l10n
-        $this->addValue('lang', array($this, 'l10n'));
+        $this->addValue('lang', [$this, 'l10n']);
 
         # Loops test tags
-        $this->addBlock('LoopPosition', array($this, 'LoopPosition'));
-        $this->addValue('LoopIndex', array($this, 'LoopIndex'));
+        $this->addBlock('LoopPosition', [$this, 'LoopPosition']);
+        $this->addValue('LoopIndex', [$this, 'LoopIndex']);
 
         # Archives
-        $this->addBlock('Archives', array($this, 'Archives'));
-        $this->addBlock('ArchivesHeader', array($this, 'ArchivesHeader'));
-        $this->addBlock('ArchivesFooter', array($this, 'ArchivesFooter'));
-        $this->addBlock('ArchivesYearHeader', array($this, 'ArchivesYearHeader'));
-        $this->addBlock('ArchivesYearFooter', array($this, 'ArchivesYearFooter'));
-        $this->addValue('ArchiveDate', array($this, 'ArchiveDate'));
-        $this->addBlock('ArchiveNext', array($this, 'ArchiveNext'));
-        $this->addBlock('ArchivePrevious', array($this, 'ArchivePrevious'));
-        $this->addValue('ArchiveEntriesCount', array($this, 'ArchiveEntriesCount'));
-        $this->addValue('ArchiveURL', array($this, 'ArchiveURL'));
+        $this->addBlock('Archives', [$this, 'Archives']);
+        $this->addBlock('ArchivesHeader', [$this, 'ArchivesHeader']);
+        $this->addBlock('ArchivesFooter', [$this, 'ArchivesFooter']);
+        $this->addBlock('ArchivesYearHeader', [$this, 'ArchivesYearHeader']);
+        $this->addBlock('ArchivesYearFooter', [$this, 'ArchivesYearFooter']);
+        $this->addValue('ArchiveDate', [$this, 'ArchiveDate']);
+        $this->addBlock('ArchiveNext', [$this, 'ArchiveNext']);
+        $this->addBlock('ArchivePrevious', [$this, 'ArchivePrevious']);
+        $this->addValue('ArchiveEntriesCount', [$this, 'ArchiveEntriesCount']);
+        $this->addValue('ArchiveURL', [$this, 'ArchiveURL']);
 
         # Blog
-        $this->addValue('BlogArchiveURL', array($this, 'BlogArchiveURL'));
-        $this->addValue('BlogCopyrightNotice', array($this, 'BlogCopyrightNotice'));
-        $this->addValue('BlogDescription', array($this, 'BlogDescription'));
-        $this->addValue('BlogEditor', array($this, 'BlogEditor'));
-        $this->addValue('BlogFeedID', array($this, 'BlogFeedID'));
-        $this->addValue('BlogFeedURL', array($this, 'BlogFeedURL'));
-        $this->addValue('BlogRSDURL', array($this, 'BlogRSDURL'));
-        $this->addValue('BlogName', array($this, 'BlogName'));
-        $this->addValue('BlogLanguage', array($this, 'BlogLanguage'));
-        $this->addValue('BlogThemeURL', array($this, 'BlogThemeURL'));
-        $this->addValue('BlogParentThemeURL', array($this, 'BlogParentThemeURL'));
-        $this->addValue('BlogUpdateDate', array($this, 'BlogUpdateDate'));
-        $this->addValue('BlogID', array($this, 'BlogID'));
-        $this->addValue('BlogURL', array($this, 'BlogURL'));
-        $this->addValue('BlogXMLRPCURL', array($this, 'BlogXMLRPCURL'));
-        $this->addValue('BlogPublicURL', array($this, 'BlogPublicURL'));
-        $this->addValue('BlogQmarkURL', array($this, 'BlogQmarkURL'));
-        $this->addValue('BlogMetaRobots', array($this, 'BlogMetaRobots'));
-        $this->addValue('BlogJsJQuery', array($this, 'BlogJsJQuery'));
+        $this->addValue('BlogArchiveURL', [$this, 'BlogArchiveURL']);
+        $this->addValue('BlogCopyrightNotice', [$this, 'BlogCopyrightNotice']);
+        $this->addValue('BlogDescription', [$this, 'BlogDescription']);
+        $this->addValue('BlogEditor', [$this, 'BlogEditor']);
+        $this->addValue('BlogFeedID', [$this, 'BlogFeedID']);
+        $this->addValue('BlogFeedURL', [$this, 'BlogFeedURL']);
+        $this->addValue('BlogRSDURL', [$this, 'BlogRSDURL']);
+        $this->addValue('BlogName', [$this, 'BlogName']);
+        $this->addValue('BlogLanguage', [$this, 'BlogLanguage']);
+        $this->addValue('BlogThemeURL', [$this, 'BlogThemeURL']);
+        $this->addValue('BlogParentThemeURL', [$this, 'BlogParentThemeURL']);
+        $this->addValue('BlogUpdateDate', [$this, 'BlogUpdateDate']);
+        $this->addValue('BlogID', [$this, 'BlogID']);
+        $this->addValue('BlogURL', [$this, 'BlogURL']);
+        $this->addValue('BlogXMLRPCURL', [$this, 'BlogXMLRPCURL']);
+        $this->addValue('BlogPublicURL', [$this, 'BlogPublicURL']);
+        $this->addValue('BlogQmarkURL', [$this, 'BlogQmarkURL']);
+        $this->addValue('BlogMetaRobots', [$this, 'BlogMetaRobots']);
+        $this->addValue('BlogJsJQuery', [$this, 'BlogJsJQuery']);
 
         # Categories
-        $this->addBlock('Categories', array($this, 'Categories'));
-        $this->addBlock('CategoriesHeader', array($this, 'CategoriesHeader'));
-        $this->addBlock('CategoriesFooter', array($this, 'CategoriesFooter'));
-        $this->addBlock('CategoryIf', array($this, 'CategoryIf'));
-        $this->addBlock('CategoryFirstChildren', array($this, 'CategoryFirstChildren'));
-        $this->addBlock('CategoryParents', array($this, 'CategoryParents'));
-        $this->addValue('CategoryFeedURL', array($this, 'CategoryFeedURL'));
-        $this->addValue('CategoryURL', array($this, 'CategoryURL'));
-        $this->addValue('CategoryShortURL', array($this, 'CategoryShortURL'));
-        $this->addValue('CategoryDescription', array($this, 'CategoryDescription'));
-        $this->addValue('CategoryTitle', array($this, 'CategoryTitle'));
-        $this->addValue('CategoryEntriesCount', array($this, 'CategoryEntriesCount'));
+        $this->addBlock('Categories', [$this, 'Categories']);
+        $this->addBlock('CategoriesHeader', [$this, 'CategoriesHeader']);
+        $this->addBlock('CategoriesFooter', [$this, 'CategoriesFooter']);
+        $this->addBlock('CategoryIf', [$this, 'CategoryIf']);
+        $this->addBlock('CategoryFirstChildren', [$this, 'CategoryFirstChildren']);
+        $this->addBlock('CategoryParents', [$this, 'CategoryParents']);
+        $this->addValue('CategoryFeedURL', [$this, 'CategoryFeedURL']);
+        $this->addValue('CategoryURL', [$this, 'CategoryURL']);
+        $this->addValue('CategoryShortURL', [$this, 'CategoryShortURL']);
+        $this->addValue('CategoryDescription', [$this, 'CategoryDescription']);
+        $this->addValue('CategoryTitle', [$this, 'CategoryTitle']);
+        $this->addValue('CategoryEntriesCount', [$this, 'CategoryEntriesCount']);
 
         # Comments
-        $this->addBlock('Comments', array($this, 'Comments'));
-        $this->addValue('CommentAuthor', array($this, 'CommentAuthor'));
-        $this->addValue('CommentAuthorDomain', array($this, 'CommentAuthorDomain'));
-        $this->addValue('CommentAuthorLink', array($this, 'CommentAuthorLink'));
-        $this->addValue('CommentAuthorMailMD5', array($this, 'CommentAuthorMailMD5'));
-        $this->addValue('CommentAuthorURL', array($this, 'CommentAuthorURL'));
-        $this->addValue('CommentContent', array($this, 'CommentContent'));
-        $this->addValue('CommentDate', array($this, 'CommentDate'));
-        $this->addValue('CommentTime', array($this, 'CommentTime'));
-        $this->addValue('CommentEmail', array($this, 'CommentEmail'));
-        $this->addValue('CommentEntryTitle', array($this, 'CommentEntryTitle'));
-        $this->addValue('CommentFeedID', array($this, 'CommentFeedID'));
-        $this->addValue('CommentID', array($this, 'CommentID'));
-        $this->addBlock('CommentIf', array($this, 'CommentIf'));
-        $this->addValue('CommentIfFirst', array($this, 'CommentIfFirst'));
-        $this->addValue('CommentIfMe', array($this, 'CommentIfMe'));
-        $this->addValue('CommentIfOdd', array($this, 'CommentIfOdd'));
-        $this->addValue('CommentIP', array($this, 'CommentIP'));
-        $this->addValue('CommentOrderNumber', array($this, 'CommentOrderNumber'));
-        $this->addBlock('CommentsFooter', array($this, 'CommentsFooter'));
-        $this->addBlock('CommentsHeader', array($this, 'CommentsHeader'));
-        $this->addValue('CommentPostURL', array($this, 'CommentPostURL'));
-        $this->addBlock('IfCommentAuthorEmail', array($this, 'IfCommentAuthorEmail'));
-        $this->addValue('CommentHelp', array($this, 'CommentHelp'));
+        $this->addBlock('Comments', [$this, 'Comments']);
+        $this->addValue('CommentAuthor', [$this, 'CommentAuthor']);
+        $this->addValue('CommentAuthorDomain', [$this, 'CommentAuthorDomain']);
+        $this->addValue('CommentAuthorLink', [$this, 'CommentAuthorLink']);
+        $this->addValue('CommentAuthorMailMD5', [$this, 'CommentAuthorMailMD5']);
+        $this->addValue('CommentAuthorURL', [$this, 'CommentAuthorURL']);
+        $this->addValue('CommentContent', [$this, 'CommentContent']);
+        $this->addValue('CommentDate', [$this, 'CommentDate']);
+        $this->addValue('CommentTime', [$this, 'CommentTime']);
+        $this->addValue('CommentEmail', [$this, 'CommentEmail']);
+        $this->addValue('CommentEntryTitle', [$this, 'CommentEntryTitle']);
+        $this->addValue('CommentFeedID', [$this, 'CommentFeedID']);
+        $this->addValue('CommentID', [$this, 'CommentID']);
+        $this->addBlock('CommentIf', [$this, 'CommentIf']);
+        $this->addValue('CommentIfFirst', [$this, 'CommentIfFirst']);
+        $this->addValue('CommentIfMe', [$this, 'CommentIfMe']);
+        $this->addValue('CommentIfOdd', [$this, 'CommentIfOdd']);
+        $this->addValue('CommentIP', [$this, 'CommentIP']);
+        $this->addValue('CommentOrderNumber', [$this, 'CommentOrderNumber']);
+        $this->addBlock('CommentsFooter', [$this, 'CommentsFooter']);
+        $this->addBlock('CommentsHeader', [$this, 'CommentsHeader']);
+        $this->addValue('CommentPostURL', [$this, 'CommentPostURL']);
+        $this->addBlock('IfCommentAuthorEmail', [$this, 'IfCommentAuthorEmail']);
+        $this->addValue('CommentHelp', [$this, 'CommentHelp']);
 
         # Comment preview
-        $this->addBlock('IfCommentPreview', array($this, 'IfCommentPreview'));
-        $this->addBlock('IfCommentPreviewOptional', array($this, 'IfCommentPreviewOptional'));
-        $this->addValue('CommentPreviewName', array($this, 'CommentPreviewName'));
-        $this->addValue('CommentPreviewEmail', array($this, 'CommentPreviewEmail'));
-        $this->addValue('CommentPreviewSite', array($this, 'CommentPreviewSite'));
-        $this->addValue('CommentPreviewContent', array($this, 'CommentPreviewContent'));
-        $this->addValue('CommentPreviewCheckRemember', array($this, 'CommentPreviewCheckRemember'));
+        $this->addBlock('IfCommentPreview', [$this, 'IfCommentPreview']);
+        $this->addBlock('IfCommentPreviewOptional', [$this, 'IfCommentPreviewOptional']);
+        $this->addValue('CommentPreviewName', [$this, 'CommentPreviewName']);
+        $this->addValue('CommentPreviewEmail', [$this, 'CommentPreviewEmail']);
+        $this->addValue('CommentPreviewSite', [$this, 'CommentPreviewSite']);
+        $this->addValue('CommentPreviewContent', [$this, 'CommentPreviewContent']);
+        $this->addValue('CommentPreviewCheckRemember', [$this, 'CommentPreviewCheckRemember']);
 
         # Entries
-        $this->addBlock('DateFooter', array($this, 'DateFooter'));
-        $this->addBlock('DateHeader', array($this, 'DateHeader'));
-        $this->addBlock('Entries', array($this, 'Entries'));
-        $this->addBlock('EntriesFooter', array($this, 'EntriesFooter'));
-        $this->addBlock('EntriesHeader', array($this, 'EntriesHeader'));
-        $this->addValue('EntryAuthorCommonName', array($this, 'EntryAuthorCommonName'));
-        $this->addValue('EntryAuthorDisplayName', array($this, 'EntryAuthorDisplayName'));
-        $this->addValue('EntryAuthorEmail', array($this, 'EntryAuthorEmail'));
-        $this->addValue('EntryAuthorEmailMD5', array($this, 'EntryAuthorEmailMD5'));
-        $this->addValue('EntryAuthorID', array($this, 'EntryAuthorID'));
-        $this->addValue('EntryAuthorLink', array($this, 'EntryAuthorLink'));
-        $this->addValue('EntryAuthorURL', array($this, 'EntryAuthorURL'));
-        $this->addValue('EntryBasename', array($this, 'EntryBasename'));
-        $this->addValue('EntryCategory', array($this, 'EntryCategory'));
-        $this->addValue('EntryCategoryDescription', array($this, 'EntryCategoryDescription'));
-        $this->addBlock('EntryCategoriesBreadcrumb', array($this, 'EntryCategoriesBreadcrumb'));
-        $this->addValue('EntryCategoryID', array($this, 'EntryCategoryID'));
-        $this->addValue('EntryCategoryURL', array($this, 'EntryCategoryURL'));
-        $this->addValue('EntryCategoryShortURL', array($this, 'EntryCategoryShortURL'));
-        $this->addValue('EntryCommentCount', array($this, 'EntryCommentCount'));
-        $this->addValue('EntryContent', array($this, 'EntryContent'));
-        $this->addValue('EntryDate', array($this, 'EntryDate'));
-        $this->addValue('EntryExcerpt', array($this, 'EntryExcerpt'));
-        $this->addValue('EntryFeedID', array($this, 'EntryFeedID'));
-        $this->addValue('EntryFirstImage', array($this, 'EntryFirstImage'));
-        $this->addValue('EntryID', array($this, 'EntryID'));
-        $this->addBlock('EntryIf', array($this, 'EntryIf'));
-        $this->addBlock('EntryIfContentCut', array($this, 'EntryIfContentCut'));
-        $this->addValue('EntryIfFirst', array($this, 'EntryIfFirst'));
-        $this->addValue('EntryIfOdd', array($this, 'EntryIfOdd'));
-        $this->addValue('EntryIfSelected', array($this, 'EntryIfSelected'));
-        $this->addValue('EntryLang', array($this, 'EntryLang'));
-        $this->addBlock('EntryNext', array($this, 'EntryNext'));
-        $this->addValue('EntryPingCount', array($this, 'EntryPingCount'));
-        $this->addValue('EntryPingData', array($this, 'EntryPingData'));
-        $this->addValue('EntryPingLink', array($this, 'EntryPingLink'));
-        $this->addBlock('EntryPrevious', array($this, 'EntryPrevious'));
-        $this->addValue('EntryTitle', array($this, 'EntryTitle'));
-        $this->addValue('EntryTime', array($this, 'EntryTime'));
-        $this->addValue('EntryURL', array($this, 'EntryURL'));
+        $this->addBlock('DateFooter', [$this, 'DateFooter']);
+        $this->addBlock('DateHeader', [$this, 'DateHeader']);
+        $this->addBlock('Entries', [$this, 'Entries']);
+        $this->addBlock('EntriesFooter', [$this, 'EntriesFooter']);
+        $this->addBlock('EntriesHeader', [$this, 'EntriesHeader']);
+        $this->addValue('EntryAuthorCommonName', [$this, 'EntryAuthorCommonName']);
+        $this->addValue('EntryAuthorDisplayName', [$this, 'EntryAuthorDisplayName']);
+        $this->addValue('EntryAuthorEmail', [$this, 'EntryAuthorEmail']);
+        $this->addValue('EntryAuthorEmailMD5', [$this, 'EntryAuthorEmailMD5']);
+        $this->addValue('EntryAuthorID', [$this, 'EntryAuthorID']);
+        $this->addValue('EntryAuthorLink', [$this, 'EntryAuthorLink']);
+        $this->addValue('EntryAuthorURL', [$this, 'EntryAuthorURL']);
+        $this->addValue('EntryBasename', [$this, 'EntryBasename']);
+        $this->addValue('EntryCategory', [$this, 'EntryCategory']);
+        $this->addValue('EntryCategoryDescription', [$this, 'EntryCategoryDescription']);
+        $this->addBlock('EntryCategoriesBreadcrumb', [$this, 'EntryCategoriesBreadcrumb']);
+        $this->addValue('EntryCategoryID', [$this, 'EntryCategoryID']);
+        $this->addValue('EntryCategoryURL', [$this, 'EntryCategoryURL']);
+        $this->addValue('EntryCategoryShortURL', [$this, 'EntryCategoryShortURL']);
+        $this->addValue('EntryCommentCount', [$this, 'EntryCommentCount']);
+        $this->addValue('EntryContent', [$this, 'EntryContent']);
+        $this->addValue('EntryDate', [$this, 'EntryDate']);
+        $this->addValue('EntryExcerpt', [$this, 'EntryExcerpt']);
+        $this->addValue('EntryFeedID', [$this, 'EntryFeedID']);
+        $this->addValue('EntryFirstImage', [$this, 'EntryFirstImage']);
+        $this->addValue('EntryID', [$this, 'EntryID']);
+        $this->addBlock('EntryIf', [$this, 'EntryIf']);
+        $this->addBlock('EntryIfContentCut', [$this, 'EntryIfContentCut']);
+        $this->addValue('EntryIfFirst', [$this, 'EntryIfFirst']);
+        $this->addValue('EntryIfOdd', [$this, 'EntryIfOdd']);
+        $this->addValue('EntryIfSelected', [$this, 'EntryIfSelected']);
+        $this->addValue('EntryLang', [$this, 'EntryLang']);
+        $this->addBlock('EntryNext', [$this, 'EntryNext']);
+        $this->addValue('EntryPingCount', [$this, 'EntryPingCount']);
+        $this->addValue('EntryPingData', [$this, 'EntryPingData']);
+        $this->addValue('EntryPingLink', [$this, 'EntryPingLink']);
+        $this->addBlock('EntryPrevious', [$this, 'EntryPrevious']);
+        $this->addValue('EntryTitle', [$this, 'EntryTitle']);
+        $this->addValue('EntryTime', [$this, 'EntryTime']);
+        $this->addValue('EntryURL', [$this, 'EntryURL']);
 
         # Languages
-        $this->addBlock('Languages', array($this, 'Languages'));
-        $this->addBlock('LanguagesHeader', array($this, 'LanguagesHeader'));
-        $this->addBlock('LanguagesFooter', array($this, 'LanguagesFooter'));
-        $this->addValue('LanguageCode', array($this, 'LanguageCode'));
-        $this->addBlock('LanguageIfCurrent', array($this, 'LanguageIfCurrent'));
-        $this->addValue('LanguageURL', array($this, 'LanguageURL'));
+        $this->addBlock('Languages', [$this, 'Languages']);
+        $this->addBlock('LanguagesHeader', [$this, 'LanguagesHeader']);
+        $this->addBlock('LanguagesFooter', [$this, 'LanguagesFooter']);
+        $this->addValue('LanguageCode', [$this, 'LanguageCode']);
+        $this->addBlock('LanguageIfCurrent', [$this, 'LanguageIfCurrent']);
+        $this->addValue('LanguageURL', [$this, 'LanguageURL']);
 
         # Pagination
-        $this->addBlock('Pagination', array($this, 'Pagination'));
-        $this->addValue('PaginationCounter', array($this, 'PaginationCounter'));
-        $this->addValue('PaginationCurrent', array($this, 'PaginationCurrent'));
-        $this->addBlock('PaginationIf', array($this, 'PaginationIf'));
-        $this->addValue('PaginationURL', array($this, 'PaginationURL'));
+        $this->addBlock('Pagination', [$this, 'Pagination']);
+        $this->addValue('PaginationCounter', [$this, 'PaginationCounter']);
+        $this->addValue('PaginationCurrent', [$this, 'PaginationCurrent']);
+        $this->addBlock('PaginationIf', [$this, 'PaginationIf']);
+        $this->addValue('PaginationURL', [$this, 'PaginationURL']);
 
         # Trackbacks
-        $this->addValue('PingBlogName', array($this, 'PingBlogName'));
-        $this->addValue('PingContent', array($this, 'PingContent'));
-        $this->addValue('PingDate', array($this, 'PingDate'));
-        $this->addValue('PingEntryTitle', array($this, 'PingEntryTitle'));
-        $this->addValue('PingFeedID', array($this, 'PingFeedID'));
-        $this->addValue('PingID', array($this, 'PingID'));
-        $this->addValue('PingIfFirst', array($this, 'PingIfFirst'));
-        $this->addValue('PingIfOdd', array($this, 'PingIfOdd'));
-        $this->addValue('PingIP', array($this, 'PingIP'));
-        $this->addValue('PingNoFollow', array($this, 'PingNoFollow'));
-        $this->addValue('PingOrderNumber', array($this, 'PingOrderNumber'));
-        $this->addValue('PingPostURL', array($this, 'PingPostURL'));
-        $this->addBlock('Pings', array($this, 'Pings'));
-        $this->addBlock('PingsFooter', array($this, 'PingsFooter'));
-        $this->addBlock('PingsHeader', array($this, 'PingsHeader'));
-        $this->addValue('PingTime', array($this, 'PingTime'));
-        $this->addValue('PingTitle', array($this, 'PingTitle'));
-        $this->addValue('PingAuthorURL', array($this, 'PingAuthorURL'));
+        $this->addValue('PingBlogName', [$this, 'PingBlogName']);
+        $this->addValue('PingContent', [$this, 'PingContent']);
+        $this->addValue('PingDate', [$this, 'PingDate']);
+        $this->addValue('PingEntryTitle', [$this, 'PingEntryTitle']);
+        $this->addValue('PingFeedID', [$this, 'PingFeedID']);
+        $this->addValue('PingID', [$this, 'PingID']);
+        $this->addValue('PingIfFirst', [$this, 'PingIfFirst']);
+        $this->addValue('PingIfOdd', [$this, 'PingIfOdd']);
+        $this->addValue('PingIP', [$this, 'PingIP']);
+        $this->addValue('PingNoFollow', [$this, 'PingNoFollow']);
+        $this->addValue('PingOrderNumber', [$this, 'PingOrderNumber']);
+        $this->addValue('PingPostURL', [$this, 'PingPostURL']);
+        $this->addBlock('Pings', [$this, 'Pings']);
+        $this->addBlock('PingsFooter', [$this, 'PingsFooter']);
+        $this->addBlock('PingsHeader', [$this, 'PingsHeader']);
+        $this->addValue('PingTime', [$this, 'PingTime']);
+        $this->addValue('PingTitle', [$this, 'PingTitle']);
+        $this->addValue('PingAuthorURL', [$this, 'PingAuthorURL']);
 
         # System
-        $this->addValue('SysBehavior', array($this, 'SysBehavior'));
-        $this->addBlock('SysIf', array($this, 'SysIf'));
-        $this->addBlock('SysIfCommentPublished', array($this, 'SysIfCommentPublished'));
-        $this->addBlock('SysIfCommentPending', array($this, 'SysIfCommentPending'));
-        $this->addBlock('SysIfFormError', array($this, 'SysIfFormError'));
-        $this->addValue('SysFeedSubtitle', array($this, 'SysFeedSubtitle'));
-        $this->addValue('SysFormError', array($this, 'SysFormError'));
-        $this->addValue('SysPoweredBy', array($this, 'SysPoweredBy'));
-        $this->addValue('SysSearchString', array($this, 'SysSearchString'));
-        $this->addValue('SysSelfURI', array($this, 'SysSelfURI'));
+        $this->addValue('SysBehavior', [$this, 'SysBehavior']);
+        $this->addBlock('SysIf', [$this, 'SysIf']);
+        $this->addBlock('SysIfCommentPublished', [$this, 'SysIfCommentPublished']);
+        $this->addBlock('SysIfCommentPending', [$this, 'SysIfCommentPending']);
+        $this->addBlock('SysIfFormError', [$this, 'SysIfFormError']);
+        $this->addValue('SysFeedSubtitle', [$this, 'SysFeedSubtitle']);
+        $this->addValue('SysFormError', [$this, 'SysFormError']);
+        $this->addValue('SysPoweredBy', [$this, 'SysPoweredBy']);
+        $this->addValue('SysSearchString', [$this, 'SysSearchString']);
+        $this->addValue('SysSelfURI', [$this, 'SysSelfURI']);
 
         # Generic
-        $this->addValue('else', array($this, 'GenericElse'));
+        $this->addValue('else', [$this, 'GenericElse']);
     }
 
@@ -243,5 +243,5 @@
 
         # --BEHAVIOR-- templateInsideBlock
-        $this->core->callBehavior('templateInsideBlock', $this->core, $this->current_tag, $attr, array(&$content));
+        $this->core->callBehavior('templateInsideBlock', $this->core, $this->current_tag, $attr, [&$content]);
 
         $res .= parent::compileBlockNode($this->current_tag, $attr, $content);
@@ -269,12 +269,12 @@
     }
 
-    public function getFilters($attr, $default = array())
+    public function getFilters($attr, $default = [])
     {
         if (!is_array($attr) && !($attr instanceof arrayObject)) {
-            $attr = array();
+            $attr = [];
         }
 
         $p = array_merge(
-            array(
+            [
                 0             => null,
                 'encode_xml'  => 0,
@@ -287,5 +287,5 @@
                 'capitalize'  => 0,
                 'strip_tags'  => 0
-            ),
+            ],
             $default
         );
@@ -318,10 +318,10 @@
     public function getSortByStr($attr, $table = null)
     {
-        $res = array();
+        $res = [];
 
         $default_order = 'desc';
 
-        $default_alias = array(
-            'post'    => array(
+        $default_alias = [
+            'post'    => [
                 'title'     => 'post_title',
                 'selected'  => 'post_selected',
@@ -331,11 +331,11 @@
                 'comment'   => 'nb_comment',
                 'trackback' => 'nb_trackback'
-            ),
-            'comment' => array(
+            ],
+            'comment' => [
                 'author' => 'comment_author',
                 'date'   => 'comment_dt',
                 'id'     => 'comment_id'
-            )
-        );
+            ]
+        ];
 
         $alias = new ArrayObject();
@@ -349,8 +349,8 @@
             foreach ($alias as $k => $v) {
                 if (!is_array($v)) {
-                    $alias[$k] = array();
+                    $alias[$k] = [];
                 }
                 if (!isset($default_alias[$k]) || !is_array($default_alias[$k])) {
-                    $default_alias[$k] = array();
+                    $default_alias[$k] = [];
                 }
                 $default_alias[$k] = array_merge($default_alias[$k], $alias[$k]);
@@ -474,5 +474,5 @@
     public function Archives($attr, $content)
     {
-        $p = "if (!isset(\$params)) \$params = array();\n";
+        $p = "if (!isset(\$params)) \$params = [];\n";
         $p .= "\$params['type'] = 'month';\n";
         if (isset($attr['type'])) {
@@ -507,5 +507,5 @@
         $res .= $p;
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Archives", "method" => "blog::getDates"),
+            ["tag" => "Archives", "method" => "blog::getDates"],
             $attr, $content);
         $res .= '$_ctx->archives = $core->blog->getDates($params); unset($params);' . "\n";
@@ -587,9 +587,9 @@
         return $this->displayCounter(
             sprintf($f, '$_ctx->archives->nb_post'),
-            array(
+            [
                 'none' => 'no archive',
                 'one'  => 'one archive',
                 'more' => '%d archives'
-            ),
+            ],
             $attr,
             true
@@ -607,5 +607,5 @@
     public function ArchiveNext($attr, $content)
     {
-        $p = "if (!isset(\$params)) \$params = array();\n";
+        $p = "if (!isset(\$params)) \$params = [];\n";
         $p .= "\$params['type'] = 'month';\n";
         if (isset($attr['type'])) {
@@ -626,5 +626,5 @@
         $res .= $p;
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "ArchiveNext", "method" => "blog::getDates"),
+            ["tag" => "ArchiveNext", "method" => "blog::getDates"],
             $attr, $content);
         $res .= '$_ctx->archives = $core->blog->getDates($params); unset($params);' . "\n";
@@ -647,5 +647,5 @@
     public function ArchivePrevious($attr, $content)
     {
-        $p = 'if (!isset($params)) $params = array();';
+        $p = 'if (!isset($params)) $params = [];';
         $p .= "\$params['type'] = 'month';\n";
         if (isset($attr['type'])) {
@@ -665,5 +665,5 @@
         $res = "<?php\n";
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "ArchivePrevious", "method" => "blog::getDates"),
+            ["tag" => "ArchivePrevious", "method" => "blog::getDates"],
             $attr, $content);
         $res .= $p;
@@ -900,5 +900,5 @@
     public function Categories($attr, $content)
     {
-        $p = "if (!isset(\$params)) \$params = array();\n";
+        $p = "if (!isset(\$params)) \$params = [];\n";
 
         if (isset($attr['url'])) {
@@ -921,5 +921,5 @@
         $res .= $p;
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Categories", "method" => "blog::getCategories"),
+            ["tag" => "Categories", "method" => "blog::getCategories"],
             $attr, $content);
         $res .= '$_ctx->categories = $core->blog->getCategories($params);' . "\n";
@@ -1095,9 +1095,9 @@
         return $this->displayCounter(
             sprintf($f, '$_ctx->categories->nb_post'),
-            array(
+            [
                 'none' => 'No post',
                 'one'  => 'One post',
                 'more' => '%d posts'
-            ),
+            ],
             $attr,
             true
@@ -1153,11 +1153,11 @@
                 // standard pagination, set offset
                 $p .= "if ((\$core->url->type == 'default') || (\$core->url->type == 'default-page')) {\n";
-                $p .= "    \$params['limit'] = array((\$_page_number == 1 ? 0 : (\$_page_number - 2) * \$nb_entry_per_page + \$nb_entry_first_page),\$params['limit']);\n";
+                $p .= "    \$params['limit'] = [(\$_page_number == 1 ? 0 : (\$_page_number - 2) * \$nb_entry_per_page + \$nb_entry_first_page),\$params['limit']];\n";
                 $p .= "} else {\n";
-                $p .= "    \$params['limit'] = array((\$_page_number - 1) * \$nb_entry_per_page,\$params['limit']);\n";
+                $p .= "    \$params['limit'] = [(\$_page_number - 1) * \$nb_entry_per_page,\$params['limit']];\n";
                 $p .= "}\n";
             } else {
                 // no pagination, get all posts from 0 to limit
-                $p .= "\$params['limit'] = array(0, \$params['limit']);\n";
+                $p .= "\$params['limit'] = [0, \$params['limit']];\n";
             }
         }
@@ -1243,5 +1243,5 @@
         $res .= $p;
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Entries", "method" => "blog::getPosts"),
+            ["tag" => "Entries", "method" => "blog::getPosts"],
             $attr, $content);
         $res .= '$_ctx->post_params = $params;' . "\n";
@@ -1894,9 +1894,9 @@
         return $this->displayCounter(
             $operation,
-            array(
+            [
                 'none' => 'no comments',
                 'one'  => 'one comment',
                 'more' => '%d comments'
-            ),
+            ],
             $attr,
             false
@@ -1916,9 +1916,9 @@
         return $this->displayCounter(
             '$_ctx->posts->nb_trackback',
-            array(
+            [
                 'none' => 'no trackbacks',
                 'one'  => 'one trackback',
                 'more' => '%d trackbacks'
-            ),
+            ],
             $attr,
             false
@@ -1953,5 +1953,5 @@
     public function Languages($attr, $content)
     {
-        $p = "if (!isset(\$params)) \$params = array();\n";
+        $p = "if (!isset(\$params)) \$params = [];\n";
 
         if (isset($attr['lang'])) {
@@ -1967,5 +1967,5 @@
         $res .= $p;
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Languages", "method" => "blog::getLangs"),
+            ["tag" => "Languages", "method" => "blog::getLangs"],
             $attr, $content);
         $res .= '$_ctx->langs = $core->blog->getLangs($params); unset($params);' . "\n";
@@ -2044,5 +2044,5 @@
         $p .= '$params = $_ctx->post_params;' . "\n";
         $p .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Pagination", "method" => "blog::getPosts"),
+            ["tag" => "Pagination", "method" => "blog::getPosts"],
             $attr, $content);
         $p .= '$_ctx->pagination = $core->blog->getPosts($params,true); unset($params);' . "\n";
@@ -2092,5 +2092,5 @@
     public function PaginationIf($attr, $content)
     {
-        $if = array();
+        $if = [];
 
         if (isset($attr['start'])) {
@@ -2194,5 +2194,5 @@
         $res = "<?php\n";
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Comments", "method" => "blog::getComments"),
+            ["tag" => "Comments", "method" => "blog::getComments"],
             $attr, $content);
         $res .= $p;
@@ -2373,5 +2373,5 @@
     public function CommentIf($attr, $content)
     {
-        $if      = array();
+        $if      = [];
         $is_ping = null;
 
@@ -2806,5 +2806,5 @@
         $res .= $p;
         $res .= $this->core->callBehavior("templatePrepareParams",
-            array("tag" => "Pings", "method" => "blog::getComments"),
+            ["tag" => "Pings", "method" => "blog::getComments"],
             $attr, $content);
         $res .= '$_ctx->pings = $core->blog->getComments($params); unset($params);' . "\n";
Index: inc/public/lib.tpl.context.php
===================================================================
--- inc/public/lib.tpl.context.php	(revision 3832)
+++ inc/public/lib.tpl.context.php	(revision 3874)
@@ -12,5 +12,5 @@
 class context
 {
-    public $stack = array();
+    public $stack = [];
 
     public function __set($name, $var)
@@ -105,5 +105,5 @@
         return self::global_filters(
             $str,
-            array(0       => null,
+            [0       => null,
                 'encode_xml'  => $encode_xml,
                 'remove_html' => $remove_html,
@@ -112,5 +112,5 @@
                 'upper_case'  => ($upper_case == 1 ? 1 : 0),
                 'capitalize'  => ($upper_case == 2 ? 1 : 0),
-                'encode_url'  => $encode_url),
+                'encode_url'  => $encode_url],
             $tag);
     }
@@ -149,5 +149,5 @@
     public static function global_filters($str, $args, $tag = '')
     {
-        $filters = array(
+        $filters = [
             'strip_tags',                             // Removes HTML tags (mono line)
             'remove_html',                            // Removes HTML tags
@@ -156,5 +156,5 @@
             'lower_case', 'capitalize', 'upper_case', // Case transformations
             'encode_url'                             // URL encode (as for insert in query string)
-        );
+        ];
 
         $args[0] = &$str;
@@ -209,5 +209,5 @@
     public static function strip_tags($str)
     {
-        return trim(preg_replace('/ {2,}/', ' ', str_replace(array("\r", "\n", "\t"), ' ', html::clean($str))));
+        return trim(preg_replace('/ {2,}/', ' ', str_replace(["\r", "\n", "\t"], ' ', html::clean($str))));
     }
 
@@ -336,5 +336,5 @@
     public static function robotsPolicy($base, $over)
     {
-        $pol  = array('INDEX' => 'INDEX', 'FOLLOW' => 'FOLLOW', 'ARCHIVE' => 'ARCHIVE');
+        $pol  = ['INDEX' => 'INDEX', 'FOLLOW' => 'FOLLOW', 'ARCHIVE' => 'ARCHIVE'];
         $base = array_flip(preg_split('/\s*,\s*/', $base));
         $over = array_flip(preg_split('/\s*,\s*/', $over));
@@ -359,5 +359,5 @@
     public static function getSmilies($blog)
     {
-        $path = array();
+        $path = [];
         if (isset($GLOBALS['__theme'])) {
             $path[] = $GLOBALS['__theme'];
@@ -370,5 +370,5 @@
         $base_url   = $blog->settings->system->themes_url . '/%s/smilies/';
 
-        $res = array();
+        $res = [];
 
         foreach ($path as $t) {
@@ -385,5 +385,5 @@
         $def = file($f);
 
-        $res = array();
+        $res = [];
         foreach ($def as $v) {
             $v = trim($v);
@@ -448,5 +448,5 @@
         #
         $index  = 0;
-        $tokens = array();
+        $tokens = [];
 
         $match = '(?s:<!(?:--.*?--\s*)+>)|' . # comment
@@ -459,7 +459,7 @@
         foreach ($parts as $part) {
             if (++$index % 2 && $part != '') {
-                $tokens[] = array('text', $part);
+                $tokens[] = ['text', $part];
             } else {
-                $tokens[] = array('tag', $part);
+                $tokens[] = ['tag', $part];
             }
 
Index: inc/public/lib.urlhandlers.php
===================================================================
--- inc/public/lib.urlhandlers.php	(revision 3731)
+++ inc/public/lib.urlhandlers.php	(revision 3874)
@@ -33,5 +33,5 @@
     {
         $core = &$GLOBALS['core'];
-        $t    = new ArrayObject(array($type, $url, $representation, $handler));
+        $t    = new ArrayObject([$type, $url, $representation, $handler]);
         $core->callBehavior("publicRegisterURL", $t);
         parent::register($t[0], $t[1], $t[2], $t[3]);
@@ -241,5 +241,5 @@
             $GLOBALS['_search'] = !empty($_GET['q']) ? rawurldecode($_GET['q']) : '';
             if ($GLOBALS['_search']) {
-                $params = new ArrayObject(array('search' => $GLOBALS['_search']));
+                $params = new ArrayObject(['search' => $GLOBALS['_search']]);
                 $core->callBehavior('publicBeforeSearchCount', $params);
                 $GLOBALS['_search_count'] = $core->blog->getPosts($params, true)->f(0);
@@ -256,6 +256,6 @@
 
         $n      = self::getPageNumber($args);
-        $params = new ArrayObject(array(
-            'lang' => $args));
+        $params = new ArrayObject([
+            'lang' => $args]);
 
         $core->callBehavior('publicLangBeforeGetLangs', $params, $args);
@@ -286,8 +286,8 @@
             self::p404();
         } else {
-            $params = new ArrayObject(array(
+            $params = new ArrayObject([
                 'cat_url'       => $args,
                 'post_type'     => 'post',
-                'without_empty' => false));
+                'without_empty' => false]);
 
             $core->callBehavior('publicCategoryBeforeGetCategories', $params, $args);
@@ -317,8 +317,8 @@
             self::serveDocument('archive.html');
         } elseif (preg_match('|^/([0-9]{4})/([0-9]{2})$|', $args, $m)) {
-            $params = new ArrayObject(array(
+            $params = new ArrayObject([
                 'year'  => $m[1],
                 'month' => $m[2],
-                'type'  => 'month'));
+                'type'  => 'month']);
 
             $core->callBehavior('publicArchiveBeforeGetDates', $params, $args);
@@ -349,6 +349,6 @@
             $core->blog->withoutPassword(false);
 
-            $params = new ArrayObject(array(
-                'post_url' => $args));
+            $params = new ArrayObject([
+                'post_url' => $args]);
 
             $core->callBehavior('publicPostBeforeGetPosts', $params, $args);
@@ -380,10 +380,10 @@
                         $pwd_cookie = json_decode($_COOKIE['dc_passwd']);
                         if ($pwd_cookie === null) {
-                            $pwd_cookie = array();
+                            $pwd_cookie = [];
                         } else {
                             $pwd_cookie = (array) $pwd_cookie;
                         }
                     } else {
-                        $pwd_cookie = array();
+                        $pwd_cookie = [];
                     }
 
@@ -542,5 +542,5 @@
 
         if (preg_match('!^([a-z]{2}(-[a-z]{2})?)/(.*)$!', $args, $m)) {
-            $params = new ArrayObject(array('lang' => $m[1]));
+            $params = new ArrayObject(['lang' => $m[1]]);
 
             $args = $m[3];
@@ -582,7 +582,7 @@
 
         if ($cat_url) {
-            $params = new ArrayObject(array(
+            $params = new ArrayObject([
                 'cat_url'   => $cat_url,
-                'post_type' => 'post'));
+                'post_type' => 'post']);
 
             $core->callBehavior('publicFeedBeforeGetCategories', $params, $args);
@@ -598,7 +598,7 @@
             $subtitle = ' - ' . $_ctx->categories->cat_title;
         } elseif ($post_id) {
-            $params = new ArrayObject(array(
+            $params = new ArrayObject([
                 'post_id'   => $post_id,
-                'post_type' => ''));
+                'post_type' => '']);
 
             $core->callBehavior('publicFeedBeforeGetPosts', $params, $args);
@@ -650,5 +650,5 @@
 
             if (!is_array($args)) {
-                $args = array();
+                $args = [];
             }
 
@@ -668,5 +668,5 @@
         $core = &$GLOBALS['core'];
         if (!is_array($args)) {
-            $args = array();
+            $args = [];
         }
 
Index: inc/public/prepend.php
===================================================================
--- inc/public/prepend.php	(revision 3731)
+++ inc/public/prepend.php	(revision 3874)
@@ -130,10 +130,10 @@
 # Prepare the HTTP cache thing
 $mod_files = get_included_files();
-$mod_ts    = array();
+$mod_ts    = [];
 $mod_ts[]  = $core->blog->upddt;
 
-$__theme_tpl_path = array(
+$__theme_tpl_path = [
     $core->blog->themes_path . '/' . $__theme . '/tpl'
-);
+];
 if ($__parent_theme) {
     $__theme_tpl_path[] = $core->blog->themes_path . '/' . $__parent_theme . '/tpl';
Index: inc/public/rs.extension.php
===================================================================
--- inc/public/rs.extension.php	(revision 3731)
+++ inc/public/rs.extension.php	(revision 3874)
@@ -10,6 +10,6 @@
 if (!defined('DC_RC_PATH')) {return;}
 
-$core->addBehavior('coreBlogGetPosts', array('rsExtendPublic', 'coreBlogGetPosts'));
-$core->addBehavior('coreBlogGetComments', array('rsExtendPublic', 'coreBlogGetComments'));
+$core->addBehavior('coreBlogGetPosts', ['rsExtendPublic', 'coreBlogGetPosts']);
+$core->addBehavior('coreBlogGetComments', ['rsExtendPublic', 'coreBlogGetComments']);
 
 class rsExtendPublic
