array(), // Unix name from filesystem 'theme_name' => array(), // Title 'theme_author' => array(), // Theme author's name 'theme_email' => array(), // Author's email address 'theme_url' => array(), // URL were you can download it from 'theme_version' => array(), // Version number of theme ); // Read directory "themes" $includes = getArrayFromDirectory('theme/', '', FALSE, TRUE, array('css', 'images')); // Walk through all entries and add it foreach ($includes as $inc) { // Get directory from it $dir = basename(dirname($inc)); // Is the theme active, then include it if (isThemeActive($dir)) { // Found a valid directory so let's load it's theme.php file loadInclude($inc); // Add found theme to array array_push($themes['theme_unix'] , $dir); array_push($themes['theme_name'] , $GLOBALS['theme_data']['name']); array_push($themes['theme_author'] , $GLOBALS['theme_data']['author']); array_push($themes['theme_email'] , $GLOBALS['theme_data']['email']); array_push($themes['theme_url'] , $GLOBALS['theme_data']['url']); array_push($themes['theme_version'], $GLOBALS['theme_data']['version']); } // END - if } // END - while // Remove last theme data unset($GLOBALS['theme_data']); // Sort array by Uni* name array_pk_sort($themes, array('theme_name')); // Generate output lines for the template $OUT = ''; foreach ($themes['theme_unix'] as $key => $unix) { $default = ''; if (getCurrentTheme() == $unix) { $default = ' checked="checked"'; } // END - if // Prepare content $content = array( 'unix' => $unix, 'default' => $default, 'theme_name' => $themes['theme_name'][$key], 'theme_email' => $themes['theme_email'][$key], 'theme_author' => $themes['theme_author'][$key], 'theme_url' => $themes['theme_url'][$key], 'theme_version' => $themes['theme_version'][$key] ); // Load row template $OUT .= loadTemplate('member_themes_row', TRUE, $content); } // END - foreach if (empty($OUT)) { // No themes found??? $OUT = ' ' . displayMessage('{--MEMBER_NO_THEMES_FOUND--}', TRUE) . ' '; } // END - if // Load template loadTemplate('member_themes', FALSE, $OUT); // [EOF] ?>