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} file #{$mailSubject}" |
end |
760 |
|
all_files = all_files + ":" |
761 |
|
|
762 |
|
mailSubject = "#{$subjectPrefix} #{all_files} #{$mailSubject}" |
763 |
if mailSubject.length > $maxSubjectLength |
if mailSubject.length > $maxSubjectLength |
764 |
mailSubject = mailSubject[0, $maxSubjectLength] |
mailSubject = mailSubject[0, $maxSubjectLength] |
765 |
end |
end |
859 |
end |
end |
860 |
lastPath = thisPath |
lastPath = thisPath |
861 |
end |
end |
862 |
|
if all_files == nil |
863 |
|
all_files = name |
864 |
|
else |
865 |
|
all_files = all_files + " " + name |
866 |
|
end |
867 |
if file.addition? |
if file.addition? |
868 |
name = "<span id=\"added\">#{name}</span>" |
name = "<span id=\"added\">#{name}</span>" |
869 |
elsif file.removal? |
elsif file.removal? |
905 |
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>") |
906 |
end |
end |
907 |
|
|
908 |
mail.puts("</tr>") |
mail.puts("</tr>") |
909 |
end |
end |
910 |
|
|
911 |
if $fileEntries.size>1 |
if $fileEntries.size>1 |
912 |
# give total number of lines added/removed accross all files |
# give total number of lines added/removed accross all files |
913 |
mail.print("<tr><td> </td>") |
mail.print("<tr><td> </td>") |
975 |
mail.puts("</body></html>") |
mail.puts("</body></html>") |
976 |
|
|
977 |
end |
end |
978 |
|
|