From e5d2c5779f63f958a1e95ef1e4eb959984c1df97 Mon Sep 17 00:00:00 2001 From: Petr Skoda Date: Sat, 23 Jul 2011 00:45:17 +0200 Subject: [PATCH] MDL-25699 decode URLs in installer CSS --- install.php | 5 -- install/css.php | 148 +++++++++++++++++++++++++++++++++++++++++++++ lib/installlib.php | 129 +-------------------------------------- 3 files changed, 150 insertions(+), 132 deletions(-) create mode 100644 install/css.php diff --git a/install.php b/install.php index b615587b7d4..3ff618b0b47 100644 --- a/install.php +++ b/install.php @@ -217,11 +217,6 @@ if (isset($_GET['help'])) { install_print_help_page($_GET['help']); } -// send css? -if (isset($_GET['css'])) { - install_css_styles(); -} - //first time here? find out suitable dataroot if (is_null($CFG->dataroot)) { $CFG->dataroot = dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR.'moodledata'; diff --git a/install/css.php b/install/css.php new file mode 100644 index 00000000000..16bfaba0642 --- /dev/null +++ b/install/css.php @@ -0,0 +1,148 @@ +. + +/** + * This script prints basic CSS for the installer + * + * @package core + * @subpackage install + * @copyright 2011 Petr Skoda (http://skodak.org) + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +if (file_exists(dirname(dirname(__FILE__)).'/config.php')) { + // already installed + die; +} + +// include only the necessary stuff from themes, keep this small otherwise IE will complain... +$files = array( + 'base/style/pagelayout.css', + 'base/style/core.css', + 'standard/style/core.css', + 'standard/style/css3.css'); + + +$content = ''; + +foreach($files as $file) { + $content .= file_get_contents(dirname(dirname(__FILE__)).'/theme/'.$file) . "\n"; +} + +$content .= " + +h2 { + text-align:center; +} + +#installdiv { + width: 800px; + margin-left:auto; + margin-right:auto; +} + +#installdiv dt { + font-weight: bold; +} + +#installdiv dd { + padding-bottom: 0.5em; +} + +.stage { + margin-top: 2em; + margin-bottom: 2em; + width: 100%; + padding:25px; +} + +#installform { + width: 100%; +} + +#nav_buttons input { + margin: 5px; +} + +#envresult { + text-align:left; + width: auto; + margin-left:10em; +} + +#envresult dd { + color: red; +} + +.formrow { + clear:both; + text-align:left; + padding: 8px; +} + +.formrow label.formlabel { + display:block; + float:left; + width: 260px; + margin-right:5px; + text-align:right; +} + +.formrow .forminput { + display:block; + float:left; +} + +fieldset { + text-align:center; + border:none; +} + +.hint { + display:block; + clear:both; + padding-left: 265px; + color: red; +} + +.configphp { + text-align:left; + background-color:white; + padding:1em; + width:95%; +} + +.stage6 .stage { + font-weight: bold; + color: red; +} + +"; + +// fix used urls +$content = str_replace('[[pix:theme|hgradient]]', '../theme/standard/pix/hgradient.jpg', $content); +$content = str_replace('[[pix:theme|vgradient]]', '../theme/standard/pix/vgradient.jpg', $content); + +@header('Content-Disposition: inline; filename="css.php"'); +@header('Cache-Control: no-store, no-cache, must-revalidate'); +@header('Cache-Control: post-check=0, pre-check=0', false); +@header('Pragma: no-cache'); +@header('Expires: Mon, 20 Aug 1969 09:23:00 GMT'); +@header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); +@header('Accept-Ranges: none'); +@header('Content-Type: text/css; charset=utf-8'); + +echo $content; diff --git a/lib/installlib.php b/lib/installlib.php index 7b28f7c94e9..a4ebab407f0 100644 --- a/lib/installlib.php +++ b/lib/installlib.php @@ -243,7 +243,7 @@ function install_print_help_page($help) { echo ' - + '.get_string('installation','install').' @@ -290,20 +290,7 @@ function install_print_header($config, $stagename, $heading, $stagetext) { '; - $sheets = array('pagelayout','core'); - $csss = array(); - foreach ($sheets as $sheet) { - $csss[] = $CFG->wwwroot.'/theme/base/style/'.$sheet.'.css'; - } - $sheets = array('core', 'css3'); - foreach ($sheets as $sheet) { - $csss[] = $CFG->wwwroot.'/theme/standard/style/'.$sheet.'.css'; - } - foreach ($csss as $css) { - echo ''."\n"; - } - - echo ' + echo ' '.get_string('installation','install').' - Moodle '.$CFG->target_release.' @@ -381,118 +368,6 @@ function install_print_footer($config, $reload=false) { echo ''; } - -/** - * Prints css needed on installation page, tries to look like the rest of installation. - * Does not return. - * - * @global object - */ -function install_css_styles() { - global $CFG; - - @header('Content-type: text/css'); // Correct MIME type - @header('Cache-Control: no-store, no-cache, must-revalidate'); - @header('Cache-Control: post-check=0, pre-check=0', false); - @header('Pragma: no-cache'); - @header('Expires: Mon, 20 Aug 1969 09:23:00 GMT'); - @header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); - -//TODO: add rtl support here, make it match new default theme MDL-21149 - - echo ' - -h2 { - text-align:center; -} - -#installdiv { - width: 800px; - margin-left:auto; - margin-right:auto; -} - -#installdiv dt { - font-weight: bold; -} - -#installdiv dd { - padding-bottom: 0.5em; -} - -.stage { - margin-top: 2em; - margin-bottom: 2em; - width: 100%; - padding:25px; -} - -#installform { - width: 100%; -} - -#nav_buttons input { - margin: 5px; -} - -#envresult { - text-align:left; - width: auto; - margin-left:10em; -} - -#envresult dd { - color: red; -} - -.formrow { - clear:both; - text-align:left; - padding: 8px; -} - -.formrow label.formlabel { - display:block; - float:left; - width: 260px; - margin-right:5px; - text-align:right; -} - -.formrow .forminput { - display:block; - float:left; -} - -fieldset { - text-align:center; - border:none; -} - -.hint { - display:block; - clear:both; - padding-left: 265px; - color: red; -} - -.configphp { - text-align:left; - background-color:white; - padding:1em; - width:95%; -} - -.stage6 .stage { - font-weight: bold; - color: red; -} - -'; - - die; -} - /** * Install Moodle DB, * config.php must exist, there must not be any tables in db yet.