diff --git a/code/controllers/CMSMain.php b/code/controllers/CMSMain.php
index 737b14cf..9ca97dd5 100644
--- a/code/controllers/CMSMain.php
+++ b/code/controllers/CMSMain.php
@@ -57,7 +57,7 @@ class CMSMain extends LeftAndMain implements CurrentPageIdentifier, PermissionPr
parent::init();
Requirements::css(CMS_DIR . '/css/screen.css');
- Requirements::customCSS($this->generateTreeStylingCSS());
+ Requirements::customCSS($this->generatePageIconsCss());
Requirements::combine_files(
'cmsmain.js',
@@ -405,7 +405,7 @@ class CMSMain extends LeftAndMain implements CurrentPageIdentifier, PermissionPr
*
* @return String CSS
*/
- function generateTreeStylingCSS() {
+ public function generatePageIconsCss() {
$css = '';
$classes = ClassInfo::subclassesFor('SiteTree');
@@ -427,20 +427,14 @@ class CMSMain extends LeftAndMain implements CurrentPageIdentifier, PermissionPr
$baseFilename = $iconPathInfo['dirname'] . '/' . $iconPathInfo['filename'];
$fileExtension = $iconPathInfo['extension'];
+ $selector = ".page-icon.class-$class, li.class-$class > a .jstree-pageicon";
+
if(Director::fileExists($iconFile)) {
- $css .= sprintf(
- "li.class-%s > a .jstree-pageicon { background: transparent url('%s') 0 0 no-repeat; }\n",
- $class, $iconFile
- );
+ $css .= "$selector { background: transparent url('$iconFile') 0 0 no-repeat; }\n";
} else {
// Support for more sophisticated rules, e.g. sprited icons
- $css .= sprintf(
- "li.class-%s > a .jstree-pageicon { %s }\n",
- $class, $iconFile
- );
+ $css .= "$selector { $iconFile }\n";
}
-
-
}
return $css;
diff --git a/code/controllers/CMSPageAddController.php b/code/controllers/CMSPageAddController.php
index ebe58020..5684ae29 100644
--- a/code/controllers/CMSPageAddController.php
+++ b/code/controllers/CMSPageAddController.php
@@ -20,7 +20,7 @@ class CMSPageAddController extends CMSPageEditController {
$pageTypes = array();
foreach($this->PageTypes() as $type) {
- $html = sprintf('%s%s',
+ $html = sprintf('%s%s',
$type->getField('ClassName'),
$type->getField('AddAction'),
$type->getField('Description')
diff --git a/code/model/RedirectorPage.php b/code/model/RedirectorPage.php
index 102ba68f..964ccc4a 100644
--- a/code/model/RedirectorPage.php
+++ b/code/model/RedirectorPage.php
@@ -6,9 +6,7 @@
* @subpackage content
*/
class RedirectorPage extends Page {
-
- static $icon = "cms/images/treeicons/page-shortcut-file.gif";
-
+
static $description = 'Redirects to a different internal page';
static $db = array(
diff --git a/code/model/VirtualPage.php b/code/model/VirtualPage.php
index ff35d7d7..6c2f2cbd 100644
--- a/code/model/VirtualPage.php
+++ b/code/model/VirtualPage.php
@@ -6,9 +6,7 @@
* @package cms
*/
class VirtualPage extends Page {
-
- static $icon = "cms/images/treeicons/page-shortcut-gold-file.gif";
-
+
static $description = 'Displays the content of another page';
public static $virtualFields;