X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fstylesheet.php;h=219918f6b25e32b310880266b7310ea89f22756b;hp=d08d66b07b5260dba85c8a934ad8da700d1c6ef1;hb=64c8349613addc3da2242c5cd6b99d64e3fb5f8e;hpb=eeee0af1c4bb14b8438e2bfcb62dc14eb8f8fa5e diff --git a/inc/stylesheet.php b/inc/stylesheet.php index d08d66b07b..219918f6b2 100644 --- a/inc/stylesheet.php +++ b/inc/stylesheet.php @@ -17,7 +17,7 @@ * Needs to be in all Files and every File needs "svn propset * * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * - * Copyright (c) 2003 - 2008 by Roland Haeder * + * Copyright (c) 2003 - 2009 by Roland Haeder * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -38,57 +38,89 @@ // Some security stuff... if (!defined('__SECURITY')) { - $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php'; - require($INC); + die(); } // Default styles $STYLES = array( - "general.css", + 'general.css', ); // Add stylesheet for installation -if ((isInstalling()) || (!isInstalled())) $STYLES[] = "install.css"; +if ((isInstallationPhase())) $STYLES[] = 'install.css'; // When no CSS output-mode is set, set it to file-output -if (!isConfigEntrySet('css_php')) setConfigEntry('css_php', "FILE"); +if (!isConfigEntrySet('css_php')) setConfigEntry('css_php', 'FILE'); // Output CSS files or content or link to css.php ? -if (($GLOBALS['output_mode'] == "1") || (getConfig('css_php') == "DIRECT")) { +if ((getOutputMode() == '1') || (getConfig('css_php') == 'DIRECT')) { // Load CSS files - $STYLES = merge_array($STYLES, EXT_GET_CSS_FILES()); + $STYLES = merge_array($STYLES, getExtensionCssFiles()); + + // Generate base path + $basePath = sprintf("%stheme/%s/css/", getConfig('PATH'), getCurrentTheme()); // Output inclusion lines foreach ($STYLES as $value) { // Only include found CSS files (to reduce 404 requests) - $basePath = sprintf("%stheme/%s/css/", constant('PATH'), GET_CURR_THEME()); $FQFN = $basePath . $value; // Do include only existing files and whose are not empty - if ((FILE_READABLE($FQFN)) && (filesize($FQFN) > 0)) { + if ((isFileReadable($FQFN)) && (filesize($FQFN) > 0)) { switch (getConfig('css_php')) { - case 'DIRECT': - OUTPUT_HTML(''); + case 'DIRECT': // Just link them (unsupported) + outputHtml(''); + break; + + case 'FILE': // Output contents + outputHtml(readFromFile($FQFN)); break; - case 'FILE': - OUTPUT_HTML(READ_FILE($FQFN)); + default: // Invalid mode! + debug_report_bug(sprintf("Invalid css_php value %s detected.", getConfig('css_php'))); break; } // END - switch } // END - if } // END - foreach +} elseif ((getOutputMode() == '0') || (getConfig('css_php') == 'INLINE')) { + // Load CSS files + $STYLES = merge_array($STYLES, getExtensionCssFiles()); + + // Generate base path + $basePath = sprintf("%stheme/%s/css/", getConfig('PATH'), getCurrentTheme()); + + // Output inclusion lines + $OUT = ''; + foreach ($STYLES as $value) { + // Only include found CSS files (to reduce 404 requests) + $FQFN = $basePath . $value; + + // Do include only existing files and whose are not empty + if ((isFileReadable($FQFN)) && (filesize($FQFN) > 0)) { + // Load CSS content + $OUT .= readFromFile($FQFN); + } // END - if + } // END - foreach + + // Load template + loadTemplate('css_inline', false, $OUT); } else { // Now we load all CSS files from css.php! - OUTPUT_HTML(''); + if (isGetRequestElementSet('theme')) $newTheme = getRequestElement('theme'); + if (isPostRequestElementSet('theme')) $newTheme = SQL_ESCAPE(postRequestElement('theme')); + outputHtml('?theme=' . $newTheme . '&installing=1', false); + } else { + // Add SVN revision to bypass caching problems + outputHtml('?rev=' . getConfig('CURR_SVN_REVISION')); + } + + // Close tag + outputHtml('" />'); } -// +// [EOF] ?>