Diff for /doc/build/generate_web_pages.pl between versions 1.3 and 1.61

version 1.3, 2003/09/02 15:43:01 version 1.61, 2021/03/17 23:58:41
Line 10  generate_web_pages.pl - generate the web Line 10  generate_web_pages.pl - generate the web
   
 Yeah, it does that.  Yeah, it does that.
   
 Basically, there's a few comments in shell.html that we replace with  Basically, there's a few comments in shell.hemp that we replace with
     what we really want in the files. Pretty simple.      what we really want in the files. Pretty simple.
   
 The point of this is to look like the main site.  The point of this is to look like the main site.
Line 21  The point of this is to look like the ma Line 21  The point of this is to look like the ma
 # add/subtract/etc. pages. Index is done seperately.  # add/subtract/etc. pages. Index is done seperately.
 # Title, source  # Title, source
   
 my @pages = (   my @longlifecycle = (
       ['Red Hat 7.3 Install', 'rh73'],                ['CentOS Linux 8 Install','centos8_install'],
       ['Manual Install from Tarballs', 'manual_install'],                ['CentOS Linux 7 Install','centos7_install'],
       ['Upgrading from Previous LON-CAPA install', 'upgrade'],                ['CentOS Linux 6 Install','centos6_install'],
       ['Post-installation Configuration', 'config'],                ['Scientific Linux 7 Install','scientific7_install'],
       ['LON-CAPA License (Gnu Public License)', 'license']                ['Scientific Linux 6 Install','scientific6_install'],
                 ['Red Hat Enterprise Linux 8 Install','RHEL8_install'],
                 ['Red Hat Enterprise Linux 7 Install','RHEL7_install'],
                 ['Red Hat Enterprise Linux 6 Install','RHEL6_install'],
                 ['Oracle Linux 8 Install','oracle8_install'],
                 ['Oracle Linux 7 Install','oracle7_install'],
                 ['Oracle Linux 6 Install','oracle6_install'],
                 ['SuSE Linux Enterprise Server 15 Install', 'sles15_install'],
                 ['SuSE Linux Enterprise Server 12 Install', 'sles12_install'],
                 ['SuSE Linux Enterprise Server 11 Install', 'sles11_install'],
                 ['Ubuntu 20.04 LTS Server', 'ubuntu20LTS_install'],
                 ['Ubuntu 18.04 LTS Server', 'ubuntu18LTS_install'],
                 ['Ubuntu 16.04 LTS Server', 'ubuntu16LTS_install'],
                 ['Ubuntu 14.04 LTS Server', 'ubuntu14LTS_install'],
       );        );
   
   my @shortlifecycle = (
                 ['Fedora 33 Install', 'F33_install'],
                 ['Fedora 32 Install', 'F32_install'],
                 ['Fedora 31 Install', 'F31_install'],
                 ['Fedora 30 Install', 'F30_install'],
                 ['Fedora 29 Install', 'F29_install'],
                 ['Fedora 28 Install', 'F28_install'],
                 ['Fedora 27 Install', 'F27_install'],
                 ['Fedora 26 Install', 'F26_install'],
                 ['Fedora 25 Install', 'F25_install'],
                 );
    
   my @ancillary = (
                 ['Upgrading from Previous LON-CAPA install', 'upgrade'],
                 ['LON-CAPA License (Gnu Public License)', 'license']
                 );
   
   my @other_pages = ( 
       ['Developer Information', 'dev'],
       ['Configuration Information', 'config'],
       );
   
 open SHELL, '<', "shell.html";  open SHELL, '<', "shell.html";
 my $shell = join '', <SHELL>;  my $shell = join '', <SHELL>;
 $shell =~ s/\r/\n/g;  $shell =~ s/\r/\n/g;
   
 # Call with: The title, breadcrumb, and content  # Call with: The title, breadcrumb, and content
 sub replaceText {  sub replaceText {
     my ($title, $breadcrumb, $content) = @_;      my ($title, $links, $breadcrumb, $content) = @_;
   
     my $page = $shell;      my $page = $shell;
     $page =~ s/\<!-- *title *--\>/$title/g;      $page =~ s/\<!-- *title *--\>/$title/g;
       $page =~ s/\<!-- *links *--\>/$links/g;
     $page =~ s/\<!-- *breadcrumb *--\>/$breadcrumb/g;      $page =~ s/\<!-- *breadcrumb *--\>/$breadcrumb/g;
     $page =~ s/\<!-- *content *--\>/$content/g;      $page =~ s/\<!-- *content *--\>/$content/g;
   
Line 48  sub replaceText { Line 84  sub replaceText {
 # Do the index page  # Do the index page
   
 open INDEX, '>', "index.html";  open INDEX, '>', "index.html";
 my $content = <<PRELUDE;  my $content = <<PRELUDE; 
 <p>LON-CAPA is based upon a lot of Open Source modules, so it's important  
 to have the right environment on your computer. Since it will frequently   <p>LON-CAPA is based upon a lot of Open Source modules, so it's
 be the case that LON-CAPA will be going onto a dedicated machine, we've   important to have the right environment on your computer. This is most
 included instructions for installing LON-CAPA concurrently with new  easily done by installing on a dedicated machine while installing the
 installations of some of the popular Linux distributions.</p>  operating system.</p>
   
 <p>A tarball installation is also available for those who wish to   <p>The configuring of LON-CAPA is part of the install process of the
 install on other distributions. Currently, Apache 1.x is required;  software. However, in case something needs to be altered, or isn't
 LON-CAPA does not yet run on 2.0.</p>  working, here is some <a href="config.html">information on configuring
   LON-CAPA</a>.</p>
   
 <p>For all distributions, please see how to   
 <a href="config.html">configure the server after installation</a>.</p>  
 <hr />  <hr />
   <h3>Supported Linux Distros</h3>
 PRELUDE  PRELUDE
   
 $content .= "<ul>\n";  $content .= '<p>LON-CAPA is supported on a variety of Linux distributions.</p>'."\n".
 for (@pages) {               '<p>In the list below these are divided into distros with a long
   life cycle, i.e., those for which a particular version is supported by the distributor for 5 years or more, and those with a short life cycle, i.e., those for which a particular version is supported for up to 18 months.</p>'.     
               '<div style="float: left;">'.
               '<b>Long life cycle</b><br />'.
               '<ul>'."\n";
   for (@longlifecycle) {
       $content .= "<li><a href='$_->[1].html'>$_->[0]</a></li>\n";
   }
   $content .= '</ul></div>'."\n".
               '<div style="float: left;">'.
               '<b>Short life cycle</b><br />'.
               '<ul>'."\n";
   for (@shortlifecycle) {
       $content .= "<li><a href='$_->[1].html'>$_->[0]</a></li>\n";
   }
   $content .= '</ul></div><br clear="all" />'."\n".
               '<b>Additional information</b><ul>'."\n";
   for (@ancillary) {
     $content .= "<li><a href='$_->[1].html'>$_->[0]</a></li>\n";      $content .= "<li><a href='$_->[1].html'>$_->[0]</a></li>\n";
 }  }
   $content .= '</ul><br />';
   
 $content .= "</ul>\n";  
   
 my $index = replaceText("Install LON-CAPA", "Install LON-CAPA",  my $testing_content = '';
     $content);  if (@testing_pages) {
       $testing_content .= "<hr/><p>Installation on the following systems requires the use of a testing release of LON-CAPA.</p>\n";
       $testing_content .= "<ul>\n";
       for (@testing_pages) {
    $testing_content .= "<li><a href='$_->[1].html'>$_->[0]</a></li>\n";
       }
       $testing_content .= "</ul>\n";
   }
   
   
 $content .= <<POSTLUDE;  $content .= <<"POSTLUDE";
 <hr />  <hr />
 <a name="download" />  <a name="download" />
 <h3>Downloading LON-CAPA</h3>  <h3>Downloading LON-CAPA</h3>
   
 <p>  <p>
 <b>Current Release is Version LATESTVERSION.  <b>Current Production Release is Version LATESTVERSION.
 This version was released on LATESTDATE.</b>  This version was released on LATESTDATE.</b>
 </p>  </p>
 <p>  <p>
 You can download the <b>most current version of LON-CAPA</b> at  You can download the <b>most current production version of LON-CAPA</b> at
 <a href="http://install.lon-capa.org/versions/loncapa-current.tar.gz">  <a href="http://install.lon-capa.org/versions/loncapa-current.tar.gz">
 http://install.lon-capa.org/versions/loncapa-current.tar.gz</a>  http://install.lon-capa.org/versions/loncapa-current.tar.gz</a>
 (version LATESTVERSION).  (version LATESTVERSION).
 </p>  </p>
   TESTINGRELEASE_START
 <p>  <p>
 The <b>development release of LON-CAPA</b> is at:  <b>Current Testing Release is Version LATESTTESTINGVERSION.
 <a href="http://install.lon-capa.org/versions/loncapa-unstable.tar.gz">  This version was released on LATESTTESTINGDATE.</b>
 http://install.lon-capa.org/versions/loncapa-unstable.tar.gz</a>.  
 </p>  
 <p>  
 To view the code development history of LON-CAPA, you will need to use the  
 <a href="http://www.cvshome.org/">CVS</a> tool, the open standard for  
 version control.  Please contact Helen (<a href="mailto:helen@lon-capa.org">  
 helen@lon-capa.org</a>) to request a CVS USERNAME.  
 </p>  </p>
 <p>  <p>
 The initial CVS commands would be:  You can download the <b>testing version of the upcoming LON-CAPA</b> at
 </p>  <a href="http://install.lon-capa.org/versions/loncapa-testing.tar.gz">
 <blockquote>  http://install.lon-capa.org/versions/loncapa-testing.tar.gz</a>
 <table bgcolor="#aaaaaa" border="1">  (version LATESTTESTINGVERSION).
 <tr><td>  
 <pre>  
 export CVSROOT=:pserver:USERNAME@zaphod.lite.msu.edu:/home/cvs   
 cvs login   
 cvs co loncapa  
 </pre>  
 </td></tr></table>  
 </blockquote>  
 <p>  
 For more information on using CVS, please visit  
 <a href="http://www.cvshome.org/">http://www.cvshome.org/</a>  
 or read <tt>loncom/build/readme.html</tt> after downloading  
 the current version of LON-CAPA as described above.  
 </p>  </p>
   $testing_content
   TESTINGRELEASE_END
   
   <hr />
 POSTLUDE  POSTLUDE
   
   open(RELEASE, '<', "release.frag");
   $content .= join('',<RELEASE>);
   close(RELEASE);
   
   $content .= "<ul>\n";
   my @testing_pages = ( 
         );
   for (@other_pages) {
       $content .= "<li><a href='$_->[1].html'>$_->[0]</a></li>\n";
   }
   
   $content .= "</ul>\n";
   
   $links='<link rel="alternate" type="application/rss+xml" title="CVS RSS" href="loncapa.rss" />';
   
   my $index = replaceText("Install LON-CAPA", $links, '<font color="#006600" face="Arial, Helvetica, sans-serif">Documentation/Download</font>',
    $content);
   
 print INDEX $index;  print INDEX $index;
 close INDEX;  close INDEX;
   
 # Build the pages  # Build the pages
 for (@pages) {  for (@longlifecycle,@shortlifecycle,@ancillary,@other_pages,@testing_pages) {
     my ($title, $source) = @$_;      my ($title, $source) = @$_;
   
     # read in content      # read in content
Line 134  for (@pages) { Line 197  for (@pages) {
     $content = join '', <SOURCE>;      $content = join '', <SOURCE>;
     close SOURCE;      close SOURCE;
   
     $content = replaceText($title, '<a href="/">Install LON-CAPA</a> &gt; ' . $title,      $content = replaceText($title, '', '<font face="Arial, Helvetica, sans-serif"><a href="/">Documentation/Download</a> &raquo; '.
                              '</font><font color="#006600" face="Arial, Helvetica, sans-serif">'.$title,
    $content);     $content);
     open DEST, '>', $source.'.html';      open DEST, '>', $source.'.html';
     print DEST $content;      print DEST $content;

Removed from v.1.3  
changed lines
  Added in v.1.61


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>