<?
                $kanaly
=file("data/kanaly.txt");
                for(
$i=0;$i<count($kanaly);$i++) $kanaly[$i]=explode(" ",trim($kanaly[$i]));
                
$mod=filemtime("data/kanaly.txt");
                if(
$update && time()-$mod>60
                    {
                    for(
$i=0;$i<count($kanaly);$i++)
                        {
                        if(
$kanaly[$i][0][0]=="-")
                            {
                            
$nkanaly[]=implode(" ",$kanaly[$i]);
                            }
                        elseif(
$kanaly[$i][0][0]!="#")
                            {
                            
$file=@file_get_contents("http://".$kanaly[$i][0]); // načtení zdroje
                            
$fingerprint=preg_replace('/\s*/',"",@xslt_transform($file,"feeds-url.xsl"));
                            
$md5=md5($fingerprint);
                            
$new=($kanaly[$i][2]!=$md5)?"*":"";
                            
$fout=fopen("data/".preg_replace('/\W/',"-",$kanaly[$i][0]).".xml","wb");
                            
fputs($fout,$file,strlen($file));
                            
fclose($fout);
                            
$nkanaly[]="{$kanaly[$i][0]} $new $md5";
                            
$kanaly[$i][1]=$new;
                            }
                        }
                    
$nkf=$fout=fopen("data/kanaly.txt","wb");
                    
fputs($nkf,implode("\n",$nkanaly),strlen(implode("\n",$nkanaly)));
                    
fclose($nkf);
                    
$mod=time();
                    }
                echo
"<p>Poslední aktualizace: <strong>".date ("j. n. Y, H:i",$mod)."</strong>. ";
                if(
time()-$mod>900) echo"<a href='?update=1'>Aktualizovat. (Bude to chvilku trvat.)</a>";
                echo
"</p><div id='ctecka'>";
                for(
$i=0;$i<count($kanaly);$i++)
                    {
                    if(
$kanaly[$i][0][0]=="-")
                        {
                        echo(
$i?"</ul>":"")."<h2>".substr(implode(" ",$kanaly[$i]),1)."</h2><ul>";
                        }
                    elseif(
$kanaly[$i][0][0]!="#")
                        {
                        
$file=@file_get_contents("data/".preg_replace('/\W/',"-",$kanaly[$i][0]).".xml"); // načtení zdroje
                        
if($file)
                            {
                            
preg_match("/\<\?xml[^>]+encoding=[\"']([a-zA-Z0-9\-]+)[\"']/i"$file$pole); // zjištění kódování
                            
$charset=$pole[1]?$pole[1]:"utf-8"// pokud nebylo uvedeno, použije se utf-8
                            
$charset=preg_replace("/windows\-/i","CP",$charset); // pokud je windows, převede argument pro funkci iconv()
                            
if(strtolower($charset)!="utf-8"// pokud je jiné kódování než utf-8
                                
{
                                
$file=iconv($charset."//TRANSLIT","utf-8",$file); // převede se na utf-8
                                
$file=preg_replace("/\<\?xml([^>]+)(encoding=[\"']([a-zA-Z0-9\-]+)[\"'])/i""<?xml\\1"$file); // odstraní údaj o kódování z xml
                                
}
                            
$params["new"]=$kanaly[$i][1];
                            
$vysledek=xslt_transform($file,"stylesheet.xsl",$params); // provede xslt transormaci
                            
if($vysledek) echo $vysledek// pokud proběhla správně, vypíše výsledek
                            
else $errors[]="Nepodařilo se provést transformaci zdroje: http://".str_replace("&","&amp;",$kanaly[$i][0]);
                            }
                        else 
$errors[]="Nepodařilo se načíst zdroj: http://".str_replace("&","&amp;",$kanaly[$i][0]);
                        }
                    }
                echo
"</ul></div>";
                if(
count($errors))echo "<h3>Chyby:</h3><ul><li>".implode("</li><li>",$errors)."</li></ul>"?>