/Server/GenIndex/Common.php
1,8 → 1,8
<?php
 
 
define('WEBSVNSCRIPT', '/WebSVN/listing.php', true); // Cesta k WebSVN skriptu
define('WIKISERVER', 'wiki', true); // Jméno Wiki serveru (co se strčí místo jména stávajícího serveru)
define('WEBSVNSCRIPT', '/WebSVN/listing.php'); // Cesta k WebSVN skriptu
define('WIKISERVER', 'wiki'); // Jméno Wiki serveru (co se strčí místo jména stávajícího serveru)
 
 
function Error($str)
45,7 → 45,7
$Path = realpath($_SERVER['DOCUMENT_ROOT'].$Path);
 
// Zkontroluj, zda jsme nevybočili z webu
if ( 0 == strncmp($Path, $_SERVER['DOCUMENT_ROOT'], strlen($_SERVER['DOCUMENT_ROOT']) ) )
if ( str_starts_with($Path, $_SERVER['DOCUMENT_ROOT']) )
{
// Shoda - odstraň DOCUMENT_ROOT část cesty
return substr( $Path, strlen($_SERVER['DOCUMENT_ROOT']) );
/Server/GenIndex/DirMetadata.php
46,11 → 46,11
 
// Vyhoď komentáře (po řádcích)
foreach($File as $Key => $Line)
if (substr(ltrim($Line), 0, 2) == '//')
if (str_starts_with(ltrim($Line), '//'))
unset($File[$Key]);
 
// Sestav z pole jeden retězec
$File = implode($File);
$File = implode('', $File);
 
// Vyhledej v souboru informace
$PatternKey = '\[(?P<Key>[a-z,A-Z,0-9,\-\_\.]+)\]';
/Server/GenIndex/GenIndex.php
6,11 → 6,11
require_once('TemplateEngine.php'); // Stroj pro práci s templejty
require_once('DirMetadata.php'); // Modul pro načítání informace o adresářích
 
define('DIRINFO', 'DirInfo.txt', true); // Jméno souboru s informacemi o adresáři
define('PRJINFO', 'PrjInfo.txt', true); // Jméno souboru s informacemi o projektu
define('WRAP', 70, true); // Lámání řetězcových hodnot
define('DIRINFO', 'DirInfo.txt'); // Jméno souboru s informacemi o adresáři
define('PRJINFO', 'PrjInfo.txt'); // Jméno souboru s informacemi o projektu
define('WRAP', 70); // Lámání řetězcových hodnot
 
define('TEMPLATEPATH', 'Templates', true); // relativní cesta k templejtům
define('TEMPLATEPATH', 'Templates'); // relativní cesta k templejtům
$TemplateFile = 'Modules.ihtml'; // přípona jazyka se doplní sama
 
 
/Server/GenIndex/TemplateEngine.php
73,7 → 73,7
return 'Unable Open Template File';
 
// Sestav z pole jeden retězec
$this->Page = implode($this->Page);
$this->Page = implode('', $this->Page);
 
 
// Definice regulárních výrazů pro hledání
/Server/PrjInfo/Common.php
6,20 → 6,20
// *********************************
 
 
define('DIRINFO', 'DirInfo.txt', true); // Jméno souboru s informacemi o adresáři
define('PRJINFO', 'PrjInfo.txt', true); // Jméno souboru s informacemi o projektu
define('DIRINFO', 'DirInfo.txt'); // Jméno souboru s informacemi o adresáři
define('PRJINFO', 'PrjInfo.txt'); // Jméno souboru s informacemi o projektu
 
define('PERMALINK', '/PermaLink', true); // Začátek cesty s permalinkem (zpracovává mod_rewrite)
define('LISTSCRIPT', 'List', true); // Jméno skriptu v rootu pro výpis
define('WEBSVNSCRIPT', '/WebSVN/listing.php', true); // Cesta k WebSVN skriptu
define('WIKISERVER', 'wiki', true); // Jméno Wiki serveru (co se strčí místo jména stávajícího serveru)
define('PERMALINK', '/PermaLink'); // Začátek cesty s permalinkem (zpracovává mod_rewrite)
define('LISTSCRIPT', 'List'); // Jméno skriptu v rootu pro výpis
define('WEBSVNSCRIPT', '/WebSVN/listing.php'); // Cesta k WebSVN skriptu
define('WIKISERVER', 'wiki'); // Jméno Wiki serveru (co se strčí místo jména stávajícího serveru)
 
// Cesta k templejtům
define('TEMPLATE_PATH', 'Server/PrjInfo/Templates', true); // Cesta do adresáře s templejty
define('TEMPLATE_PERMALINK', TEMPLATE_PATH . '/PermaLink.ihtml', true); // Zobrazení PermaLinku (přípona jazyka se doplní sama)
define('TEMPLATE_PERMALINK_PATH', TEMPLATE_PATH . '/PermaLinkPath.ihtml', true); // Zobrazení PermaLinku s cestou (přípona jazyka se doplní sama)
define('TEMPLATE_LISTDIR', TEMPLATE_PATH . '/ListDir.ihtml', true); // Zobrazení sekce (přípona jazyka se doplní sama)
define('TEMPLATE_LISTPRJ', TEMPLATE_PATH . '/ListPrj.ihtml', true); // Zobrazení projektu (přípona jazyka se doplní sama)
define('TEMPLATE_PATH', 'Server/PrjInfo/Templates'); // Cesta do adresáře s templejty
define('TEMPLATE_PERMALINK', TEMPLATE_PATH . '/PermaLink.ihtml'); // Zobrazení PermaLinku (přípona jazyka se doplní sama)
define('TEMPLATE_PERMALINK_PATH', TEMPLATE_PATH . '/PermaLinkPath.ihtml'); // Zobrazení PermaLinku s cestou (přípona jazyka se doplní sama)
define('TEMPLATE_LISTDIR', TEMPLATE_PATH . '/ListDir.ihtml'); // Zobrazení sekce (přípona jazyka se doplní sama)
define('TEMPLATE_LISTPRJ', TEMPLATE_PATH . '/ListPrj.ihtml'); // Zobrazení projektu (přípona jazyka se doplní sama)
 
 
// *********************************
504,7 → 504,7
$Result[] = $Data;
*/
// Hledej permalinky, které obsahují zadaný klíč
if(strpos(mb_strtolower($Data['PermaLink']), $Key)!==false)
if(str_contains(mb_strtolower($Data['PermaLink']), $Key))
$Result[] = $Data;
}
return $Result;
/Server/PrjInfo/CommonOld.php
1,8 → 1,8
<?php
 
 
define('WEBSVNSCRIPT', '/WebSVN/listing.php', true); // Cesta k WebSVN skriptu
define('WIKISERVER', 'wiki', true); // Jméno Wiki serveru (co se strčí místo jména stávajícího serveru)
define('WEBSVNSCRIPT', '/WebSVN/listing.php'); // Cesta k WebSVN skriptu
define('WIKISERVER', 'wiki'); // Jméno Wiki serveru (co se strčí místo jména stávajícího serveru)
 
 
function Error($str)
45,7 → 45,7
$Path = realpath($_SERVER['DOCUMENT_ROOT'].$Path);
 
