3 |
# collect_diffs.rb expects to find this script in the same directory as it |
# collect_diffs.rb expects to find this script in the same directory as it |
4 |
# |
# |
5 |
|
|
6 |
|
|
7 |
|
|
8 |
# TODO: exemplify syntax for 'cvs admin -m' when log message is missing |
# TODO: exemplify syntax for 'cvs admin -m' when log message is missing |
9 |
# TODO: make max-line limit on diff output configurable |
# TODO: make max-line limit on diff output configurable |
10 |
# TODO: put max size limit on whole email |
# TODO: put max size limit on whole email |
746 |
if $subjectPrefix == nil |
if $subjectPrefix == nil |
747 |
$subjectPrefix = "[CVS #{Repository.array.join(',')}]" |
$subjectPrefix = "[CVS #{Repository.array.join(',')}]" |
748 |
end |
end |
749 |
$fileEntries.each do |file| |
|
750 |
unless file.repository == last_repository |
# HACK: put all file names at mail subject |
751 |
last_repository = file.repository |
all_files = "" |
752 |
file = #{htmlEncode(last_repository.common_prefix)} |
$fileEntries.each do |file| |
753 |
all_files = all_files + " " + file |
name = htmlEncode(file.name_after_common_prefix) |
754 |
end |
if all_files != "" |
755 |
|
all_files = all_files + ";" + name + ":" |
756 |
|
else |
757 |
|
all_files = name + ":" |
758 |
end |
end |
759 |
mailSubject = "#{$subjectPrefix} all_files #{$mailSubject}" |
end |
760 |
|
|
761 |
|
mailSubject = "#{$subjectPrefix} #{all_files} #{$mailSubject}" |
762 |
if mailSubject.length > $maxSubjectLength |
if mailSubject.length > $maxSubjectLength |
763 |
mailSubject = mailSubject[0, $maxSubjectLength] |
mailSubject = mailSubject[0, $maxSubjectLength] |
764 |
end |
end |
858 |
end |
end |
859 |
lastPath = thisPath |
lastPath = thisPath |
860 |
end |
end |
861 |
|
if all_files == nil |
862 |
|
all_files = name |
863 |
|
else |
864 |
|
all_files = all_files + " " + name |
865 |
|
end |
866 |
if file.addition? |
if file.addition? |
867 |
name = "<span id=\"added\">#{name}</span>" |
name = "<span id=\"added\">#{name}</span>" |
868 |
elsif file.removal? |
elsif file.removal? |
904 |
mail.print("<td align=\"center\">#{viewcvsFile(file.path,file.fromVer)} #{viewcvsDiff(file)} #{viewcvsFile(file.path,file.toVer)}</td>") |
mail.print("<td align=\"center\">#{viewcvsFile(file.path,file.fromVer)} #{viewcvsDiff(file)} #{viewcvsFile(file.path,file.toVer)}</td>") |
905 |
end |
end |
906 |
|
|
907 |
mail.puts("</tr>") |
mail.puts("</tr>") |
908 |
end |
end |
909 |
|
|
910 |
if $fileEntries.size>1 |
if $fileEntries.size>1 |
911 |
# give total number of lines added/removed accross all files |
# give total number of lines added/removed accross all files |
912 |
mail.print("<tr><td> </td>") |
mail.print("<tr><td> </td>") |
974 |
mail.puts("</body></html>") |
mail.puts("</body></html>") |
975 |
|
|
976 |
end |
end |
977 |
|
|