'$themename',"; $themedef .= "'dirName' => '$themename',"; $themedef .= "'description' => '$themename',"; $themedef .= "'version' => array('regex_matches' => array('.*')),"; $themedef .= ");"; sugar_file_put_contents("themes/$themename/themedef.php",$themedef); self::$_createdThemes[] = $themename; SugarThemeRegistry::buildRegistry(); return $themename; } public static function createAnonymousOldTheme() { $themename = 'TestTheme'.mt_rand(); sugar_mkdir("themes/$themename/images",null,true); sugar_mkdir("themes/$themename/css",null,true); sugar_mkdir("themes/$themename/js",null,true); sugar_mkdir("themes/$themename/tpls",null,true); sugar_file_put_contents("themes/$themename/css/style.css","h2 { display: inline; }"); sugar_file_put_contents("themes/$themename/css/yui.css",".yui { display: inline; }"); sugar_file_put_contents("themes/$themename/js/style.js",'var dog = "cat";'); sugar_touch("themes/$themename/images/Accounts.gif"); sugar_touch("themes/$themename/images/fonts.big.icon.gif"); sugar_touch("themes/$themename/tpls/header.tpl"); $themedef = " '$themename',"; $themedef .= "'dirName' => '$themename',"; $themedef .= "'description' => '$themename',"; $themedef .= "'version' => array('exact_matches' => array('5.5.1')),"; $themedef .= ");"; sugar_file_put_contents("themes/$themename/themedef.php",$themedef); self::$_createdThemes[] = $themename; SugarThemeRegistry::buildRegistry(); return $themename; } public static function createAnonymousCustomTheme( $themename = '' ) { if ( empty($themename) ) $themename = 'TestThemeCustom'.mt_rand(); create_custom_directory("themes/$themename/images/"); create_custom_directory("themes/$themename/css/"); create_custom_directory("themes/$themename/js/"); sugar_touch("custom/themes/$themename/css/style.css"); sugar_touch("custom/themes/$themename/js/style.js"); sugar_touch("custom/themes/$themename/images/Accounts.gif"); sugar_touch("custom/themes/$themename/images/fonts.big.icon.gif"); $themedef = " 'custom $themename',"; $themedef .= "'dirName' => '$themename',"; $themedef .= "'description' => 'custom $themename',"; $themedef .= "'version' => array('regex_matches' => array('.*')),"; $themedef .= ");"; sugar_file_put_contents("custom/themes/$themename/themedef.php",$themedef); self::$_createdThemes[] = $themename; SugarThemeRegistry::buildRegistry(); return $themename; } public static function createAnonymousChildTheme( $parentTheme ) { $themename = 'TestThemeChild'.mt_rand(); sugar_mkdir("themes/$themename/images",null,true); sugar_mkdir("themes/$themename/css",null,true); sugar_mkdir("themes/$themename/js",null,true); sugar_file_put_contents("themes/$themename/css/style.css","h3 { display: inline; }"); sugar_file_put_contents("themes/$themename/css/yui.css",".yui { display: inline; }"); sugar_file_put_contents("themes/$themename/js/style.js",'var bird = "frog";'); $themedef = " '$themename',"; $themedef .= "'dirName' => '$themename',"; $themedef .= "'parentTheme' => '".$parentTheme."',"; $themedef .= "'description' => '$themename',"; $themedef .= "'version' => array('regex_matches' => array('.*')),"; $themedef .= ");"; sugar_file_put_contents("themes/$themename/themedef.php",$themedef); self::$_createdThemes[] = $themename; SugarThemeRegistry::buildRegistry(); return $themename; } public static function createAnonymousRTLTheme() { $themename = 'TestTheme'.mt_rand(); sugar_mkdir("themes/$themename/images",null,true); sugar_mkdir("themes/$themename/css",null,true); sugar_mkdir("themes/$themename/js",null,true); sugar_mkdir("themes/$themename/tpls",null,true); sugar_file_put_contents("themes/$themename/css/style.css","h2 { display: inline; }"); sugar_file_put_contents("themes/$themename/css/yui.css",".yui { display: inline; }"); sugar_file_put_contents("themes/$themename/js/style.js",'var dog = "cat";'); sugar_touch("themes/$themename/images/Accounts.gif"); sugar_touch("themes/$themename/images/fonts.big.icon.gif"); sugar_touch("themes/$themename/tpls/header.tpl"); $themedef = " '$themename',"; $themedef .= "'dirName' => '$themename',"; $themedef .= "'description' => '$themename',"; $themedef .= "'directionality' => 'rtl',"; $themedef .= "'version' => array('regex_matches' => array('.*')),"; $themedef .= ");"; sugar_file_put_contents("themes/$themename/themedef.php",$themedef); self::$_createdThemes[] = $themename; SugarThemeRegistry::buildRegistry(); return $themename; } public static function removeAllCreatedAnonymousThemes() { foreach (self::getCreatedThemeNames() as $name ) { if ( is_dir('themes/'.$name) ) rmdir_recursive('themes/'.$name); if ( is_dir('custom/themes/'.$name) ) rmdir_recursive('custom/themes/'.$name); if ( is_dir(sugar_cached('themes/').$name) ) rmdir_recursive(sugar_cached('themes/').$name); } SugarThemeRegistry::buildRegistry(); } public static function getCreatedThemeNames() { return self::$_createdThemes; } }