summaryrefslogtreecommitdiff
path: root/FilesystemStorageAccess.php
diff options
context:
space:
mode:
authorKevin Chabowski <kevin@kch42.de>2014-05-24 14:45:13 +0200
committerKevin Chabowski <kevin@kch42.de>2014-05-24 14:45:13 +0200
commit3c51baa4167d5a68ff010dc81525b9340c5f1329 (patch)
tree87dbb507a20a8946f93ea8b26a1a784d5eec62ea /FilesystemStorageAccess.php
parent9f86139b7604ea782a35e09bf9d0c55154197051 (diff)
downloadste-3c51baa4167d5a68ff010dc81525b9340c5f1329.tar.gz
ste-3c51baa4167d5a68ff010dc81525b9340c5f1329.tar.bz2
ste-3c51baa4167d5a68ff010dc81525b9340c5f1329.zip
Moved code into src subfolder and fixed docu
Diffstat (limited to 'FilesystemStorageAccess.php')
-rw-r--r--FilesystemStorageAccess.php66
1 files changed, 0 insertions, 66 deletions
diff --git a/FilesystemStorageAccess.php b/FilesystemStorageAccess.php
deleted file mode 100644
index 61ad452..0000000
--- a/FilesystemStorageAccess.php
+++ /dev/null
@@ -1,66 +0,0 @@
-<?php
-
-namespace kch42\ste;
-
-/*
- * Class: FilesystemStorageAccess
- * The default <StorageAccess> implementation for loading / saving templates into a directory structure.
- */
-class FilesystemStorageAccess implements StorageAccess {
- protected $sourcedir;
- protected $transcompileddir;
-
- /*
- * Constructor: __construct
- *
- * Parameters:
- * $src - The directory with the sources (Writing permissions are not mandatory, because STE does not save template sources).
- * $transc - The directory with the transcompiled templates (the PHP instance / the HTTP Server needs writing permissions to this directory).
- */
- public function __construct($src, $transc) {
- $this->sourcedir = $src;
- $this->transcompileddir = $transc;
- }
-
- public function load($tpl, &$mode) {
- $src_fn = $this->sourcedir . "/" . $tpl;
- $transc_fn = $this->transcompileddir . "/" . $tpl . ".php";
-
- if($mode == StorageAccess::MODE_SOURCE) {
- $content = @file_get_contents($src_fn);
- if($content === false) {
- throw new CantLoadTemplate("Template not found.");
- }
- return $content;
- }
-
- $src_stat = @stat($src_fn);
- $transc_stat = @stat($transc_fn);
-
- if(($src_stat === false) and ($transc_stat === false)) {
- throw new CantLoadTemplate("Template not found.");
- } else if($transc_stat === false) {
- $mode = StorageAccess::MODE_SOURCE;
- return file_get_contents($src_fn);
- } else if($src_stat === false) {
- include($transc_fn);
- return $transcompile_fx;
- } else {
- if($src_stat["mtime"] > $transc_stat["mtime"]) {
- $mode = StorageAccess::MODE_SOURCE;
- return file_get_contents($src_fn);
- } else {
- include($transc_fn);
- return $transcompile_fx;
- }
- }
- }
-
- public function save($tpl, $data, $mode) {
- $fn = (($mode == StorageAccess::MODE_SOURCE) ? $this->sourcedir : $this->transcompileddir) . "/" . $tpl . (($mode == StorageAccess::MODE_TRANSCOMPILED) ? ".php" : "");
- @mkdir(dirname($fn), 0777, true);
- if(file_put_contents($fn, "<?php \$transcompile_fx = $data; ?>") === false) {
- throw new CantSaveTemplate("Unable to save template.");
- }
- }
-}