openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit baf429f0197b2526258ba0c29fda015dc77651aa
parent 1240bf2c202ca68b87e1cea9436ad3db4d0f8bb5
Author: dankert <devnull@localhost>
Date:   Mon, 12 Oct 2009 09:34:21 +0200

Falls Zielverzeichnis des Templates nicht existiert, dann versuchen, dieses anzulegen.

Diffstat:
serviceClasses/TemplateEngine.class.php | 17+++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/serviceClasses/TemplateEngine.class.php b/serviceClasses/TemplateEngine.class.php @@ -83,10 +83,19 @@ class TemplateEngine // Vorlage und Zieldatei oeffnen $document = $this->loadDocument( $srcFilename ); - $outFile = fopen($filename,'w'); + + // Prüfen, ob Zielverzeichnis existiert, falls nicht: Anlegen. + if ( ! is_dir(dirname($filename)) ) + { + $rc = mkdir( dirname($filename) ); + if ( ! $rc ) + Http::serverError('Unable to create directory: '.dirname($filename)); + } + + $outFile = @fopen($filename,'w'); if ( !is_resource($outFile) ) - die( get_class($this).': Unable to open file for writing: '.$filename); + Http::serverError( get_class($this).': Unable to open file for writing: '.$filename); $openCmd = array(); $depth = 0; @@ -255,11 +264,11 @@ class TemplateEngine $ignore = !$ignore; } - // Zeilenumbrüche nicht setzen. + // Zeilenumbr�che nicht setzen. if ( strpos($line,'#SET-LINEBREAK-OFF')!==FALSE ) $linebreaks = false; - // Zeilenumbrüche setzen. + // Zeilenumbr�che setzen. if ( strpos($line,'#SET-LINEBREAK-OFF')!==FALSE ) $linebreaks = true;