From f82430dd3b92a2e37a58108fa81cd0bc6255fb00 Mon Sep 17 00:00:00 2001 From: plegall Date: Wed, 17 Mar 2010 00:48:38 +0000 Subject: feature 1514: new screen to manage installed themes; activate, deactivate, delete, set as default. plugins.class.php was merged back to a state it doesn't manage themes at all. themes.class.php was created instead, from a duplication of plugins.class.php and strongly modified then. feature 1507: the display of available themes is now much more "graphic". git-svn-id: http://piwigo.org/svn/trunk@5153 68402e56-0260-453c-a942-63ccdbb3a9ee --- include/config_default.inc.php | 3 +++ include/constants.php | 6 +++++- include/functions.inc.php | 19 +++++++++++-------- 3 files changed, 19 insertions(+), 9 deletions(-) (limited to 'include') diff --git a/include/config_default.inc.php b/include/config_default.inc.php index f9be46f4b..00dadddf5 100644 --- a/include/config_default.inc.php +++ b/include/config_default.inc.php @@ -768,4 +768,7 @@ $conf['upload_dir'] = PHPWG_ROOT_PATH.'upload'; // where should the user be guided when there is no photo in his gallery yet? $conf['no_photo_yet_url'] = 'admin.php?page=photos_add'; + +// directory with themes inside +$conf['themes_dir'] = PHPWG_ROOT_PATH.'themes'; ?> diff --git a/include/constants.php b/include/constants.php index 7e429a91c..ea5378e94 100644 --- a/include/constants.php +++ b/include/constants.php @@ -24,7 +24,9 @@ // Default settings define('PHPWG_VERSION', 'Colibri'); define('PHPWG_DEFAULT_LANGUAGE', 'en_UK'); -define('PHPWG_DEFAULT_TEMPLATE', 'yoga/Sylvia'); +define('PHPWG_DEFAULT_TEMPLATE', 'Sylvia'); + +define('PHPWG_THEMES_PATH', $conf['themes_dir'].'/'); // Required versions define('REQUIRED_PHP_VERSION', '5.0.0'); @@ -97,5 +99,7 @@ if (!defined('PLUGINS_TABLE')) define('PLUGINS_TABLE', $prefixeTable.'plugins'); if (!defined('OLD_PERMALINKS_TABLE')) define('OLD_PERMALINKS_TABLE', $prefixeTable.'old_permalinks'); +if (!defined('THEMES_TABLE')) + define('THEMES_TABLE', $prefixeTable.'themes'); ?> \ No newline at end of file diff --git a/include/functions.inc.php b/include/functions.inc.php index 18bad9d0e..0308efbf7 100644 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -713,21 +713,24 @@ function url_is_remote($url) */ function get_pwg_themes() { - global $conf; $themes = array(); - $template_dir = PHPWG_ROOT_PATH.'themes'; - - foreach (get_dirs($template_dir) as $theme) + $query = ' +SELECT + id, + name + FROM '.THEMES_TABLE.' + ORDER BY name ASC +;'; + $result = pwg_query($query); + while ($row = pwg_db_fetch_assoc($result)) { - if ( $theme != 'default' ) - { - array_push($themes, $theme); - } + $themes[ $row['id'] ] = $row['name']; } // plugins want remove some themes based on user status maybe? $themes = trigger_event('get_pwg_themes', $themes); + return $themes; } -- cgit v1.2.3