Орла
Области
Компаний
Пользователи
Галерея
Фиксированные новости
Орла
Отзывы о фирмах
Тарифы
Пользователи
Области
Банкоматы
Торговые точки
Доска объявлений
Курсы валют
Скидки
организации Орла
организации области
товары
сайты
сайты Орел
Данные
Разделы
Поиск
Поиск запросы
Статистика
Показы каталога организаций
Статистика клиенты
Пользователи
Сайты
Управление сайтом
Анкета
Аптеки
Афиша
Афиша новая
Баннеры
Бизнес >
Викторина
Голосование
Гость на сайте
Истории
Календарь событий
Каталоги >
Конкурс красоты
Конкурс аудио
Консультации
Меню
Новое на сайте
Новости >
Организации >
Программа ТВ
Публикации
Разделы сайта
Рассылка
Рестораны
Секрет фирмы >
Сервисы >
Ссылки
Тесты
Файловый менеджер
Форум
Фотогалерея
Обратная связь
Недвижимость
Новый год
Тексты
Пользователи
Юридический рейтинг
Отзывы на товары
Бан пользователей
Жалобы
Новые тесты
Коронавирус
Файловый менеджер
Имя файла
Theme_Manager.class.php
Содержимое
<?php /* vim: set expandtab sw=4 ts=4 sts=4: */ /** * * @version $Id$ */ /** * */ require_once './libraries/Theme.class.php'; /** * */ class PMA_Theme_Manager { /** * @var string path to theme folder * @protected */ var $_themes_path; /** * @var array available themes */ var $themes = array(); /** * @var string cookie name */ var $cookie_name = 'pma_theme'; /** * @var boolean */ var $per_server = false; /** * @var string name of active theme */ var $active_theme = ''; /** * @var object PMA_Theme active theme */ var $theme = null; /** * @var string */ var $theme_default = 'original'; function __construct() { $this->init(); } /** * sets path to folder containing the themes * * @param string $path path to themes folder * @return boolean success */ function setThemesPath($path) { if (! $this->_checkThemeFolder($path)) { return false; } $this->_themes_path = trim($path); return true; } /** * @public * @return string */ function getThemesPath() { return $this->_themes_path; } /** * sets if there are different themes per server * * @param boolean $per_server */ function setThemePerServer($per_server) { $this->per_server = (bool) $per_server; } function init() { $this->themes = array(); $this->theme_default = 'original'; $this->active_theme = ''; if (! $this->setThemesPath($GLOBALS['cfg']['ThemePath'])) { return false; } $this->setThemePerServer($GLOBALS['cfg']['ThemePerServer']); $this->loadThemes(); $this->theme = new PMA_Theme; if (! $this->checkTheme($GLOBALS['cfg']['ThemeDefault'])) { $GLOBALS['PMA_errors'][] = sprintf($GLOBALS['strThemeDefaultNotFound'], htmlspecialchars($GLOBALS['cfg']['ThemeDefault'])); trigger_error( sprintf($GLOBALS['strThemeDefaultNotFound'], htmlspecialchars($GLOBALS['cfg']['ThemeDefault'])), E_USER_WARNING); $GLOBALS['cfg']['ThemeDefault'] = false; } $this->theme_default = $GLOBALS['cfg']['ThemeDefault']; // check if user have a theme cookie if (! $this->getThemeCookie() || ! $this->setActiveTheme($this->getThemeCookie())) { // otherwise use default theme if ($GLOBALS['cfg']['ThemeDefault']) { $this->setActiveTheme($GLOBALS['cfg']['ThemeDefault']); } else { // or original theme $this->setActiveTheme('original'); } } } function checkConfig() { if ($this->_themes_path != trim($GLOBALS['cfg']['ThemePath']) || $this->theme_default != $GLOBALS['cfg']['ThemeDefault']) { $this->init(); } else { // at least the theme path needs to be checked every time for new // themes, as there is no other way at the moment to keep track of // new or removed themes $this->loadThemes(); } } function setActiveTheme($theme = null) { if (! $this->checkTheme($theme)) { $GLOBALS['PMA_errors'][] = sprintf($GLOBALS['strThemeNotFound'], htmlspecialchars($theme)); /* Following code can lead to path disclossure, because headers will be sent later */ /* trigger_error( sprintf($GLOBALS['strThemeNotFound'], htmlspecialchars($theme)), E_USER_WARNING);*/ return false; } $this->active_theme = $theme; $this->theme = $this->themes[$theme]; // need to set later //$this->setThemeCookie(); return true; } /** * @return string cookie name */ function getThemeCookieName() { // Allow different theme per server if (isset($GLOBALS['server']) && $this->per_server) { return $this->cookie_name . '-' . $GLOBALS['server']; } else { return $this->cookie_name; } } /** * returns name of theme stored in the cookie * @return string theme name from cookie */ function getThemeCookie() { if (isset($_COOKIE[$this->getThemeCookieName()])) { return $_COOKIE[$this->getThemeCookieName()]; } return false; } /** * save theme in cookie * * @uses PMA_setCookie(); * @uses PMA_Theme_Manager::getThemeCookieName() * @uses PMA_Theme_Manager::$theme * @uses PMA_Theme_Manager::$theme_default * @uses PMA_Theme::getId() */ function setThemeCookie() { PMA_setCookie($this->getThemeCookieName(), $this->theme->id, $this->theme_default); // force a change of a dummy session variable to avoid problems // with the caching of phpmyadmin.css.php $_SESSION['PMA_Config']->set('theme-update', $this->theme->id); return true; } /** * old PHP 4 constructor */ function PMA_Theme_Manager() { $this->__construct(); } /** * @private * @param string $folder * @return boolean */ /*private*/ function _checkThemeFolder($folder) { if (! is_dir($folder)) { $GLOBALS['PMA_errors'][] = sprintf($GLOBALS['strThemePathNotFound'], htmlspecialchars($folder)); trigger_error( sprintf($GLOBALS['strThemePathNotFound'], htmlspecialchars($folder)), E_USER_WARNING); return false; } return true; } /** * read all themes */ function loadThemes() { $this->themes = array(); if ($handleThemes = opendir($this->getThemesPath())) { // check for themes directory while (false !== ($PMA_Theme = readdir($handleThemes))) { if (array_key_exists($PMA_Theme, $this->themes)) { // this does nothing! //$this->themes[$PMA_Theme] = $this->themes[$PMA_Theme]; continue; } $new_theme = PMA_Theme::load($this->getThemesPath() . '/' . $PMA_Theme); if ($new_theme) { $new_theme->setId($PMA_Theme); $this->themes[$PMA_Theme] = $new_theme; } } // end get themes closedir($handleThemes); } else { trigger_error( 'phpMyAdmin-ERROR: cannot open themes folder: ' . $this->getThemesPath(), E_USER_WARNING); return false; } // end check for themes directory ksort($this->themes); return true; } /** * checks if given theme name is a known theme * * @param string $theme name fo theme to check for */ function checkTheme($theme) { if (! array_key_exists($theme, $this->themes)) { return false; } return true; } /** * returns HTML selectbox, with or without form enclsoed * * @param boolean $form wether enclosed by from tags or not */ function getHtmlSelectBox($form = true) { $select_box = ''; if ($form) { $select_box .= '<form name="setTheme" method="post" action="index.php"' .' target="_parent">'; $select_box .= PMA_generate_common_hidden_inputs(); } $theme_selected = FALSE; $theme_preview_path= './themes.php'; $theme_preview_href = '<a href="' . $theme_preview_path . '" target="themes" onclick="' . "window.open('" . $theme_preview_path . "','themes','left=10,top=20,width=510,height=350,scrollbars=yes,status=yes,resizable=yes');" . '">'; $select_box .= $theme_preview_href . $GLOBALS['strTheme'] . '</a>:' . "\n"; $select_box .= '<select name="set_theme" xml:lang="en" dir="ltr"' .' onchange="this.form.submit();" >'; foreach ($this->themes as $each_theme_id => $each_theme) { $select_box .= '<option value="' . $each_theme_id . '"'; if ($this->active_theme === $each_theme_id) { $select_box .= ' selected="selected"'; } $select_box .= '>' . htmlspecialchars($each_theme->getName()) . '</option>'; } $select_box .= '</select>'; if ($form) { $select_box .= '<noscript><input type="submit" value="' . $GLOBALS['strGo'] . '" /></noscript>'; $select_box .= '</form>'; } return $select_box; } /** * enables backward compatibility */ function makeBc() { $GLOBALS['theme'] = $this->theme->getId(); $GLOBALS['pmaThemePath'] = $this->theme->getPath(); $GLOBALS['pmaThemeImage'] = $this->theme->getImgPath(); /** * load layout file if exists */ if (@file_exists($GLOBALS['pmaThemePath'] . 'layout.inc.php')) { include $GLOBALS['pmaThemePath'] . 'layout.inc.php'; } } /** * prints out preview for every theme * * @uses $this->themes * @uses PMA_Theme::printPreview() */ function printPreviews() { foreach ($this->themes as $each_theme) { $each_theme->printPreview(); } // end 'open themes' } /** * returns PMA_Theme object for fall back theme * @return object PMA_Theme */ function getFallBackTheme() { if (isset($this->themes['original'])) { return $this->themes['original']; } return false; } /** * prints css data */ function printCss($type) { if ($this->theme->loadCss($type)) { return true; } // load css for this them failed, try default theme css $fallback_theme = $this->getFallBackTheme(); if ($fallback_theme && $fallback_theme->loadCss($type)) { return true; } return false; } } ?>
/admin/myadmin2/libraries/
Имя
Дата
Размер
..
2013-06-28
auth
2013-06-28
dbg
2013-06-28
dbi
2013-06-28
engines
2013-06-28
export
2013-06-28
import
2013-06-28
tcpdf
2013-06-28
transformations
2013-06-28
.htaccess
2015-04-04
118 байт
Config.class.php
2013-06-28
34 кб.
File.class.php
2013-06-28
25 кб.
List.class.php
2013-06-28
4 кб.
List_Database.class.php
2013-06-28
18 кб.
StorageEngine.class.php
2013-06-28
15 кб.
Table.class.php
2013-06-28
44 кб.
Theme.class.php
2013-06-28
9 кб.
Theme_Manager.class.php
2013-06-28
10 кб.
blowfish.php
2013-06-28
27 кб.
bookmark.lib.php
2013-06-28
6 кб.
charset_conversion.lib.php
2013-06-28
11 кб.
check_user_privileges.lib.php
2013-06-28
8 кб.
cleanup.lib.php
2013-06-28
1 кб.
common.inc.php
2013-06-28
27 кб.
common.lib.php
2013-06-28
80 кб.
config.default.php
2013-06-28
51 кб.
core.lib.php
2013-06-28
18 кб.
database_interface.lib.php
2013-06-28
49 кб.
db_common.inc.php
2013-06-28
2 кб.
db_info.inc.php
2013-06-28
8 кб.
db_links.inc.php
2013-06-28
4 кб.
db_routines.inc.php
2013-06-28
4 кб.
db_table_exists.lib.php
2013-06-28
3 кб.
display_change_password.lib.php
2013-06-28
3 кб.
display_create_database.lib.php
2013-06-28
2 кб.
display_create_table.lib.php
2013-06-28
4 кб.
display_export.lib.php
2013-06-28
9 кб.
display_import.lib.php
2013-06-28
7 кб.
display_select_lang.lib.php
2013-06-28
4 кб.
display_tbl.lib.php
2013-06-28
102 кб.
display_tbl_links.lib.php
2013-06-28
2 кб.
file_listing.php
2013-06-28
2 кб.
footer.inc.php
2013-06-28
6 кб.
get_foreign.lib.php
2013-06-28
3 кб.
grab_globals.lib.php
2013-06-28
4 кб.
header.inc.php
2013-06-28
12 кб.
header_http.inc.php
2013-06-28
740 байт
header_meta_style.inc.php
2013-06-28
2 кб.
header_printview.inc.php
2013-06-28
3 кб.
iconv_wrapper.lib.php
2013-06-28
3 кб.
import.lib.php
2013-06-28
11 кб.
information_schema_relations.lib.php
2013-06-28
4 кб.
ip_allow_deny.lib.php
2013-06-28
5 кб.
js_escape.lib.php
2013-06-28
2 кб.
kanji-encoding.lib.php
2013-06-28
4 кб.
language.lib.php
2013-06-28
354 байт
mcrypt.lib.php
2013-06-28
3 кб.
mult_submits.inc.php
2013-06-28
16 кб.
mysql_charsets.lib.php
2013-06-28
14 кб.
navigation_header.inc.php
2013-06-28
4 кб.
ob.lib.php
2013-06-28
3 кб.
opendocument.lib.php
2013-06-28
8 кб.
parse_analyze.lib.php
2013-06-28
2 кб.
plugin_interface.lib.php
2013-06-28
14 кб.
relation.lib.php
2013-06-28
37 кб.
relation_cleanup.lib.php
2013-06-28
8 кб.
sanitizing.lib.php
2013-06-28
2 кб.
select_lang.lib.php
2013-06-28
22 кб.
select_server.lib.php
2013-06-28
4 кб.
server_common.inc.php
2013-06-28
1 кб.
server_links.inc.php
2013-06-28
2 кб.
session.inc.php
2013-06-28
4 кб.
sql_query_form.lib.php
2013-06-28
21 кб.
sqlparser.data.php
2013-06-28
27 кб.
sqlparser.lib.php
2013-06-28
100 кб.
sqlvalidator.class.php
2013-06-28
13 кб.
sqlvalidator.lib.php
2013-06-28
3 кб.
string.lib.php
2013-06-28
6 кб.
string_mb.lib.php
2013-06-28
2 кб.
string_native.lib.php
2013-06-28
2 кб.
string_type_ctype.lib.php
2013-06-28
3 кб.
string_type_native.lib.php
2013-06-28
4 кб.
tbl_common.php
2013-06-28
1018 байт
tbl_indexes.lib.php
2013-06-28
11 кб.
tbl_info.inc.php
2013-06-28
3 кб.
tbl_links.inc.php
2013-06-28
4 кб.
tbl_properties.inc.php
2013-06-28
30 кб.
tbl_replace_fields.inc.php
2013-06-28
4 кб.
tbl_triggers.lib.php
2013-06-28
2 кб.
transformations.lib.php
2013-06-28
9 кб.
unzip.lib.php
2013-06-28
16 кб.
url_generating.lib.php
2013-06-28
6 кб.
zip.lib.php
2013-06-28
6 кб.
/admin/myadmin2/libraries
Загрузить файлы
Файл 1
Файл 2
Файл 3