Paste the URL of a Virtuemart release to check:

Paste the URL of a Virtuemart update to check:

"; echo $downloadForm; } if (isset($_POST['download'])){ //$release_src = fopen($_POST['release'],"r"); //$release_dest = fopen($release_scanDir."/vm_release.zip","w"); //$update_src = fopen($_POST['update'],"r"); //$update_dest = fopen($update_scanDir."/vm_update.zip","w"); //stream_copy_to_stream($release_src, $release_dest); //stream_copy_to_stream($update_src, $update_dest); //zipExtract($release_scanDir."/vm_release.zip",$release_scanDir); //zipExtract($update_scanDir."/vm_update.zip",$update_scanDir); //unlink($release_scanDir."/vm_release.zip"); //unlink($update_scanDir."/vm_update.zip"); //unpackRelease($release_scanDir); compareRelease($release_scanDir); echo "

The following files have been modified from standard:

"; foreach ($releaseModified as $file){ echo ' '; } echo "
'.$file[0].' '.$file[1].' '.$file[2].'
"; } function compareRelease( $outerDir ){ global $basePath,$update_scanDir,$releaseModified; $dirs = array_diff( scandir( $outerDir ), Array( ".", ".." ) ); $dir_array = Array(); foreach( $dirs as $d ){ if( is_dir($outerDir."/".$d) ){ $dir_array[ $d ] = compareRelease( $outerDir."/".$d ); }else{ $dir_array[ $d ] = $d; switch($outerDir) { case stristr($outerDir,"admin_files")==true: $subdir = explode("/admin_files",$outerDir); $admin_com_vm_path = $basePath."/administrator/components/com_virtuemart".$subdir[1]; $update_path = $update_scanDir."/administrator/components/com_virtuemart".$subdir[1]; if (filesize($outerDir."/".$d) != @filesize($admin_com_vm_path."/".$d) && file_exists($admin_com_vm_path."/".$d)){ $update = file_exists($update_path."/".$d) ? "Y" : "N"; array_push($releaseModified,array($admin_com_vm_path."/".$d,"Y",$update)); } break; case stristr($outerDir,"frontend_files")==true: $subdir = explode("/frontend_files",$outerDir); $com_vm_path = $basePath."/components/com_virtuemart".$subdir[1]; $update_path = $update_scanDir."/components/com_virtuemart".$subdir[1]; if (filesize($outerDir."/".$d) != @filesize($com_vm_path."/".$d) && file_exists($com_vm_path."/".$d)){ $update = file_exists($update_path."/".$d) ? "Y" : "N"; array_push($releaseModified,array($com_vm_path."/".$d,"Y",$update)); } break; default: $admin_com_vm_path = $basePath."/administrator/components/com_virtuemart"; $update_path = $update_scanDir."/administrator/components/com_virtuemart"; if (filesize($outerDir."/".$d) != @filesize($admin_com_vm_path."/".$d) && file_exists($admin_com_vm_path."/".$d)){ $update = file_exists($update_path."/".$d) ? "Y" : "N"; array_push($releaseModified,array($admin_com_vm_path."/".$d,"Y",$update)); } break; } } } return $dir_array; } function unpackRelease( $outerDir ){ $dirs = array_diff( scandir( $outerDir ), Array( ".", ".." ) ); $dir_array = Array(); foreach( $dirs as $d ){ if( is_dir($outerDir."/".$d) ) $dir_array[ $d ] = unpackRelease( $outerDir."/".$d ); else $dir_array[ $d ] = $d; if(stristr($d,".zip")){ zipExtract($outerDir."/".$d,$outerDir."/".substr($d,0,-4)); unlink($outerDir."/".$d); } if(stristr($d,".tar.gz")){ system("cd ".$outerDir."; mkdir ".substr($d,0,-7)."; cd ".substr($d,0,-7)."; tar -xvf ".$outerDir."/".$d); unlink($outerDir."/".$d); } } return $dir_array; } function zipExtract($source,$dest){ $files = new ZipArchive; if ($files->open($source) === TRUE) { $files->extractTo($dest); $files->close(); } else { echo 'Extract FAIL! Source:'.$source.' Dest: '.$dest.'\r\n'; } } ?>