ver. 0.285: Tpl → Shared\Tpl namespace, CurlServer removal, thumb.php fix

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-17 00:13:59 +01:00
parent fc7d18123d
commit 28b30c1e56
144 changed files with 385 additions and 285 deletions

View File

@@ -5,21 +5,21 @@ class Html
{
public static function form_text( array $params = array() )
{
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/form-text' );
}
public static function input_switch( array $params = array() )
{
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/input-switch' );
}
public static function select( array $params = array() )
{
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/select' );
}
@@ -32,7 +32,7 @@ class Html
$params = array_merge( $defaults, $params );
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/textarea' );
}
@@ -45,7 +45,7 @@ class Html
$params = array_merge( $defaults, $params );
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/input-icon' );
}
@@ -58,7 +58,7 @@ class Html
$params = array_merge( $defaults, $params );
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/input' );
}
@@ -71,7 +71,7 @@ class Html
$params = array_merge( $defaults, $params );
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/button' );
}
@@ -86,7 +86,7 @@ class Html
$params = array_merge( $defaults, $params );
$tpl = new \Tpl;
$tpl = new \Shared\Tpl\Tpl;
$tpl -> params = $params;
return $tpl -> render( 'html/panel' );
}

View File

@@ -0,0 +1,63 @@
<?php
namespace Shared\Tpl;
class Tpl
{
protected $vars = array();
public static function view($file, $values = '')
{
$tpl = new self;
if (is_array($values)) foreach ($values as $key => $val)
$tpl->$key = $val;
return $tpl->render($file);
}
public function secureHTML($val)
{
$out = stripslashes($val);
$out = str_replace("'", "&#039;", $out);
$out = str_replace('"', "&#34;", $out);
$out = str_replace("<", "&lt;", $out);
$out = str_replace(">", "&gt;", $out);
return $out;
}
public function render($file)
{
$paths = [
'templates_user/' . $file . '.php',
'templates/' . $file . '.php',
'../templates_user/' . $file . '.php',
'../templates/' . $file . '.php',
$file . '.php',
];
foreach ($paths as $path) {
if (file_exists($path)) {
return $this->renderFile($path);
}
}
return '<div class="alert alert-danger" role="alert">Nie znaleziono pliku widoku: <b>' . $file . '.php</b>';
}
private function renderFile($path)
{
ob_start();
include $path;
$out = ob_get_contents();
ob_end_clean();
return $out;
}
public function __set($name, $value)
{
$this->vars[$name] = $value;
}
public function __get($name)
{
return $this->vars[$name];
}
}