/**
  * Unzips compressed package archives.
  * 
  * @param 	string		$archive	filename
  * @return 	string		new filename
  */
 public static function unzipPackageArchive($archive)
 {
     if (!FileUtil::isURL($archive)) {
         $tar = new Tar($archive);
         $tar->close();
         if ($tar->isZipped()) {
             $tmpName = FileUtil::getTemporaryFilename('package_');
             if (FileUtil::uncompressFile($archive, $tmpName)) {
                 return $tmpName;
             }
         }
     }
     return $archive;
 }