diff --git a/config.php.example b/config.php.example index 1c884e9..acc54e3 100644 --- a/config.php.example +++ b/config.php.example @@ -13,6 +13,9 @@ // define( 'HEAD_TITLE', ''); // define( 'FOOTER', 'D\'après les premières versions de SebSauvage et Bohwaz.'); +// define( 'DOCS_CACHE_DURATION', 1800); +// define( 'AUTOBLOGS_CACHE_DURATION', 1800); + // define( 'ALLOW_FULL_UPDATE', TRUE ); // define( 'ALLOW_CHECK_UPDATE', TRUE ); diff --git a/functions.php b/functions.php index 6a6859c..875e980 100755 --- a/functions.php +++ b/functions.php @@ -16,6 +16,9 @@ if (!defined('FOLDER_MAX_LENGTH')) define('FOLDER_MAX_LENGTH', 80); date_default_timezone_set('Europe/Paris'); setlocale(LC_TIME, 'fr_FR.UTF-8', 'fr_FR', 'fr'); +if( !defined('DOCS_CACHE_DURATION')) define( 'DOCS_CACHE_DURATION', 1800 ); +if( !defined('AUTOBLOGS_CACHE_DURATION')) define( 'AUTOBLOGS_CACHE_DURATION', 1800 ); + if( !defined('ALLOW_FULL_UPDATE')) define( 'ALLOW_FULL_UPDATE', TRUE ); if( !defined('ALLOW_CHECK_UPDATE')) define( 'ALLOW_CHECK_UPDATE', TRUE ); diff --git a/index.php b/index.php index aa9f22a..39afe8b 100644 --- a/index.php +++ b/index.php @@ -204,7 +204,7 @@ function svg_status($fill, $text, $back) $svg_ok=svg_status('#008000', 'ok', ''); $svg_mv=svg_status('#0000ff', 'mv', ''); $svg_err=svg_status('#000000', 'err', ''); - + $errorlog="./".escape( $_GET['check'] ) ."/error.log"; $oldvalue = null; @@ -261,8 +261,8 @@ if (isset($_GET['export'])) { foreach($subdirs as $unit) { if(is_dir($unit)) { - $unit=substr($unit, 2); $ini = parse_ini_file($unit.'/vvb.ini'); + $unit=substr($unit, 2); $config = new stdClass; foreach ($ini as $key=>$value) { @@ -327,7 +327,7 @@ if (isset($_GET['exportopml'])) // OPML foreach($subdirs as $unit) { if(is_dir($unit)) { - $unit=substr($unit, 2); + $unit=substr($unit, 2); $ini = parse_ini_file($unit.'/vvb.ini'); $config = new stdClass; @@ -362,7 +362,7 @@ if (isset($_GET['sitemap'])) $subdirs = glob(AUTOBLOGS_FOLDER . "*"); foreach($subdirs as $unit) { if(is_dir($unit)) { - $unit=substr($unit, 2); + $unit=substr($unit, 2); echo "\n ".$proto.$_SERVER['SERVER_NAME'].substr($_SERVER['PHP_SELF'], 0, -9)."$unit/"."\n"; echo ' '.date('c', filemtime($unit))."\n"; echo " hourly\n\n\n"; @@ -832,7 +832,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY -
@@ -847,7 +847,7 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
- -
@@ -878,37 +878,59 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
- - '. substr($unit, (strrpos($unit, '/')) + 1 ) .'', $size); } } - } - if(!empty( $docs )) { - echo '
+ if(!empty( $docs )) { + echo '

Autres documents

    '."\n"; - foreach( $docs as $value ) { - $str = $value[0]; - if ( !empty($value[1]) ) { - $str = sprintf('%s (%s)', $value[0], $value[1]); + + foreach( $docs as $value ) { + $str = $value[0]; + if ( !empty($value[1]) ) { + $str = sprintf('%s (%s)', $value[0], $value[1]); + } + echo '
  • '. $str . "
  • \n"; } - echo '
  • '. $str . "
  • \n"; - } - echo '
+ + echo '
'."\n"; + } + } + // on recuperre le contenu du buffer + $contenuCache = ob_get_contents(); + ob_end_flush(); // on termine la bufferisation + $fd = fopen("$fichierCache", "w"); // on ouvre le fichier cache + if ($fd) { + fwrite($fd,$contenuCache); // on écrit le contenu du buffer dans le fichier cache + fclose($fd); } + // sinon le fichier cache existe déjà, on ne génère pas la page + // et on envoie le fichier statique à la place + } else { + readfile($fichierCache); // affichage du contenu du fichier + echo ' '."\n"; // et un petit message + } ?>
@@ -921,37 +943,44 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY exportOPML -
    - $value) { - $key = strtolower($key); - $config->$key = $value; + + '; + $subdirs = glob(AUTOBLOGS_FOLDER . "*"); + $autoblogs = array(); + foreach($subdirs as $unit) { + if(is_dir($unit)) { + if( !file_exists(ROOT_DIR . '/' . $unit . '/.disabled')) { + if( file_exists(ROOT_DIR . '/' . $unit . '/vvb.ini')) { + $ini = parse_ini_file(ROOT_DIR . '/' . $unit . '/vvb.ini'); + if($ini) { + $config = new stdClass; + foreach ($ini as $key=>$value) { + $key = strtolower($key); + $config->$key = $value; + } + $autoblogs[$unit] = $config; + unset($ini); } - $autoblogs[$unit] = $config; - unset($ini); } } } } - } - - uasort($autoblogs, "objectCmp"); - $autoblogs_display = ''; - - if(!empty($autoblogs)){ - foreach ($autoblogs as $key => $autoblog) { - $opml_link='opml'; - $autoblogs_display .= '
  • + + uasort($autoblogs, "objectCmp"); + $autoblogs_display = ''; + + if(!empty($autoblogs)){ + foreach ($autoblogs as $key => $autoblog) { + $opml_link='opml'; + $autoblogs_display .= '
  • @@ -961,12 +990,30 @@ if( !empty($_POST['opml_file']) && ALLOW_NEW_AUTOBLOGS && ALLOW_NEW_AUTOBLOGS_BY
    config ini '.$opml_link.' | '.escape($autoblog->site_type).' source : '.escape($autoblog->site_url).'
  • '; - } - } - echo $autoblogs_display; - ?> -
- ".count($autoblogs)." autoblogs hébergés

"; ?> + } + } + echo $autoblogs_display; + + echo ' + +

'.count($autoblogs).' autoblogs hébergés

'; + + // on recuperre le contenu du buffer + $contenuCache = ob_get_contents(); + ob_end_flush(); // on termine la bufferisation + $fd = fopen("$fichierCache", "w"); // on ouvre le fichier cache + if ($fd) { + fwrite($fd,$contenuCache); // on écrit le contenu du buffer dans le fichier cache + fclose($fd); + } + // sinon le fichier cache existe déjà, on ne génère pas la page + // et on envoie le fichier statique à la place + } else { + echo ''."\n".' '; // un message de début + readfile($fichierCache); // affichage du contenu du fichier + echo "\n".' '."\n"; // et un petit message + } + ?>