[php-apt-parser-maint] r22 - /branches/des/parse-apt-files.inc
php-apt-parser-maint at lists.alioth.debian.org
php-apt-parser-maint at lists.alioth.debian.org
Sun Nov 19 04:00:59 CET 2006
Author: dleidert-guest
Date: Sun Nov 19 04:00:59 2006
New Revision: 22
URL: http://svn.debian.org/wsvn/php-apt-parser/?sc=1&rev=22
Log:
Just a few cosmetic changes.
Modified:
branches/des/parse-apt-files.inc
Modified: branches/des/parse-apt-files.inc
URL: http://svn.debian.org/wsvn/php-apt-parser/branches/des/parse-apt-files.inc?rev=22&op=diff
==============================================================================
--- branches/des/parse-apt-files.inc (original)
+++ branches/des/parse-apt-files.inc Sun Nov 19 04:00:59 2006
@@ -16,7 +16,7 @@
// Note that the result may contain several versions of the same package
function parse_packages( $filename )
{
- $lines = (strpos( $filename, '.gz' ) !== False)
+ $lines = (strpos($filename, ".gz") !== False)
? gzfile($filename) : file($filename);
$i = -1;
@@ -27,7 +27,7 @@
foreach( $lines as $line )
{
$matches = Array();
- if ( preg_match( "/^([^ ]*):( )?(.*)$/", $line, $matches ))
+ if ( preg_match("/^([^ ]*):( )?(.*)$/", $line, $matches) )
{
if ( $curtag !== false && $i >= 0 )
$res[$i][1][$curtag] = $value;
@@ -43,11 +43,11 @@
{
if ( trim($line) !== "." )
{
- if ( $newtag || substr( $line, 0, 2 ) == " " )
+ if ( $newtag || substr($line, 0, 2) == " " )
$value .= "\n";
else
$value .= " ";
- $value .= trim( $line );
+ $value .= trim($line);
}
else $value .= "\n\n";
$newtag = false;
@@ -62,10 +62,10 @@
// Convert given byte-size to more human readable format
function human_format_size( $bytes )
{
- $formats = Array("%d Bytes", "%.1f KB", "%.1f MB", "%.1f GB", "%.1f
-TB");
+ $formats = Array("%d Bytes", "%.1f KB", "%.1f MB", "%.1f GB",
+ "%.1f TB");
$logsize = min((int)(log($bytes)/log(1024)), count($formats)-1);
- return sprintf( $formats[$logsize], $bytes/pow(1024, $logsize));
+ return sprintf($formats[$logsize], $bytes/pow(1024, $logsize));
}
// Extract URLs from text, make them links and output
@@ -73,161 +73,168 @@
function link_aware_htmlize( $txt )
{
$res = "";
- $linkpattern = '!([a-z]+://[^ \n \)$]+)!is';
- $frags = preg_split( $linkpattern, $txt, -1, PREG_SPLIT_DELIM_CAPTURE);
+ $linkpattern = "!([a-z]+://[^ \n \)$]+)!is";
+ $frags = preg_split($linkpattern, $txt, -1, PREG_SPLIT_DELIM_CAPTURE);
foreach( $frags as $f )
{
- if ( preg_match( $linkpattern, $f ))
- $res .= '<a href="' . htmlentities($f) . '">' . htmlentities
-($f) . '</a>';
+ if ( preg_match($linkpattern, $f) )
+ $res .= "<a href=\"" . htmlentities($f) . "\">" .
+ htmlentities($f) . "</a>";
else
- $res .= htmlentities( $f );
- }
- return str_replace( "\n", "<br/>\n", $res );
+ $res .= htmlentities($f);
+ }
+ return str_replace("\n", "<br/>\n", $res);
}
function parse_section( $section )
{
$res = "<span class=\"section\">";
- if ( preg_match( "!(contrib/[a-z]+)!is", $section ))
- $res .= ', <span class="contrib">contrib</span>';
- else if ( preg_match( "!(non-free/[a-z]+)!is", $section ))
- $res .= ', <span class="nonfree">non-free</span>';
+ if ( preg_match("!(contrib/[a-z]+)!is", $section) )
+ $res .= ", <span class=\"contrib\">contrib</span>";
+ else if ( preg_match("!(non-free/[a-z]+)!is", $section) )
+ $res .= ", <span class=\"nonfree\">non-free</span>";
else
- $res .= ', <span class="main">main</span>';
+ $res .= ", <span class=\"main\">main</span>";
return $res . "</span>";
}
// Parse given files and write out a nice summary in HTML
function parse_and_list( $packagesgzfiles, $sourcesgzfile,
-$shared_changesdir = False, $shared_buildlogsdir = False )
+ $shared_changesdir = False,
+ $shared_buildlogsdir = False )
{
global $base_url;
- if (!is_array($sourcesgzfile))
+ if ( !is_array($sourcesgzfile) )
$sourcesgzfile = Array($sourcesgzfile);
// Rebuild sources array
$sources = Array();
foreach( $sourcesgzfile as $f )
{
- $sources_temp = parse_packages( $f );
- while( list($i, $p) = each( $sources_temp ))
+ $sources_temp = parse_packages($f);
+ while( list($i, $p) = each($sources_temp) )
$sources[$p[0]] = $p[1];
}
- if (!is_array($packagesgzfiles))
+ if ( !is_array($packagesgzfiles) )
$packagesgzfiles = Array($packagesgzfiles);
// Merge different architectures into one $packages array
$packages = Array();
foreach( $packagesgzfiles as $f )
{
- $pkgs = parse_packages( $f );
- while( list($i, $p) = each( $pkgs ))
- {
- $name_and_ver = $p[0] . '-' . $p[1]['Version'];
- if (!isset($packages[$name_and_ver]))
+ $pkgs = parse_packages($f);
+ while( list($i, $p) = each($pkgs) )
+ {
+ $name_and_ver = $p[0] . "-" . $p[1]["Version"];
+ if ( !isset($packages[$name_and_ver]) )
$packages[$name_and_ver] = Array();
- $packages[$name_and_ver][$p[1]['Architecture']] = $p;
+ $packages[$name_and_ver][$p[1]["Architecture"]] = $p;
}
}
// Walk through the packages and print out the info
- while( list($name_and_ver, $archs) = each( $packages ))
+ while( list($name_and_ver, $archs) = each($packages) )
{
print "<div class=\"package\">\n";
// $first = false;
// use the first arch for description etc.
- ksort( $archs );
+ ksort($archs);
list($pkg, $fields) = reset($archs);
$srcfields = false;
- if ( isset( $fields["Source"] ) &&
- isset( $sources[$fields["Source"]] ))
+ if ( isset($fields["Source"]) &&
+ isset($sources[$fields["Source"]]) )
$srcfields = $sources[$fields["Source"]];
- else if ( isset( $sources[$pkg] ))
+ else if ( isset($sources[$pkg]) )
$srcfields = $sources[$pkg];
- print '<span class="name">' .
- htmlentities( $fields["Package"] ) . '</span> '.
- '<span class="version">(' . htmlentities( $fields["Version"] ) .
- parse_section( $fields["Section"] ) . ')</span>' . "\n";
-
- if ( strlen(trim($fields["Description"])))
- print ' - <span class="short_description">' . htmlentities( preg_replace( '/[\n].*/', '',
- $fields["Description"] ));
+ print "<span class=\"name\">" .
+ htmlentities($fields["Package"]) . "</span> " .
+ "<span class=\"version\">(" .
+ htmlentities($fields["Version"]) .
+ parse_section($fields["Section"]) . ")</span>" .
+ "\n";
+
+ if ( strlen(trim($fields["Description"])) )
+ print " - <span class=\"short_description\">" .
+ htmlentities(preg_replace("/[\n].*/", "",
+ $fields["Description"]));
print "</span><br/>\n";
$archlinks = Array();
- while( list($arch_name, list(, $arch_fields)) = each( $archs ))
- $archlinks[] = '<a href="' .
- htmlentities( $base_url ) .
- htmlentities( $arch_fields["Filename"] ) . '">' .
- htmlentities( $arch_name ) . ' (' .
- human_format_size( $arch_fields["Size"]) . ")</a>";
- print 'Binary for arch <span class="archs">' . join(', ', $archlinks) . "</span>\n";
+ while( list($arch_name, list(, $arch_fields)) = each($archs) )
+ $archlinks[] = "<a href=\"" .
+ htmlentities($base_url) .
+ htmlentities($arch_fields["Filename"]) . "\">" .
+ htmlentities($arch_name) . " (" .
+ human_format_size($arch_fields["Size"]) . ")</a>";
+ print "Binary for arch <span class=\"archs\">" .
+ join(", ", $archlinks) . "</span>\n";
- // Figure out the most likely location for 'changes' file.
+ // Figure out the most likely location for "changes" file.
$changesdir = False;
if ( $shared_changesdir !== False )
$changesdir = $shared_changesdir;
- else if (isset($srcfields["Directory"]))
+ else if ( isset($srcfields["Directory"]) )
$changesdir = $srcfields["Directory"];
else
{
$changesdir = pathinfo($some_bin);
- $changesdir = $changesdir['dirname'];
+ $changesdir = $changesdir["dirname"];
}
$buildlogsdir = False;
if ( $shared_buildlogsdir !== False )
$buildlogsdir = $shared_buildlogsdir;
- else if (isset($srcfields["Directory"]))
+ else if ( isset($srcfields["Directory"]) )
$buildlogsdir = $srcfields["Directory"];
else
{
$buildlogsdir = pathinfo($some_bin);
- $buildlogsdir = $buildlogsdir['dirname'];
+ $buildlogsdir = $buildlogsdir["dirname"];
}
// If sources are available, print out location.
- if ( isset( $srcfields["Directory"] ))
- {
- print '| <a href="' .
- htmlentities( $base_url ) .
- htmlentities( $srcfields["Directory"] ) .
- '">Source dir</a>' . "\n";
+ if ( isset($srcfields["Directory"]) )
+ {
+ print "| <a href=\"" .
+ htmlentities($base_url) .
+ htmlentities($srcfields["Directory"]) .
+ "\">Source dir</a>" . "\n";
}
// Try to make a changes file link. This adds quite a bit
// of disk access so if your server is very busy, you might
// want to comment this out.
- if ($changesdir !== False && $dhandle = opendir( $changesdir ))
+ if ( $changesdir !== False && $dhandle = opendir($changesdir) )
{
$chfile = False;
- while (false !== ($file = readdir($dhandle)))
+ while ( false !== ($file = readdir($dhandle)) )
{
// Packages with multiple binaries or a source-package
// name != binary-package name normally have a Source-field
// in Packages(.{gz,bz2}).
- if ( isset($fields["Source"] ))
- {
- if (strpos($file, $fields["Source"] . '_' .
-preg_replace('/^[0-9]+\:/', '', $fields["Version"])) !== False &&
- strpos($file, '.changes') !== False )
+ if ( isset($fields["Source"]) )
+ {
+ if ( strpos($file, $fields["Source"] . "_" .
+ preg_replace("/^[0-9]+\:/", "",
+ $fields["Version"])) !== False &&
+ strpos($file, ".changes") !== False )
$chfile = $file;
}
// If there is no Source-field, just try to use the
// Packages-field in Sources(.{gz,bz2}).
- else if ( isset( $srcfields["Package"] ))
- {
- if (strpos($file, $srcfields["Package"] . '_' .
-preg_replace('/^[0-9]+\:/', '', $fields["Version"])) !== False &&
- strpos($file, '.changes') !== False )
+ else if ( isset($srcfields["Package"]) )
+ {
+ if ( strpos($file, $srcfields["Package"] . "_" .
+ preg_replace("/^[0-9]+\:/", "",
+ $fields["Version"])) !== False &&
+ strpos($file, ".changes") !== False )
$chfile = $file;
}
// And at least simply try the Package-field from
@@ -235,24 +242,25 @@
// a Sources(.{gz,bz2}) entry.
else
{
- if (strpos($file, $fields["Package"] . '_' .
-preg_replace('/^[0-9]+\:/', '', $fields["Version"])) !== False &&
- strpos($file, '.changes') !== False )
+ if ( strpos($file, $fields["Package"] . "_" .
+ preg_replace("/^[0-9]+\:/", "",
+ $fields["Version"])) !== False &&
+ strpos($file, ".changes") !== False )
$chfile = $file;
}
if ( $chfile !== False )
{
- print '| <a href="' .
- htmlentities( $base_url ) .
- htmlentities( preg_replace ( "!.*" .
- preg_replace(
+ print "| <a href=\"" .
+ htmlentities($base_url) .
+ htmlentities(preg_replace("!.*" .
+ preg_replace(
"!.*(/[^/]+/?)$!",
- '$1',
+ "$1",
$base_url) .
"(.*)!", "$1",
$changesdir) .
- '/' . $chfile ) .
- '">Changes</a>' . "\n";
+ "/" . $chfile) .
+ "\">Changes</a>" . "\n";
break;
}
}
@@ -262,53 +270,54 @@
// Try to make a build-log file link. This adds quite a bit
// of disk access so if your server is very busy, you might
// want to comment this out.
- if ($buildlogsdir !== False && $dhandle = opendir( $buildlogsdir ))
+ if ( $buildlogsdir !== False && $dhandle = opendir($buildlogsdir) )
{
$blfile = False;
- while (false !== ($file = readdir($dhandle)))
+ while ( false !== ($file = readdir($dhandle)) )
{
// Packages with multiple binaries or a source-package
// name != binary-package name normally have a Source-field
// in Packages(.{gz,bz2}).
- if ( isset($fields["Source"] ))
- {
- if (strpos($file, $fields["Source"] . '_' .
-preg_replace('/^[0-9]+\:/', '', $fields["Version"])) !== False &&
- strpos($file, '.build') !== False )
- $blfile = $file;
+ if ( isset($fields["Source"]) )
+ {
+ if ( strpos($file, $fields["Source"] . "_" .
+ preg_replace("/^[0-9]+\:/", "",
+ $fields["Version"])) !== False &&
+ strpos($file, ".changes") !== False )
}
// If there is no Source-field, just try to use the
// Packages-field in Sources(.{gz,bz2}).
- else if ( isset( $srcfields["Package"] ))
- {
- if (strpos($file, $srcfields["Package"] . '_' .
-preg_replace('/^[0-9]+\:/', '', $fields["Version"])) !== False &&
- strpos($file, '.build') !== False )
- $blfile = $file;
+ else if ( isset($srcfields["Package"]) )
+ {
+ if ( strpos($file, $srcfields["Package"] . "_" .
+ preg_replace("/^[0-9]+\:/", "",
+ $fields["Version"])) !== False &&
+ strpos($file, ".changes") !== False )
}
// And at least simply try the Package-field from
// Packages(.{gz,bz2}) for those packages, that do not have
// a Sources(.{gz,bz2}) entry.
else
{
- if (strpos($file, $fields["Package"] . '_' .
-preg_replace('/^[0-9]+\:/', '', $fields["Version"])) !== False &&
- strpos($file, '.build') !== False )
+ if ( strpos($file, $fields["Package"] . "_" .
+ preg_replace("/^[0-9]+\:/", "",
+ $fields["Version"])) !== False &&
+ strpos($file, ".changes") !== False )
$blfile = $file;
}
if ( $blfile !== False )
{
- print '| <a href="' .
- htmlentities( $base_url ) .
- htmlentities( preg_replace ( "!.*" .
- preg_replace(
+ print "| <a href=\"" .
+ htmlentities($base_url) .
+ htmlentities(preg_replace("!.*" .
+ preg_replace(
"!.*(/[^/]+/?)$!",
- '$1',
+ "$1",
$base_url) .
"(.*)!", "$1",
$buildlogsdir) .
- '/' . $blfile ) .
- '">Build-Log</a>' . "\n";
+ "/" . $blfile) .
+ "\">Build-Log</a>" . "\n";
break;
}
}
@@ -316,12 +325,11 @@
}
print "<br/><br/>\n" .
- "<blockquote><p class=\"description\">\n" .
- link_aware_htmlize(
- preg_replace( '/^[^\n]*\n/', '',
- $fields["Description"] )) .
- "\n</p>\n" .
- "</blockquote>\n</div>\n";
+ "<blockquote><p class=\"description\">\n" .
+ link_aware_htmlize(
+ preg_replace("/^[^\n]*\n/", "", $fields["Description"])) .
+ "\n</p>\n" .
+ "</blockquote>\n</div>\n";
}
}
?>
More information about the php-apt-parser-maint
mailing list