Mercurial > SimpleWebPresenter
view common-functions.inc @ 39:bd82b719a0de
Make CacheTimeCheck a singleton.
Robustify if_modified_since check.
Quiet warnings.
Set debug levels.
Fix basepath references.
| author | Tom Fredrik "BFG" Klaussen <bfg@blenning.no> |
|---|---|
| date | Fri, 05 Oct 2012 00:21:27 +0200 |
| parents | ca76d31b7d48 |
| children | fbbb82ced6de |
line wrap: on
line source
<?php include_once 'CacheTimeCheck.inc'; $cache = CacheTimeCheck::instance(__FILE__); $cache->includeOnce('http-response-status-codes.inc'); function basePath() { $l = strrpos($_SERVER['SCRIPT_FILENAME'], $_SERVER['SCRIPT_NAME']); return substr($_SERVER['SCRIPT_FILENAME'], 0, $l); } function loadFile($sFilename, $sCharset = 'UTF-8') { if (floatval(phpversion()) >= 4.3) { if (!file_exists($sFilename)) return -3; $sData = file_get_contents($sFilename); } else { if (!file_exists($sFilename)) return -3; $rHandle = fopen($sFilename, 'r'); if (!$rHandle) return -2; $sData = ''; while(!feof($rHandle)) $sData .= fread($rHandle, filesize($sFilename)); fclose($rHandle); } if ($sEncoding = mb_detect_encoding($sData, 'auto', true) != $sCharset) { if ($sEncoding != 1) { $sData = mb_convert_encoding($sData, $sCharset, $sEncoding); } } return $sData; } function errorPage($errorText, $errorCode = 403) { header(StatusCodes::httpHeaderFor($errorCode)); print "<div id=\"page\"><h1>${errorText}</h1></div>"; exit; } function genUrl($urlParams, $keys = array()) { $out = "?"; $first = 1; $new_params = $urlParams; foreach($keys as $param => $val) { $new_params[$param] = $val; } foreach($new_params as $param => $val) { if($first) $first = 0; else $out .= "&"; $out .= urlencode($param) . '=' . urlencode($val); } return $out; } function getElementByTagName($obj, $name) { $elems = $obj->getElementsByTagName($name); if ($elems->length != 1) { exit; } $elem = $elems->item(0); return $elem; } function getXmlContent($node) { $text = $node->ownerDocument->saveXml($node); $pattern = "/^<" . $node->tagName."[^>]*>/is"; $text = preg_replace($pattern, '' , $text); $pattern = '/<\/' . $node->tagName . '[^>]*>$/is'; $text = preg_replace($pattern, '' , $text); return $text; } ?>
