ID=$ID; $this->jmeno=$jmeno; $this->pokrok=$pokrok; } function store ($fp) { $ln="\r\n"; fputs($fp,$this->jmeno.$ln); fputs($fp,$this->pokrok.$ln); } } class Progress { var $nazev; var $pocet=0; var $polozky = array (); var $filename; var $ln="\r\n"; function Progress ($nazev="",$filename="") { $this->nazev=$nazev; if ($filename) { $this->filename = $filename; if (file_exists($filename)) $this->updateFromFile(); } else $this->filename = tempnam ("/tmp", "phpProgress"); } function AddTask ($Atask) { if (is_array($Atask)) { $Atask=$this->MakeTaskArray($Atask); $this->polozky[$this->pocet]=$Atask; $this->pocet++; $this->Updated(); } } function MakeTaskArray($Atask) { $task["ID"]=$Atask[0]; $task["jmeno"]=$Atask[1]; $task["pokrok"]=$Atask[2]; return $task; } function DeleteAllTasks () { $this->polozky=null; $this->pocet=0; $this->Updated(); } function CloseWin() { //$this->pocet=9999; //$this->Updated(); } function UpdateTask ($ID,$pokrok) { for ($i=0;$i<$this->pocet;$i++) if ($this->polozky[$i]["ID"]==$ID) break; $this->polozky[$i]["pokrok"]=$pokrok; $this->Updated(); } function Updated() { $fp=fopen($this->filename,"w"); fputs($fp,$this->pocet.$this->ln); if (is_array($this->polozky)) reset ($this->polozky); for ($i=0;$i<$this->pocet;$i++) { $this->StoreTask($fp,$this->polozky[$i]); } fclose ($fp); } function StoreTask ($fp,$tsk) { $ln="\r\n"; fputs($fp,$tsk["jmeno"].$ln); fputs($fp,$tsk["pokrok"].$ln); } function updateFromFile() { $fa=file($this->filename); for ($i=0;$ipocet=$fa[0]; $this->DeleteAllTasks (); if ($this->pocet!=9999) for ($i=0;$i<$this->pocet;$i++) $this->AddTask(array($fa[2*$i+1],$fa[2*$i+1],$fa[2*$i+2])); if (is_array($this->polozky)) reset ($this->polozky); } function makeAppletTag() { return makeAppletTagEx ($this->filename); } function makeOpenWindowCommand($akce) { return "img=ProgressWinOpen(\"$akce\");"; } function printOpenWindowScript() { printOpenWindowScriptEx($this->filename); } function destroy () { unlink ($this->filename); } } function makeAppletTagEx($fn) { global $scripts_path; // if (ereg ("Microsoft",getenv ("SERVER_SOFTWARE")) || getenv ("CMDLINE")=="WIN") // { $nfn=/*substr(getenv ("PATH_TRANSLATED"),0,2).*/ereg_replace("/","\\\\",$fn); // $fn=$nfn; // } // $adresa="http://".getenv("SERVER_NAME") . getenv("SCRIPT_NAME") ; // $adresa=substr($adresa,0,strrpos($adresa,"/")+1); $adresa=""; $ret.= ""; $ret.= ""; $ret.= ""; return $ret; } function printOpenWindowScriptEx($fn) { $ln="\r\n"; $ret.= "$ln"; print $ret; } function printCloseWindowScriptEx() { $ln="\r\n"; $ret.= "$ln"; print $ret; } ?>