- From: Ville Skytta via cvs-syncmail <cvsmail@w3.org>
- Date: Thu, 01 Oct 2009 16:06:02 +0000
- To: www-validator-cvs@w3.org
Update of /sources/public/perl/modules/W3C/LinkChecker/bin
In directory hutz:/tmp/cvs-serv9405/bin
Modified Files:
checklink
Log Message:
Add "progress bar" for estimating progress on checking links in one document.
Index: checklink
===================================================================
RCS file: /sources/public/perl/modules/W3C/LinkChecker/bin/checklink,v
retrieving revision 4.165
retrieving revision 4.166
diff -u -d -r4.165 -r4.166
--- checklink 1 Oct 2009 16:01:29 -0000 4.165
+++ checklink 1 Oct 2009 16:06:00 -0000 4.166
@@ -343,20 +343,22 @@
<meta name="generator" content="%s" />
<link rel="stylesheet" type="text/css" href="%s" />
<script type="text/javascript">
-function scroll_bottom(progress_pre_id)
-{
- var progressPre = document.getElementById(progress_pre_id);
- progressPre.scrollTop = progressPre.scrollHeight;
-}
-function show_progress(progress_text, progress_head_id, progress_pre_id)
+function show_progress(progress_id, progress_text, progress_percentage)
{
- var progressHead = document.getElementById(progress_head_id);
- var txt = document.createTextNode(progress_text);
- var oChild = progressHead.childNodes[1];
- var oNewChild = document.createElement("span");
- oNewChild.appendChild(txt);
- progressHead.replaceChild(oNewChild, oChild);
- scroll_bottom(progress_pre_id);
+ var div = document.getElementById("progress" + progress_id);
+
+ var head = div.getElementsByTagName("h3")[0];
+ var text = document.createTextNode(progress_text);
+ var span = document.createElement("span");
+ span.appendChild(text);
+ head.replaceChild(span, head.getElementsByTagName("span")[0]);
+
+ var bar = div.getElementsByTagName("div")[0];
+ bar.firstChild.style.width = progress_percentage;
+ bar.title = progress_percentage;
+
+ var pre = div.getElementsByTagName("pre")[0];
+ pre.scrollTop = pre.scrollHeight;
}
</script>
EOF
@@ -994,8 +996,12 @@
&encode(sprintf($Cfg{CSS_Validator_URI}, $esc_uri)),
&encode($Opts{_Self_URI}));
- printf ('<h3 class="status_progress" id="status_progress%s">Status: <span></span></h3>', $result_anchor);
- printf("<pre class=\"progress\" id=\"pre_progress%s\">\n", $result_anchor);
+ printf(<<EOF, $result_anchor);
+<div class="progress" id="progress%s">
+<h3>Status: <span></span></h3>
+<div class="progressbar"><div></div></div>
+<pre>
+EOF
}
}
@@ -1069,9 +1075,14 @@
}
# Build the list of broken URI's
- &hprintf("Checking %d links to build list of broken URI's\n", scalar (keys %links))
+
+ my $nlinks = scalar(keys(%links));
+
+ &hprintf("Checking %d links to build list of broken URI's\n", $nlinks)
if ($Opts{Verbose});
+
my %broken;
+ my $link_num = 0;
while (my ($u, $ulinks) = each(%links)) {
if ($Opts{Summary_Only}) {
@@ -1079,9 +1090,11 @@
print ' ' if ($Opts{HTML} && !$Opts{Command_Line});
} else {
&hprintf("\nChecking link %s\n", $u);
- printf('<script type="text/javascript">show_progress("Checking link %s", "status_progress%s", "pre_progress%s");</script>' , &encode($u), $result_anchor, $result_anchor)
+ my $progress = ($link_num/$nlinks) * 100;
+ printf('<script type="text/javascript">show_progress("%s", "Checking link %s", "%.1f%%");</script>', $result_anchor, &encode($u), $progress)
if (!$Opts{Command_Line} && $Opts{HTML} && !$Opts{Summary_Only});
}
+ $link_num++;
# Check that a link is valid
&check_validity($uri, $u,
@@ -1122,12 +1135,12 @@
}
&hprintf("\nProcessed in %s seconds.\n", &time_diff($start, &get_timestamp()))
unless $Opts{Summary_Only};
- printf('<script type="text/javascript">show_progress("Done. Document processed in %s seconds.", "status_progress%s", "pre_progress%s");</script>' , &time_diff($start, &get_timestamp()), $result_anchor, $result_anchor)
+ printf('<script type="text/javascript">show_progress("%s", "Done. Document processed in %s seconds.", "100%");</script>', $result_anchor, &time_diff($start, &get_timestamp()))
if ($Opts{HTML} && !$Opts{Summary_Only});
# Display results
if ($Opts{HTML} && !$Opts{Summary_Only}) {
- print("</pre>\n");
+ print("</pre>\n</div>\n");
printf("<h2><a name=\"%s\">Results</a></h2>\n", $result_anchor);
}
print "\n" unless $Opts{Quiet};
Received on Thursday, 1 October 2009 16:06:03 UTC