rt 4.2.14 (#13852)
[freeside.git] / rt / devel / tools / rt-static-docs
index 8ad86b1..9b92e47 100644 (file)
@@ -3,7 +3,7 @@
 #
 # COPYRIGHT:
 #
-# This software is Copyright (c) 1996-2015 Best Practical Solutions, LLC
+# This software is Copyright (c) 1996-2017 Best Practical Solutions, LLC
 #                                          <sales@bestpractical.com>
 #
 # (Except where explicitly superseded by other copyright notices)
@@ -54,6 +54,7 @@ use File::Temp;
 use File::Spec;
 use File::Path qw(make_path rmtree);
 use File::Copy qw(copy);
+use Encode qw(decode_utf8);
 use HTML::Entities qw(encode_entities);
 use RT::Pod::HTMLBatch;
 
@@ -142,14 +143,21 @@ for my $file (<README* UPGRADING*>) {
     open my $source, "<", $file
         or warn "Can't open $file: $!", next;
 
-    open my $html, ">", $dest
-        or warn "Can't open $dest: $!", next;
+    my $str = "";
+    $str .= encode_entities(decode_utf8($_)) while <$source>;
+    close $source;
 
-    print $html "<pre>";
-    print $html encode_entities($_) while <$source>;
-    print $html "</pre>";
+    $str = "<pre>$str</pre>";
+    $str =~ s{\bdocs/([a-z_-]+)\.pod\b}{<a href="$1.html">docs/$1.pod</a>}ig;
+    $str =~ s{\betc/(RT_Config)\.pm\b}{<a href="$1.html">etc/$1.pm</a>}g;
+    $str =~ s{\betc/(UPRGADING\.mysql)\b}{<a href="$1.html">etc/$1</a>}g;
+    $str =~ s{\b(https?://(?!rt\.example\.com)[.a-z0-9/_:-]+(?<!\.))}{<a href="$1">$1</a>}ig;
+    $str =~ s{\b([\w-]+\@(lists\.)?bestpractical.com)\b}{<a href="mailto:$1">$1</a>}g;
 
-    close $source; close $html;
+    open my $html, ">", $dest
+        or warn "Can't open $dest: $!", next;
+    print $html $str;
+    close $html;
 
     $converter->note_for_contents_file([$name], $file, $dest);
 }