// Zkontroluj, zda jsme nevybočili z webu
if ( 0 == strncmp($Path, $_SERVER['DOCUMENT_ROOT'], strlen($_SERVER['DOCUMENT_ROOT']) ) )
if ( str_starts_with($Path, $_SERVER['DOCUMENT_ROOT']) )
{
// Shoda - odstraň DOCUMENT_ROOT část cesty
return substr( $Path, strlen($_SERVER['DOCUMENT_ROOT']) );
/Server/PrjInfo/DirMetadata.php
46,11 → 46,11
 
// Vyhoď komentáře (po řádcích)
foreach($File as $Key => $Line)
if (substr(ltrim($Line), 0, 2) == '//')
if (str_starts_with(ltrim($Line), '//'))
unset($File[$Key]);
 
// Sestav z pole jeden retězec
$File = implode($File);
$File = implode('', $File);
 
// Vyhledej v souboru informace
$PatternKey = '\[(?P<Key>[a-z,A-Z,0-9,\-\_\.]+)\]';
/Server/PrjInfo/List.php
6,7 → 6,7
require_once('TemplateEngine.php'); // Stroj pro práci s templejty
require_once('DirMetadata.php'); // Modul pro načítání informace o adresářích
 
define('WRAP', 70, true); // Lámání řetězcových hodnot
define('WRAP', 70); // Lámání řetězcových hodnot
 
// Stavová informace
// -----------------
274,7 → 274,7
 
$Variables['InfoName'] = ($DirInfoValid or $ProjectInfoValid) ? CreateListLinkHTML($Params, $DirName, $DirInfo->GetString('InfoLongDescription'))
: $DirName;
$Variables['InfoPicture'] = CreatePicturesLink($Params['path'].'/'.$DirName, $Glue, 'Ilustrative Picture', '/'.TEMPLATE_PATH.'/'.$Template->GetVariable('InfoNoPicture'), 150);
$Variables['InfoPicture'] = CreatePicturesLink($Params['path'].'/'.$DirName, $Glue, 'Ilustrative Picture', '/'.TEMPLATE_PATH.'/'.$Template->GetVariable('InfoNoPicture'));
$Variables['InfoDescripion'] = $DirInfo->GetString('InfoShortDescription', WRAP);
$Variables['InfoWebSVN'] = CreateSVNLink($Params['path'].'/'.$DirName, $Params['lang'], $Template->GetString('InfoSVNTitle'));
if (!$DirInfoValid)
358,7 → 358,7
$Template->SetVariable('InfoVariables', $Variables);
 
// Odkaz na obrázky k projektu
$Template->SetVariable('InfoPictures', CreatePicturesLink($Path, $Template->GetString('InfoPicturesGlue'), 'Ilustrative Picture', '', 200));
$Template->SetVariable('InfoPictures', CreatePicturesLink($Path, $Template->GetString('InfoPicturesGlue'), 'Ilustrative Picture', ''));
 
// Data do tabulky
$Template->SetVariable('InfoText', CreateFilesLink($Path.'/DOC/{HTML/*.[hH][tT][mM][lL],*.[pP][dD][fF]}', $Glue));
538,7 → 538,7
$Path = realpath($_SERVER['DOCUMENT_ROOT'].$Path);
 
// Zkontroluj, zda jsme nevybočili z webu
if ( 0 == strncmp($Path, $_SERVER['DOCUMENT_ROOT'], strlen($_SERVER['DOCUMENT_ROOT']) ) )
if ( str_starts_with($Path, $_SERVER['DOCUMENT_ROOT']) )
{
// Shoda - odstraň DOCUMENT_ROOT část cesty
return substr( $Path, strlen($_SERVER['DOCUMENT_ROOT']) );
/Server/PrjInfo/PermaLink.php
8,8 → 8,8
// Pro snadné odkázání lze permanentní odkaz doplnit cestou k adresáři či souboru v rámci projektu.
 
 
define(DISPLAY_ALL_IF_EMPTY , true); // Povol zobrazení všech sekcí a projektů když je zadaný prázdný permalink
define(MAX_DEPTH, 50); // Maximální hloubka prohledávání adresářů (pojistka proti zacyklené struktuře adresářů)
define('DISPLAY_ALL_IF_EMPTY' , true); // Povol zobrazení všech sekcí a projektů když je zadaný prázdný permalink
define('MAX_DEPTH', 50); // Maximální hloubka prohledávání adresářů (pojistka proti zacyklené struktuře adresářů)
 
require_once('Common.php'); // Modul společných funkcí
require_once('DirMetadata.php'); // Modul pro načítání informace o adresářích
105,7 → 105,7
// Naplň proměnné pro definici položky
// Type / Picture / PermaLink / Path
$Variables['InfoType'] = $Data['Type'];
$Variables['InfoPicture'] = CreatePicturesLink($Data['Path'], $PictureGlue, $PictureAlt, $PictureNoPicture, 150);
$Variables['InfoPicture'] = CreatePicturesLink($Data['Path'], $PictureGlue, $PictureAlt, $PictureNoPicture);
$Variables['InfoPermaLink'] = "<a href=\"".PermaLinkCreateLink($Data['PermaLink'])."\">{$Data['PermaLink']}</a>";
$PathMarked = MarkPath($Data['Path']);
$Variables['InfoPath'] = "<a href=\"".CreateProjectLink($Data['Path'], $Lang)."\">$PathMarked</a>";
/Server/PrjInfo/TemplateEngine.php
73,7 → 73,7
return 'Unable Open Template File';
 
// Sestav z pole jeden retězec
$this->Page = implode($this->Page);
$this->Page = implode('', $this->Page);
 
 
// Definice regulárních výrazů pro hledání
/Web/Maintenance/DigDNS.php
19,20 → 19,20
reset($x);
while($y=each($x))
{
if(eregi(";; ANSWER SECTION:",$y[value])) break;
if(preg_match('#;; ANSWER SECTION:#mi',$y[\VALUE])) break;
}
$x=array_slice($x,$y[key]+1);
$x=array_slice($x,$y[\KEY]+1);
// Vyhoď prázdné řádky a komentáře
reset($x);
while($y=each($x))
{
if(eregi("^$",$y[value]))
unset($x[$y[key]]);
if(eregi("^;.*$",$y[value]))
unset($x[$y[key]]);
if(eregi("^Received .*$",$y[value]))
unset($x[$y[key]]);
if(preg_match('#^$#mi',$y[\VALUE]))
unset($x[$y[\KEY]]);
if(preg_match('#^;.*$#mi',$y[\VALUE]))
unset($x[$y[\KEY]]);
if(preg_match('#^Received .*$#mi',$y[\VALUE]))
unset($x[$y[\KEY]]);
}
// Setřiď podle abecedy
/rector.php
3,16 → 3,41
declare(strict_types=1);
 
use Rector\Config\RectorConfig;
use Rector\Set\ValueObject\SetList;
use Rector\TypeDeclaration\Rector\ClassMethod\AddVoidReturnTypeWhereNoReturnRector;
 
return RectorConfig::configure()
->withPaths([
return static function (RectorConfig $rectorConfig): void {
$rectorConfig->paths([
__DIR__ . '/Articles',
__DIR__ . '/Server',
__DIR__ . '/Web',
])
// uncomment to reach your current PHP version
// ->withPhpSets()
->withRules([
]);
 
// Uncomment and set this to your target PHP version
$rectorConfig->phpVersion(PHP_VERSION_ID); // for PHP 8, this might be 80000 for 8.0
 
// Include sets of rules for PHP version upgrades
// For upgrading to PHP 8.0
$rectorConfig->sets([
SetList::PHP_80,
]);
 
// Optionally, include PHP 7.x sets if upgrading from PHP 5
$rectorConfig->sets([
SetList::PHP_70,
SetList::PHP_71,
SetList::PHP_72,
SetList::PHP_73,
SetList::PHP_74,
SetList::PHP_80, // Ensure this is the last to apply PHP 8 changes
]);
 
// Custom rules (you can keep this if you need specific rules like the one below)
$rectorConfig->rules([
AddVoidReturnTypeWhereNoReturnRector::class,
]);
 
// Uncomment and adjust to your current PHP version
// This helps Rector make decisions based on your starting PHP version.
// $rectorConfig->phpVersion(70400); // Example for PHP 7.4
};