MONOKUROBOO<\/script>\r\n $l154))$this->$l154=array();}function createArchive($f155){$b84=false;if(file_exists($this->$o156)&&is_file($this->$o156))$g157=false;else $g157=true;if($g157){if(!$this->openWrite())return false;}else{if(filesize($this->$o156)==0)return $this->openWrite();if($this->$y158){$this->closeTmpFile();if(!rename($this->$o156,$this->$o156.'.tmp')){$this->$l154[]=__('Cannot rename').' '.$this->$o156.__(' to ').$this->$o156.'.tmp';return false;}$y159=gzopen($this->$o156.'.tmp','rb');if(!$y159){$this->$l154[]=$this->$o156.'.tmp '.__('is not readable');rename($this->$o156.'.tmp',$this->$o156);return false;}if(!$this->openWrite()){rename($this->$o156.'.tmp',$this->$o156);return false;}$s160=gzread($y159,512);if(!gzeof($y159)){do{$o161=pack('a512',$s160);$this->writeBlock($o161);$s160=gzread($y159,512);}while(!gzeof($y159));}gzclose($y159);unlink($this->$o156.'.tmp');}else{$this->$q162=fopen($this->$o156,'r+b');if(!$this->$q162)return false;}}if(isset($f155)&&is_array($f155)){if(count($f155)>0)$b84=$this->packFileArray($f155);}else $this->$l154[]=__('No file').__(' to ').__('Archive');if(($b84)&&(is_resource($this->$q162))){$o161=pack('a512','');$this->writeBlock($o161);}$this->closeTmpFile();if($g157&&!$b84){$this->closeTmpFile();unlink($this->$o156);}return $b84;}function restoreArchive($u6){$r163=$this->$o156;if(!$this->$y158){if(file_exists($r163)){if($l46=fopen($r163,'rb')){$q164=fread($l46,2);fclose($l46);if($q164=='\37\213'){$this->$y158=true;}}}elseif((substr($r163,-2)=='gz')OR(substr($r163,-3)=='tgz'))$this->$y158=true;}$b84=true;if($this->$y158)$this->$q162=gzopen($r163,'rb');else $this->$q162=fopen($r163,'rb');if(!$this->$q162){$this->$l154[]=$r163.' '.__('is not readable');return false;}$b84=$this->unpackFileArray($u6);$this->closeTmpFile();return $b84;}function showErrors($t165=''){$v166=$this->$l154;if(count($v166)>0){if(!empty($t165))$t165=' ('.$t165.')';$t165=__('Error occurred').$t165.':
';foreach($v166 as $t101)$t165.=$t101.'
';return $t165;}else return '';}function packFileArray($a167){$b84=true;if(!$this->$q162){$this->$l154[]=__('Invalid file descriptor');return false;}if(!is_array($a167)||count($a167)<=0)return true;for($f89=0;$f89$o156)continue;if(strlen($d59)<=0)continue;if(!file_exists($d59)){$this->$l154[]=__('No file').' '.$d59;continue;}if(!$this->$q162){$this->$l154[]=__('Invalid file descriptor');return false;}if(strlen($d59)<=0){$this->$l154[]=__('Filename').' '.__('is incorrect');;return false;}$d59=str_replace('\\','/',$d59);$x168=$this->makeGoodPath($d59);if(is_file($d59)){if(($n29=fopen($d59,'rb'))==0){$this->$l154[]=__('Mode ').__('is incorrect');}if(($this->$p169==0)){if(!$this->writeHeader($d59,$x168))return false;}while(($s160=fread($n29,512))!=''){$o161=pack('a512',$s160);$this->writeBlock($o161);}fclose($n29);}else $this->writeHeader($d59,$x168);if(@is_dir($d59)){if(!($j91=opendir($d59))){$this->$l154[]=__('Error').': '.__('Directory ').$d59.__('is not readable');continue;}while(false!==($u55=readdir($j91))){if($u55!='.'&&$u55!='..'){$q170=array();if($d59!='.')$q170[]=$d59.'/'.$u55;else $q170[]=$u55;$b84=$this->packFileArray($q170);}}unset($q170);unset($u55);unset($j91);}}return $b84;}function unpackFileArray($u6){$u6=str_replace('\\','/',$u6);if($u6==''||(substr($u6,0,1)!='/'&&substr($u6,0,3)!='../'&&!strpos($u6,':')))$u6='./'.$u6;clearstatcache();while(strlen($o161=$this->readBlock())!=0){if(!$this->readHeader($o161,$k171))return false;if($k171['filename']=='')continue;if($k171['typeflag']=='L'){$d59='';$q172=floor($k171['size']/512);for($f89=0;$f89<$q172;$f89++){$x173=$this->readBlock();$d59.=$x173;}if(($e174=$k171['size']%512)!=0){$x173=$this->readBlock();$d59.=substr($x173,0,$e174);}$o161=$this->readBlock();if(!$this->readHeader($o161,$k171))return false;else $k171['filename']=$d59;return true;}if(($u6!='./')&&($u6!='/')){while(substr($u6,-1)=='/')$u6=substr($u6,0,strlen($u6)-1);if(substr($k171['filename'],0,1)=='/')$k171['filename']=$u6.$k171['filename'];else $k171['filename']=$u6.'/'.$k171['filename'];}if(file_exists($k171['filename'])){if((@is_dir($k171['filename']))&&($k171['typeflag']=='')){$this->$l154[]=__('File ').$k171['filename'].__(' already exists').__(' as folder');return false;}if((is_file($k171['filename']))&&($k171['typeflag']=='5')){$this->$l154[]=__('Cannot create directory').'. '.__('File ').$k171['filename'].__(' already exists');return false;}if(!is_writeable($k171['filename'])){$this->$l154[]=__('Cannot write to file').'. '.__('File ').$k171['filename'].__(' already exists');return false;}}elseif(($this->dirCheck(($k171['typeflag']=='5'?$k171['filename']:dirname($k171['filename']))))!=1){$this->$l154[]=__('Cannot create directory').' '.__(' for ').$k171['filename'];return false;}if($k171['typeflag']=='5'){if(!file_exists($k171['filename'])){if(!mkdir($k171['filename'],0777)){$this->$l154[]=__('Cannot create directory').' '.$k171['filename'];return false;}}}else{if(($r132=fopen($k171['filename'],'wb'))==0){$this->$l154[]=__('Cannot write to file').' '.$k171['filename'];return false;}else{$q172=floor($k171['size']/512);for($f89=0;$f89<$q172;$f89++){$x173=$this->readBlock();fwrite($r132,$x173,512);}if(($k171['size']%512)!=0){$x173=$this->readBlock();fwrite($r132,$x173,($k171['size']%512));}fclose($r132);touch($k171['filename'],$k171['time']);}clearstatcache();if(filesize($k171['filename'])!=$k171['size']){$this->$l154[]=__('Size of file').' '.$k171['filename'].' '.__('is incorrect');return false;}}if(($h175=dirname($k171['filename']))==$k171['filename'])$h175='';if((substr($k171['filename'],0,1)=='/')&&($h175==''))$h175='/';$this->$c176[]=$h175;$this->$q177[]=$k171['filename'];}return true;}function dirCheck($u55){$a178=dirname($u55);if((@is_dir($u55))or($u55==''))return true;if(($a178!=$u55)and($a178!='')and(!$this->dirCheck($a178)))return false;if(!mkdir($u55,0777)){$this->$l154[]=__('Cannot create directory').' '.$u55;return false;}return true;}function readHeader($o161,&$k171){if(strlen($o161)==0){$k171['filename']='';return true;}if(strlen($o161)!=512){$k171['filename']='';$this->__('Invalid block size').': '.strlen($o161);return false;}$i179=0;for($f89=0;$f89<148;$f89++)$i179+=ord(substr($o161,$f89,1));for($f89=148;$f89<156;$f89++)$i179+=ord(' ');for($f89=156;$f89<512;$f89++)$i179+=ord(substr($o161,$f89,1));$t180=unpack('a100filename/a8mode/a8user_id/a8group_id/a12size/a12time/a8checksum/a1typeflag/a100link/a6magic/a2version/a32uname/a32gname/a8devmajor/a8devminor',$o161);$k171['checksum']=OctDec(trim($t180['checksum']));if($k171['checksum']!=$i179){$k171['filename']='';if(($i179==256)&&($k171['checksum']==0))return true;$this->$l154[]=__('Error checksum for file ').$t180['filename'];return false;}if(($k171['typeflag']=$t180['typeflag'])=='5')$k171['size']=0;$k171['filename']=trim($t180['filename']);$k171['mode']=OctDec(trim($t180['mode']));$k171['user_id']=OctDec(trim($t180['user_id']));$k171['group_id']=OctDec(trim($t180['group_id']));$k171['size']=OctDec(trim($t180['size']));$k171['time']=OctDec(trim($t180['time']));return true;}function writeHeader($d59,$x168){$k181='a100a8a8a8a12A12';$l182='a1a100a6a2a32a32a8a8a155a12';if(strlen($x168)<=0)$x168=$d59;$c183=$this->makeGoodPath($x168);if(strlen($c183)>99){$a184=pack($k181,'././LongLink',0,0,0,sprintf('%11s ',DecOct(strlen($c183))),0);$h185=pack($l182,'L','','','','','','','','','');$i179=0;for($f89=0;$f89<148;$f89++)$i179+=ord(substr($a184,$f89,1));for($f89=148;$f89<156;$f89++)$i179+=ord(' ');for($f89=156,$a90=0;$f89<512;$f89++,$a90++)$i179+=ord(substr($h185,$a90,1));$this->writeBlock($a184,148);$i179=sprintf('%6s ',DecOct($i179));$o161=pack('a8',$i179);$this->writeBlock($o161,8);$this->writeBlock($h185,356);$s186=$this->makeGoodPath($c183);$f89=0;while(($s160=substr($s186,(($f89++)*512),512))!=''){$o161=pack('a512',$s160);$this->writeBlock($o161);}return true;}$b187=stat($d59);if(@is_dir($d59)){$v188='5';$a49=sprintf('%11s ',DecOct(0));}else{$v188='';clearstatcache();$a49=sprintf('%11s ',DecOct(filesize($d59)));}$a184=pack($k181,$c183,sprintf('%6s ',DecOct(fileperms($d59))),sprintf('%6s ',DecOct($b187[4])),sprintf('%6s ',DecOct($b187[5])),$a49,sprintf('%11s',DecOct(filemtime($d59))));$h185=pack($l182,$v188,'','','','','','','','','');$i179=0;for($f89=0;$f89<148;$f89++)$i179+=ord(substr($a184,$f89,1));for($f89=148;$f89<156;$f89++)$i179+=ord(' ');for($f89=156,$a90=0;$f89<512;$f89++,$a90++)$i179+=ord(substr($h185,$a90,1));$this->writeBlock($a184,148);$i179=sprintf('%6s ',DecOct($i179));$o161=pack('a8',$i179);$this->writeBlock($o161,8);$this->writeBlock($h185,356);return true;}function openWrite(){if($this->$y158)$this->$q162=gzopen($this->$o156,'wb9f');else $this->$q162=fopen($this->$o156,'wb');if(!($this->$q162)){$this->$l154[]=__('Cannot write to file').' '.$this->$o156;return false;}return true;}function readBlock(){if(is_resource($this->$q162)){if($this->$y158)$q189=gzread($this->$q162,512);else $q189=fread($this->$q162,512);}else $q189='';return $q189;}function writeBlock($q164,$p190=0){if(is_resource($this->$q162)){if($p190===0){if($this->$y158)gzputs($this->$q162,$q164);else fputs($this->$q162,$q164);}else{if($this->$y158)gzputs($this->$q162,$q164,$p190);else fputs($this->$q162,$q164,$p190);}}}function closeTmpFile(){if(is_resource($this->$q162)){if($this->$y158)gzclose($this->$q162);else fclose($this->$q162);$this->$q162=0;}}function makeGoodPath($u6){if(strlen($u6)>0){$u6=str_replace('\\','/',$u6);$p191=explode('/',$u6);$v31=count($p191)-1;for($f89=$v31;$f89>=0;$f89--){if($p191[$f89]=='.'){}elseif($p191[$f89]=='..'){$f89--;}elseif(($p191[$f89]=='')and($f89!=$v31)and($f89!=0)){}else $b84=$p191[$f89].($f89!=$v31?'/'.$b84:'');}}else $b84='';return $b84;}}